diff --git a/surfsense_backend/app/agents/new_chat/tools/__init__.py b/surfsense_backend/app/agents/new_chat/tools/__init__.py index a46fadf11..bc444b0c0 100644 --- a/surfsense_backend/app/agents/new_chat/tools/__init__.py +++ b/surfsense_backend/app/agents/new_chat/tools/__init__.py @@ -10,8 +10,7 @@ Available tools: - generate_video_presentation: Generate video presentations with slides and narration - generate_image: Generate images from text descriptions using AI models - scrape_webpage: Extract content from webpages -- save_memory: Store facts/preferences about the user -- recall_memory: Retrieve relevant user memories +- update_memory: Update the user's / team's memory document """ # Registry exports @@ -33,7 +32,7 @@ from .registry import ( ) from .scrape_webpage import create_scrape_webpage_tool from .search_surfsense_docs import create_search_surfsense_docs_tool -from .user_memory import create_recall_memory_tool, create_save_memory_tool +from .update_memory import create_update_memory_tool, create_update_team_memory_tool from .video_presentation import create_generate_video_presentation_tool __all__ = [ @@ -47,10 +46,10 @@ __all__ = [ "create_generate_image_tool", "create_generate_podcast_tool", "create_generate_video_presentation_tool", - "create_recall_memory_tool", - "create_save_memory_tool", "create_scrape_webpage_tool", "create_search_surfsense_docs_tool", + "create_update_memory_tool", + "create_update_team_memory_tool", "format_documents_for_context", "get_all_tool_names", "get_default_enabled_tools", diff --git a/surfsense_backend/app/agents/new_chat/tools/registry.py b/surfsense_backend/app/agents/new_chat/tools/registry.py index 442f3ba35..17f962141 100644 --- a/surfsense_backend/app/agents/new_chat/tools/registry.py +++ b/surfsense_backend/app/agents/new_chat/tools/registry.py @@ -94,11 +94,7 @@ from .podcast import create_generate_podcast_tool from .report import create_generate_report_tool from .scrape_webpage import create_scrape_webpage_tool from .search_surfsense_docs import create_search_surfsense_docs_tool -from .shared_memory import ( - create_recall_shared_memory_tool, - create_save_shared_memory_tool, -) -from .user_memory import create_recall_memory_tool, create_save_memory_tool +from .update_memory import create_update_memory_tool, create_update_team_memory_tool from .video_presentation import create_generate_video_presentation_tool from .web_search import create_web_search_tool @@ -214,38 +210,19 @@ BUILTIN_TOOLS: list[ToolDefinition] = [ requires=["db_session"], ), # ========================================================================= - # USER MEMORY TOOLS - private or team store by thread_visibility + # MEMORY TOOL - single update_memory, private or team by thread_visibility # ========================================================================= ToolDefinition( - name="save_memory", - description="Save facts, preferences, or context for personalized or team responses", + name="update_memory", + description="Update the memory document (personal or team) with curated long-term information", factory=lambda deps: ( - create_save_shared_memory_tool( - search_space_id=deps["search_space_id"], - created_by_id=deps["user_id"], - db_session=deps["db_session"], - ) - if deps["thread_visibility"] == ChatVisibility.SEARCH_SPACE - else create_save_memory_tool( - user_id=deps["user_id"], - search_space_id=deps["search_space_id"], - db_session=deps["db_session"], - ) - ), - requires=["user_id", "search_space_id", "db_session", "thread_visibility"], - ), - ToolDefinition( - name="recall_memory", - description="Recall relevant memories (personal or team) for context", - factory=lambda deps: ( - create_recall_shared_memory_tool( + create_update_team_memory_tool( search_space_id=deps["search_space_id"], db_session=deps["db_session"], ) if deps["thread_visibility"] == ChatVisibility.SEARCH_SPACE - else create_recall_memory_tool( + else create_update_memory_tool( user_id=deps["user_id"], - search_space_id=deps["search_space_id"], db_session=deps["db_session"], ) ),