跳到主要内容

内置工具参考

本页文档记录了 Hermes 工具注册表中的所有 47 个内置工具,按工具集分组。不同平台、凭据和已启用工具集下可用性有所不同。

快速统计: 10 个浏览器工具、4 个文件工具、10 个 RL 工具、4 个 Home Assistant 工具、2 个终端工具、2 个 Web 工具,以及跨其他工具集的 15 个独立工具。

MCP 工具

除了内置工具外,Hermes 还可以从 MCP 服务器动态加载工具。MCP 工具显示服务器名称前缀(例如,github MCP 服务器的 github_create_issue)。请参阅 MCP 集成 了解配置。

browser 工具集

工具描述需要环境
browser_back在浏览器历史记录中导航到上一页。需要首先调用 browser_navigate。
browser_click点击快照中由 ref ID 标识的元素(例如 '@e5')。Ref ID 在快照输出中以方括号显示。需要首先调用 browser_navigate 和 browser_snapshot。
browser_console获取当前页面的浏览器控制台输出和 JavaScript 错误。返回 console.log/warn/error/info 消息和未捕获的 JS 异常。使用此工具检测静默 JavaScript 错误、失败的 API 调用和应用程序警告。需要...
browser_get_images获取当前页面上所有图像及其 URL 和 alt 文本的列表。用于查找要使用 vision 工具分析的图像。需要首先调用 browser_navigate。
browser_navigate在浏览器中导航到 URL。初始化会话并加载页面。必须在其他浏览器工具之前调用。对于简单信息检索,首选 web_search 或 web_extract(更快、更便宜)。当需要...时使用浏览器工具。
browser_press按下键盘键。用于提交表单(Enter)、导航(Tab)或键盘快捷键。需要首先调用 browser_navigate。
browser_scroll在一个方向上滚动页面。使用此工具显示可能位于当前视口下方或上方的更多内容。需要首先调用 browser_navigate。
browser_snapshot获取当前页面可访问性树的文本快照。返回带有 ref ID(例如 @e1、@e2)的交互元素,以便 browser_click 和 browser_type 使用。full=false(默认):紧凑视图与交互元素。full=true:comp...
browser_type在由其 ref ID 标识的输入字段中键入文本。首先清除字段,然后输入新文本。需要首先调用 browser_navigate 和 browser_snapshot。
browser_vision拍摄当前页面的屏幕截图并使用 vision AI 进行分析。当需要直观了解页面上显示的内容时使用此工具——对于验证码、可视化验证挑战、复杂布局或文本快照...特别有用。

clarify 工具集

工具描述需要环境
clarify当需要澄清、反馈或在继续之前做出决定时,向用户提问。支持两种模式:1. 多选 — 提供最多 4 个选项。用户选择一个或通过第 5 个'其他'选项输入自己的答案。2....

code_execution 工具集

工具描述需要环境
execute_code运行可以编程调用 Hermes 工具的 Python 脚本。当需要 3+ 个工具调用且之间有处理逻辑时使用,需要在工具输出进入上下文之前过滤/减少大型工具输出,需要条件分支(...时使用。

cronjob 工具集

工具描述需要环境
cronjob统一计划任务管理器。使用 action="create""list""update""pause""resume""run""remove" 管理作业。支持带一个或多个附加技能支持的技能作业,更新时 skills=[] 清除附加技能。Cron 运行发生在没有当前聊天上下文的全新会话中。

delegation 工具集

工具描述需要环境
delegate_task生成一个或多个子 agent 在隔离上下文中处理任务。每个子 agent 获取自己的对话、终端会话和工具集。只返回最终摘要 — 中间工具结果永远不会进入你的上下文窗口。两个...

file 工具集

工具描述需要环境
patch对文件进行有针对性的查找和替换编辑。使用此工具代替 terminal 中的 sed/awk。使用模糊匹配(9 种策略),因此轻微的空白/缩进差异不会破坏它。返回统一 diff。编辑后自动运行语法检查...
read_file带行号和分页的文本文件读取。使用此工具代替 terminal 中的 cat/head/tail。输出格式:'LINE_NUM|CONTENT'。未找到时建议类似文件名。使用偏移量和限制处理大文件。注意:无法读取 o...
search_files搜索文件内容或按名称查找文件。使用此工具代替 terminal 中的 grep/rg/find/ls。Ripgrep 支持,比 shell 等效工具更快。内容搜索(target='content'):文件内的正则搜索。输出模式:full...
write_file将内容写入文件,完全替换现有内容。使用此工具代替 terminal 中的 echo/cat heredoc。自动创建父目录。覆盖整个文件 — 使用 'patch' 进行有针对性的编辑。

homeassistant 工具集

工具描述需要环境
ha_call_service调用 Home Assistant 服务来控制设备。使用 ha_list_services 发现每个域的可用服务及其参数。
ha_get_state获取单个 Home Assistant 实体的详细状态,包括所有属性(亮度、颜色、温度设定点、传感器读数等)。
ha_list_entities列出 Home Assistant 实体。可按域(light、switch、climate、sensor、binary_sensor、cover、fan 等)或区域名称(客厅、厨房、卧室等)过滤。
ha_list_services列出 Home Assistant 可用的服务(操作)以进行设备控制。显示每种设备类型可以执行哪些操作及其接受的参数。使用此发现如何控制通过 ha_list_entities 找到的设备。
备注

Honcho 工具honcho_concludehoncho_contexthoncho_profilehoncho_search)不再是内置的。它们可通过 Honcho memory provider 插件在 plugins/memory/honcho/ 中获得。请参阅插件了解安装和使用。

image_gen 工具集

工具描述需要环境
image_generate使用 FLUX 2 Pro 模型从文本提示生成高质量图像,自动 2 倍放大。创建详细、艺术化的图像,自动放大以获得高分辨率结果。返回单个放大图像 URL。使用...显示FAL_KEY

memory 工具集

工具描述需要环境
memory将重要信息保存到持久化记忆中,跨会话存活。你的记忆出现在会话开始时的系统提示中 — 这是你在对话之间记住有关用户和环境的事情的方 式。什么时候使...

messaging 工具集

工具描述需要环境
send_message向已连接的消息平台发送消息,或列出可用目标。重要提示: 当用户要求发送到特定频道或人员(不仅仅是裸平台名称)时,首先调用 send_message(action='list') 以查看可用的目...

moa 工具集

工具描述需要环境
mixture_of_agents通过多个前沿 LLM 协作路由难题。进行 5 次 API 调用(4 个参考模型 + 1 个聚合器),最大推理努力 — 谨慎使用,仅用于真正困难的问题。最适合:复杂数学、高级 alg...OPENROUTER_API_KEY

rl 工具集

工具描述需要环境
rl_check_status获取训练运行的状态和指标。速率限制: 同一运行检查之间强制 30 分钟最小间隔。返回 WandB 指标:step、state、reward_mean、loss、percent_correct。TINKER_API_KEY, WANDB_API_KEY
rl_edit_config更新配置字段。首先使用 rl_get_current_config() 查看所有可用字段。每个环境有不同的可配置选项。基础设施设置(tokenizer、URL、lora_rank、learning_ra...TINKER_API_KEY, WANDB_API_KEY
rl_get_current_config获取当前环境配置。仅返回可修改的字段:group_size、max_token_length、total_steps、steps_per_eval、use_wandb、wandb_name、max_num_workers。TINKER_API_KEY, WANDB_API_KEY
rl_get_results获取已完成训练运行的最终结果和指标。返回最终指标和训练权重路径。TINKER_API_KEY, WANDB_API_KEY
rl_list_environments列出所有可用的 RL 环境。返回环境名称、路径和描述。提示: 使用文件工具读取 file_path 以了解每个环境的工作原理(验证器、数据加载、奖励)。TINKER_API_KEY, WANDB_API_KEY
rl_list_runs列出所有训练运行(活动的和完成的)及其状态。TINKER_API_KEY, WANDB_API_KEY
rl_select_environment选择 RL 环境进行训练。加载环境的默认配置。选择后,使用 rl_get_current_config() 查看设置,使用 rl_edit_config() 修改它们。TINKER_API_KEY, WANDB_API_KEY
rl_start_training使用当前环境和配置启动新的 RL 训练运行。大多数训练参数(lora_rank、learning_rate 等)是固定的。使用 rl_edit_config() 设置 group_size、batch_size、wandb_project 然后开始。警告: 训练...TINKER_API_KEY, WANDB_API_KEY
rl_stop_training停止正在运行的训练作业。如果指标看起来不好、训练停滞或你想尝试不同设置,请使用。TINKER_API_KEY, WANDB_API_KEY
rl_test_inference任何环境的快速推理测试。运行少量推理 + 评分步骤使用 OpenRouter。默认:3 步 x 16 个完成 = 每个模型 48 次 rollouts,测试 3 个模型 = 144 总计。测试环境加载、提示构建、in...TINKER_API_KEY, WANDB_API_KEY

session_search 工具集

工具描述需要环境
session_search在过去对话的长期记忆中搜索。这是你的回忆 — 每个过去的会话都是可搜索的,此工具总结发生了什么。主动使用此工具当:- 用户说'我们之前做过这个'、'记得吗'、'上次...时

skills 工具集

工具描述需要环境
skill_manage管理技能(创建、更新、删除)。技能是你的程序记忆 — 可重复使用的重复任务类型方法。新技能去到 ~/.hermes/skills/;现有技能可以在它们所在的任何地方修改。操作:create(完整 SKILL.m...
skill_view技能允许加载关于特定任务和工作流的信息,以及脚本和模板。加载技能的完整内容或访问其链接的文件(引用、模板、脚本)。首次调用返回 SKILL.md 内容加...
skills_list列出可用技能(名称 + 描述)。使用 skill_view(name) 加载完整内容。

terminal 工具集

工具描述需要环境
process管理使用 terminal(background=true) 启动的后台进程。操作:'list'(显示所有)、'poll'(检查状态 + 新输出)、'log'(带分页的完整输出)、'wait'(阻塞直到完成或超时)、'kill'(终止)、'write'(sen...
terminal在 Linux 环境中执行 shell 命令。文件系统在调用之间保持持久。设置 background=true 用于长期运行的服务器。设置 notify_on_complete=true(与 background=true 一起使用)以在进程完成时获得自动通知—无需轮询。不要使用 cat/head/tail — 使用 read_file。不要使用 grep/rg/find — 使用 search_files。

todo 工具集

工具描述需要环境
todo管理当前会话的任务列表。用于复杂任务(3+ 步骤)或当用户提供多个任务时。无参数调用以读取当前列表。写入:- 提供 'todos' 数组以创建/更新项目 - merge=...

vision 工具集

工具描述需要环境
vision_analyze使用 AI vision 分析图像。提供全面描述并回答关于图像内容的具体问题。

web 工具集

工具描述需要环境
web_search在任何主题上搜索网络信息。返回最多 5 个相关结果,包含标题、URL 和描述。EXA_API_KEY 或 PARALLEL_API_KEY 或 FIRECRAWL_API_KEY 或 TAVILY_API_KEY
web_extract从网页 URL 提取内容。以 markdown 格式返回页面内容。也适用于 PDF URL — 直接传递 PDF 链接,它会转换为 markdown 文本。少于 5000 字符的页面返回完整 markdown;更大的页面由 LLM 总结。EXA_API_KEY 或 PARALLEL_API_KEY 或 FIRECRAWL_API_KEY 或 TAVILY_API_KEY

tts 工具集

工具描述需要环境
text_to_speech将文本转换为语音音频。返回平台作为语音消息传递的 MEDIA: 路径。在 Telegram 上它作为语音气泡播放,在 Discord/WhatsApp 上作为音频附件。在 CLI 模式下,保存到 ~/voice-memos/。语音和提供商...