SurfSense/surfsense_backend/app/agents/multi_agent_chat
CREDO23 003924062d refactor(agents): split tool registry into pure-data catalog, decouple connectors
Replace the connector-coupled BUILTIN_TOOLS registry with a pure-data
catalog so shared/tools no longer imports any connector module, making the
connector packages independently deletable.

- add shared/tools/catalog.py (ToolMetadata + TOOL_CATALOG, 41 tools, no imports)
- point GET /agent/tools (the only live consumer) at the catalog
- relocate ToolDefinition into action_log middleware (its sole consumer);
  drop the inert tool_definitions wiring (no tool defines reverse)
- delete shared/tools/registry.py: connector imports, dead factories,
  dead get_connector_gated_tools, and BUILTIN_TOOLS
- drop stale dedup-propagation test (path removed in C1) + refresh docstrings

import-all guardrail + agents unit suite green (987 passed).
2026-06-04 19:43:50 +02:00
..
main_agent refactor(agents): split tool registry into pure-data catalog, decouple connectors 2026-06-04 19:43:50 +02:00
shared refactor(agents): colocate middleware into vertical slices 2026-06-04 18:13:47 +02:00
subagents refactor(agents): colocate middleware into vertical slices 2026-06-04 18:13:47 +02:00
__init__.py fix(stream): route every agent (re)build through one helper to prevent factory drift 2026-05-05 23:35:23 +02:00
constants.py multi_agent_chat/subagents: dict-keyed middleware_stack + always-on KB 2026-05-12 18:04:54 +02:00