SurfSense/surfsense_backend
CREDO23 482aefc32a refactor(agents): SRP main-agent tool registry, decoupled from BUILTIN_TOOLS
The main agent only exposes 4 SurfSense tools (web_search, scrape_webpage,
update_memory, create_automation) and delegates connectors/MCP/deliverables
to subagents. Yet it built those 4 by importing and iterating the 900-line,
connector-laden shared BUILTIN_TOOLS via build_tools_async.

Introduce app/agents/multi_agent_chat/main_agent/tools/registry.py owning
just those 4 factories, and switch runtime/factory.py to build_main_agent_tools.
Binding order is preserved (scrape_webpage, web_search, create_automation,
update_memory) to match prior behavior exactly.

shared/tools/registry.py BUILTIN_TOOLS is intentionally unchanged: it remains
the app-wide tool *metadata* catalog used by action_log (revert/dedup
resolvers for subagent-executed connector tools) and the /agent/tools
listing endpoint.

Verified: full unit suite green (2431 passed, 1 skipped); import-all guard ok.
2026-06-04 19:01:44 +02:00
..
alembic fix(db): restore automation_runs to zero_publication 2026-06-02 16:56:01 +02:00
app refactor(agents): SRP main-agent tool registry, decoupled from BUILTIN_TOOLS 2026-06-04 19:01:44 +02:00
scripts Merge remote-tracking branch 'upstream/dev' into feat/whatsapp-gateway-integration 2026-06-02 00:29:32 +05:30
tests refactor(agents): colocate middleware into vertical slices 2026-06-04 18:13:47 +02:00
.dockerignore chore(backend): exclude tests/ from production Docker image 2026-05-06 17:16:22 +05:30
.env.example refactor(config): remove dead MULTI_AGENT_CHAT_ENABLED flag (bucket B5) 2026-06-04 13:44:02 +02:00
.gitignore chore(backend): ignore local object store 2026-06-02 16:56:01 +02:00
.python-version feat: SurfSense v0.0.6 init 2025-03-14 18:53:14 -07:00
alembic.ini add github connector, add alembic for db migrations, fix bug updating connectors 2025-04-13 13:56:22 -07:00
celery_worker.py fix: celery_app path and gmail indexing 2025-10-21 21:11:41 -07:00
Dockerfile fix: docker one click setup 2026-05-20 01:25:07 -07:00
main.py feat(observability): add OpenTelemetry process bootstrap 2026-05-21 23:01:54 +05:30
pyproject.toml test: switch pytest to importlib import mode 2026-06-03 21:52:54 +02:00
uv.lock chore(backend): add azure-storage-blob dependency 2026-06-02 16:10:43 +02:00