
    i                     l    d Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	m
Z
  e	deed        G d	 d
      Zy)z!Register built-in thinking modes.    )ReflectionThinkingConfigThinkingConfig)ThinkingManagerBase)SelfReflectionThinkingManager)register_thinking_modeget_thinking_registration
reflectionz0LLM reflects on its output and refine its output)
config_clsmanager_clssummaryc                   &    e Zd Zededefd       Zy)ThinkingManagerFactoryconfigreturnc                     t        | j                        }| j                  |j                        }|st	        d| j                   d      |j                  |      S )Nz"Invalid thinking config for type '')r   type	as_configr
   
ValueErrorr   )r   registrationtyped_configs      Y/Users/bowang/.openclaw/workspace/ChatDev/runtime/node/agent/thinking/builtin_thinking.pyget_thinking_managerz+ThinkingManagerFactory.get_thinking_manager   sS    0=''(?(?@A&++aPQQ''55    N)__name__
__module____qualname__staticmethodr   r   r    r   r   r   r      s#    6^ 68K 6 6r   r   N)__doc__entity.configs.node.thinkingr   r   ,runtime.node.agent.thinking.thinking_managerr   +runtime.node.agent.thinking.self_reflectionr   $runtime.node.agent.thinking.registryr   r   r   r   r   r   <module>r%      s6    ' Q L U
 '->	6 6r   