
    iD                         d Z ddlmZmZmZmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZ ddlmZmZ  eded	 d
        eded d        eded d        G d d      Zy)z Register built-in memory stores.    )BlackboardMemoryConfigFileMemoryConfigSimpleMemoryConfigMemoryStoreConfigBlackboardMemory
FileMemory)
MemoryBaseSimpleMemory)register_memory_storeget_memory_store_registrationsimplec                     t        |       S Nr   stores    U/Users/bowang/.openclaw/workspace/ChatDev/runtime/node/agent/memory/builtin_stores.py<lambda>r      s	    ,u-    z:In-memory store that resets between runs; best for testing)
config_clsfactorysummaryfilec                     t        |       S r   r	   r   s    r   r   r      s	    *U+r   z8Persists documents on disk and supports embedding search
blackboardc                     t        |       S r   r   r   s    r   r   r       s
    *51r   z>Shared blackboard memory allowing multiple nodes to read/writec                   &    e Zd Zededefd       Zy)MemoryFactoryr   returnc                 N    t        | j                        }|j                  |       S r   )r   typer   )r   registrations     r   create_memoryzMemoryFactory.create_memory&   s!    4UZZ@##E**r   N)__name__
__module____qualname__staticmethodr   r   r%    r   r   r    r    %   s#    +. +: + +r   r    N)__doc__entity.configs.node.memoryr   r   r   r   +runtime.node.agent.memory.blackboard_memoryr   %runtime.node.agent.memory.file_memoryr
   %runtime.node.agent.memory.memory_baser   'runtime.node.agent.memory.simple_memoryr   "runtime.node.agent.memory.registryr   r   r    r*   r   r   <module>r2      sn    &  I < < @ c !-H	 
+F	 %1L	+ +r   