diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/main_agent/selector.py b/surfsense_backend/app/agents/multi_agent_chat/middleware/main_agent/selector.py deleted file mode 100644 index 8e7a32be8..000000000 --- a/surfsense_backend/app/agents/multi_agent_chat/middleware/main_agent/selector.py +++ /dev/null @@ -1,39 +0,0 @@ -"""LLM-based tool subset selection (only when >30 tools).""" - -from __future__ import annotations - -import logging -from collections.abc import Sequence - -from langchain.agents.middleware import LLMToolSelectorMiddleware -from langchain_core.tools import BaseTool - -from app.agents.new_chat.feature_flags import AgentFeatureFlags - -from ..shared.flags import enabled - - -def build_selector_mw( - *, - flags: AgentFeatureFlags, - tools: Sequence[BaseTool], -) -> LLMToolSelectorMiddleware | None: - if not enabled(flags, "enable_llm_tool_selector") or len(tools) <= 30: - return None - try: - return LLMToolSelectorMiddleware( - model="openai:gpt-4o-mini", - max_tools=12, - always_include=[ - name - for name in ( - "update_memory", - "get_connected_accounts", - "scrape_webpage", - ) - if name in {t.name for t in tools} - ], - ) - except Exception: - logging.warning("LLMToolSelectorMiddleware init failed; skipping.") - return None diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/stack.py b/surfsense_backend/app/agents/multi_agent_chat/middleware/stack.py index 6d8faa3f4..9c9467ac3 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/middleware/stack.py +++ b/surfsense_backend/app/agents/multi_agent_chat/middleware/stack.py @@ -40,7 +40,6 @@ from .main_agent.noop_injection import build_noop_injection_mw from .main_agent.otel import build_otel_mw from .main_agent.plugins import build_plugin_middlewares from .main_agent.repair import build_repair_mw -from .main_agent.selector import build_selector_mw from .main_agent.skills import build_skills_mw from .shared.anthropic_cache import build_anthropic_cache_mw from .shared.compaction import build_compaction_mw @@ -180,7 +179,6 @@ def build_main_agent_deepagent_middleware( backend=StateBackend, subagents=subagents, ), - build_selector_mw(flags=flags, tools=tools), resilience.model_call_limit, resilience.tool_call_limit, build_context_editing_mw(