feat: conditionnaly build the system prompt (private / shared) memory

This commit is contained in:
CREDO23 2026-02-09 09:19:44 +02:00
parent 48d442a387
commit 474989687c
2 changed files with 7 additions and 4 deletions

View file

@ -228,7 +228,8 @@ async def create_surfsense_deep_agent(
import logging
logging.warning(f"Failed to discover available connectors/document types: {e}")
# Build dependencies dict for the tools registry
visibility = thread_visibility or ChatVisibility.PRIVATE
dependencies = {
"search_space_id": search_space_id,
@ -257,10 +258,12 @@ async def create_surfsense_deep_agent(
custom_system_instructions=agent_config.system_instructions,
use_default_system_instructions=agent_config.use_default_system_instructions,
citations_enabled=agent_config.citations_enabled,
thread_visibility=thread_visibility,
)
else:
# Use default prompt (with citations enabled)
system_prompt = build_surfsense_system_prompt()
system_prompt = build_surfsense_system_prompt(
thread_visibility=thread_visibility,
)
# Create the deep agent with system prompt and checkpointer
# Note: TodoListMiddleware (write_todos) is included by default in create_deep_agent

View file

@ -1297,7 +1297,7 @@ class NewLLMConfig(BaseModel, TimestampMixin):
- Configurable system instructions (defaults to SURFSENSE_SYSTEM_INSTRUCTIONS)
- Citation toggle (enable/disable citation instructions)
Note: SURFSENSE_TOOLS_INSTRUCTIONS is always used and not configurable.
Note: Tools instructions are built by get_tools_instructions(thread_visibility) (personal vs shared memory).
"""
__tablename__ = "new_llm_configs"