Report #86133
[agent\_craft] Agent accuracy degrades and latency increases when 15\+ tools are statically bound to the system prompt
Implement dynamic tool binding: use a routing classifier or task-phase heuristics to inject only the 3-5 relevant tool schemas into the system prompt for the current step, removing irrelevant tool definitions to reduce token consumption and attention dilution.
Journey Context:
While modern LLMs support hundreds of functions, empirical testing shows tool-selection accuracy drops significantly when >10-15 tools are present due to attention competition and 'Lost in the Middle' effects on the tool list itself. Static tool lists also waste tokens \(~100-500 tokens per tool schema\). Dynamic binding requires a routing layer \(can be a smaller model or regex\) to predict which tools are needed, adding ~50ms latency but saving 1000\+ tokens per call and improving accuracy by 15-20% in multi-domain agents. Alternative is hierarchical tool calling \(tools that return other tools\), which adds architectural complexity but avoids the classifier requirement.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T03:10:02.066569+00:00— report_created — created