Reduce token overhead via lazy/deferred tool loading
NousResearch/hermes-agent · cluster 4379 · agent
Data as of
9 open items. Fix merged in #97979. Check it covers your case.
The short answer
- Known?
- Yes. 19 related items grouped here, 4 issues already closed.
- Fix event
- A fix was merged to main in PR #97979. Check it covers your case. No release data is tracked.
- Tracker
- The maintainers' tracker marks this
unresolved. That is separate from the fix event. - Still open
- 9 issues and 1 PR.
Next step: read #97979, then check whether your report is one of the 9 still open.
Read #97979Pick up a Lab taskThese items focus on the high token cost of including all tool schemas in every API request, proposing approaches such as deferred or lazy loading, stub modes, tiered schemas, and opt-in deferral for built-in toolsets. Several also explore RAG-style or semantic tool selection to inject only relevant schemas on demand.
Open issues9
- Issue#13332Feature: Hybrid Tool Pre-Selection (Semantic + Keyword) — RAG-style schema injection to reduce token overhead without extra LLM round trips
- Issue#34038RFC: On-demand tool/skill/MCP discovery — decouple schema registration from process lifecycle
- Issue#54963Shrink the Core: Migrate Non-Essential Tools to Plugins/MCP Servers
- Issue#55139Shrink the Core: Migrate Non-Essential Tools to Plugins/MCP Servers
- Issue#57044Core tool schemas are ~15k tokens on every request — add a slim/tiered schema mode
- Issue#60181[Feature]: Let built-in toolsets opt into tool-search deferral (defer_toolsets)
- Issue#60184feat(tool_search): let built-in toolsets opt into deferral via defer_toolsets
- Issue#63033[Feature Request] /compress should report per-segment token distribution and consider tool schema compression
- Issue#67273Tool schemas consume 83% of every API request — per-session filtering and lazy loading needed
Open PRs1
- PR#35457feat(tool_search): optional embedding reranker for progressive tool disclosure
Fixes on record
-
#97979 feat(tool-search): core-tool deferral — curated event-triggered set behind the bridge (−6.5K tok/call desktop, −49% schemas)
files:
agent/agent_runtime_helpers.py,agent/coding_context.py,agent/context_compressor.py,agent/conversation_loop.py,agent/display.py,agent/tool_executor.py,agent/tool_guardrails.py,agent/turn_summary.py,evals/core_tool_deferral/README.md,evals/core_tool_deferral/orchestrator.py,evals/core_tool_deferral/report.py,evals/core_tool_deferral/results/.gitignore,evals/core_tool_deferral/results/SUMMARY.md,evals/core_tool_deferral/tasks.py,evals/core_tool_deferral/worker.py,hermes_cli/tools_config.py,model_tools.py,tests/agent/test_curator.py,tests/agent/test_display_todo_progress.py,tests/agent/test_phantom_tool_references.py(+32 more)
4 PRs closed without merging
From the close comments: done elsewhere 2 · stale or abandoned 1 · superseded by another PR 1
-
#43521 feat(tool_search): config-gated builtin tool deferral (#6839) · done elsewhere →
7e310f5,#97979 - #48622 feat(tools): add stub_mode to reduce main-thread tool schema tokens · superseded by another PR
-
#60182 feat(tool_search): defer_toolsets — opt built-in toolsets into deferral · done elsewhere →
7e310f5,#97979 - #61744 feat(tool_search): opt-in deferral for infrequent built-in toolsets · stale or abandoned
Closed issues · 4
- Closed#4379Token overhead analysis: 73% of each API call is fixed overhead (~13.9K tokens) — data + suggestions
- Closed#6839Feature: Lazy Tool Schema Loading — Two-Pass Tool Injection to Reduce Token Overhead
- Closed#7961[Feature] Per-profile tool selection — opt-in lightweight toolsets
- Closed#66473Feature: MCP Smart Loading — Lazy Connection, Tool Budget, Per-Session Scoping & On-Demand Servers
How this cluster was grouped
-
Link evidence (
partly structural links): some members are connected by structural evidence (shared changed files, or a closing/superseded reference); the rest are joined by an automated relevance judgement over their text. - Members outside that structural core may belong to a different underlying problem.
-
Pairwise link density
0.08: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36.1.00means every pair is linked.
Pick up a Lab task
Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.
Open the LabAt a glance
- Subsystem
- agent
- Merged PRs
- #97979
- Closed issues
- 4
- Attempts
- 4 PRs closed without merging
- Fix link checked
- 2 Sep 2026