🤖HermesBlog
Hermes 功能详解 · 第44篇2026/8/9· Easy Understand Hermes Agent

第44篇:工具搜索——按需加载工具

Hermes 功能详解第44篇:Tool Search。需要时再搜索加载工具。

这篇讲的是:当你的 AI 智能体挂了太多“工具插件”导致反应变慢时,Hermes 如何用“按需加载”的方式帮你省下宝贵的上下文空间。


先打个比方

想象你的厨房抽屉里塞满了 3000 件厨具。每次做饭时,你都得把所有工具摊在台面上——找一把菜刀要拨开 2999 件杂物。这就是 AI 智能体同时挂载大量 MCP 服务器(比如 GitHub、Linear、Cloudflare)时的窘境:每个工具的说明书(JSON Schema)都会占用上下文窗口,哪怕这次根本用不上它。

Hermes 的“工具搜索”功能,就像给厨房装了一个智能抽屉系统:台面上只放三样东西——搜索框、说明书查询卡、调用按钮。 需要哪件,再单独抽出来用。


第1步:开启工具搜索

默认是 auto 模式——只要检测到有可延迟的工具(MCP 或非核心插件),就自动启用。如果你只想用核心工具(终端、文件读写等),它们永远直接加载,不受影响

tools:
  tool_search:
    enabled: auto       # auto(默认)/ on / off
    threshold_pct: 5    # 目录清单占上下文的比例
    search_default_limit: 5
    max_search_limit: 20

想彻底关掉,改成 enabled: off 即可。


第2步:理解三级“渐进展示”

系统会根据工具数量自动切换档位:

  • Tier 0:没有 MCP/插件工具,一切照旧,直通。
  • Tier 1:工具不多时,AI 能看到一个“目录清单”——每个工具的名字 + 一句话简介。这就像餐厅菜单,菜名和简介都有,但完整做法(参数 Schema)要单独查。
  • Tier 2:工具爆炸多(比如 Cloudflare 一个服务器就有 3300 个工具),连菜单都放不下,就只显示“每台服务器一行摘要”(服务器名 + 工具数量)。这时只能靠搜索发现具体工具。

第3步:AI 的实际操作流程

开启后,AI 会看到三个“桥接工具”,典型流程是:

AI: tool_search("创建 GitHub issue")     → 找到 mcp_github_create_issue
AI: tool_describe("mcp_github_create_issue") → 查看完整参数
AI: tool_call("mcp_github_create_issue", {...}) → 真正执行

关键点:AI 调用 tool_call 时,Hermes 会“拆开桥接”,直接调用底层真实工具——安全检查、审批提示、活动记录全部显示真实工具名,而不是 tool_call


第4步:为什么要有“目录清单”?

实测发现,如果没有清单,AI 会“看不见”延迟工具,转而用终端硬跑 gh 命令,或者直接说“这功能不存在”。有了清单,AI 看到工具名就能跳过搜索,直接 tool_describe,省一次往返。


什么时候别用?

  • 你的工具集很小(比如就两三个 MCP),直接 enabled: off 保持全量加载更简单。
  • 小模型写不好搜索词,可能找不到工具(Anthropic 实测:Opus 4 开启后准确率从 49% 提到 74%,但仍有 26% 检索失败)。
  • 每次冷启动新工具,会多花 1-2 次模型调用去加载 Schema。

小结

工具搜索是 Hermes 的“智能抽屉系统”——用少量固定开销(三个桥接工具 + 目录)换回大量上下文空间。核心工具永远直连,MCP/插件按需加载,目录清单保证“看得见、找得到”。

下篇预告:工具搜索解决了“工具太多”的问题,那“任务太多”怎么办?下一篇我们聊聊 任务委派与子智能体——如何让多个 AI 分工协作。

📖 官方文档

本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › user-guide/tool-search