原文链接:Built-in Tools Reference 本文档记录了 Hermes 工具注册表中的全部 47 个内置工具,按工具集(Toolset)分组。工具的可用性因平台、凭证和已启用的工具集而异。 快速统计: 10 个浏览器工具、4 个文件工具、10 个强化学习(RL)工具、4 个 Home Assistant

内置工具参考

> 📖 本文档翻译自 Hermes Agent 官方文档 > 最后更新:2026-04-16

> 原文链接:Built-in Tools Reference

本文档记录了 Hermes 工具注册表中的全部 47 个内置工具,按工具集(Toolset)分组。工具的可用性因平台、凭证和已启用的工具集而异。

快速统计: 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点击快照中由引用 ID 标识的元素(例如 '@e5')。引用 ID 在快照输出中以方括号显示。需要先调用 browser_navigate 和 browser_snapshot。
browser_console获取当前页面的浏览器控制台输出和 JavaScript 错误。返回 console.log/warn/error/info 消息及未捕获的 JS 异常。用于检测静默的 JavaScript 错误、失败的 API 调用和应用程序警告。需要先调用 browser_navigate。也可用于在页面上下文中执行 JavaScript 表达式。
browser_get_images获取当前页面上所有图片的 URL 和 alt 文本列表。用于查找需要用视觉工具分析的图片。需要先调用 browser_navigate。
browser_navigate导航到指定 URL。初始化会话并加载页面。必须在其他浏览器工具之前调用。对于简单的信息检索,建议使用 web_search 或 web_extract(更快、更省)。当需要与页面交互(点击、填写表单、动态内容)时使用浏览器工具。
browser_press按下键盘按键。用于提交表单(Enter)、导航(Tab)或键盘快捷键。需要先调用 browser_navigate。
browser_scroll在指定方向上滚动页面。用于显示当前视口下方或上方可能隐藏的更多内容。需要先调用 browser_navigate。
browser_snapshot获取当前页面可访问性树的文本快照。返回带有引用 ID(如 @e1、@e2)的可交互元素,用于 browser_click 和 browser_type。full=false(默认):紧凑视图,仅显示可交互元素。full=true:完整页面内容。超过 8000 字符的快照会被截断或由 LLM 摘要。需要先调用 browser_navigate。
browser_type在由引用 ID 标识的输入框中输入文本。先清空字段,再输入新文本。需要先调用 browser_navigate 和 browser_snapshot。
browser_vision截取当前页面截图并用视觉 AI 分析。用于需要视觉理解页面的场景——尤其适合验证码(CAPTCHA)、视觉验证挑战、复杂布局,或文本快照无法捕获重要视觉信息的情况。需要先调用 browser_navigate。

clarify 澄清工具集

工具说明所需环境变量
clarify当需要澄清、反馈或决策时向用户提问。支持两种模式:1. 多选题 — 提供最多 4 个选项,用户选择一个或通过第 5 个"其他"选项自由输入。2. 开放式 — 完全省略 choices 参数,用户自由输入。用于任务模糊、需要用户选择方案、希望获取反馈、需要决策、或选项有重要权衡时。

code_execution 代码执行工具集

工具说明所需环境变量
execute_code运行可以编程调用 Hermes 工具的 Python 脚本。适用于以下场景:需要 3 次以上工具调用并在其间有处理逻辑、需要过滤/精简大型工具输出、需要条件分支(如果 X 则 Y 否则 Z)、或需要循环(获取 N 页、处理 N 个文件)。可通过 from hermes_tools import ... 导入工具。限制:5 分钟超时、50KB 输出上限、每次脚本最多 50 次工具调用。

cronjob 定时任务工具集

工具说明所需环境变量
cronjob统一的定时任务管理器。使用 action="create""list""update""pause""resume""run""remove" 管理任务。支持附带技能的任务(可附加一个或多个技能),update 时 skills=[] 清除附加技能。定时任务在全新会话中运行,无当前聊天上下文。

delegation 委派工具集

工具说明所需环境变量
delegate_task派生一个或多个子代理(Subagent)在隔离上下文中执行任务。每个子代理拥有独立的对话、终端会话和工具集。仅返回最终摘要——中间工具结果不会进入你的上下文窗口。两种模式(需提供 'goal' 或 'tasks' 之一):1. 单任务模式:提供 'goal'(+ 可选的 context、toolsets)。2. 批量模式:提供最多 3 项的 'tasks' 数组,所有任务并发执行。

file 文件工具集

工具说明所需环境变量
patch文件中的精确查找替换编辑。替代终端中的 sed/awk。使用模糊匹配(9 种策略),因此轻微的空白/缩进差异不会导致失败。返回统一差异(unified diff)。编辑后自动运行语法检查。
read_file读取文本文件,带行号和分页。替代终端中的 cat/head/tail。输出格式:'行号内容'。如果文件未找到会建议相似文件名。使用 offset 和 limit 处理大文件。注意:无法读取图片或二进制文件——请使用 vision_analyze。
search_files搜索文件内容或按名称查找文件。替代终端中的 grep/rg/find/ls。基于 Ripgrep,比 shell 等效工具更快。内容搜索(target='content'):文件内正则搜索。文件搜索(target='files'):按 glob 模式查找文件。
write_file将内容写入文件,完全替换现有内容。替代终端中的 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_profilehoncho_searchhoncho_contexthoncho_reasoninghoncho_conclude)不再是内置工具。它们可通过 Honcho 记忆提供者插件(plugins/memory/honcho/)使用。安装和使用方法请参阅 记忆提供者

image_gen 图片生成工具集

工具说明所需环境变量
image_generate使用 FLUX 2 Pro 模型从文本提示词生成高质量图片,自动进行 2 倍放大。创建详细、艺术化的图片并自动放大以获得高清结果。返回单个放大后的图片 URL。FAL_KEY

memory 记忆工具集

工具说明所需环境变量
memory将重要信息保存到跨会话持久化的记忆中。记忆在会话开始时注入系统提示——这是你在对话之间记住用户信息和环境的方式。主动保存:用户纠正你或说"记住这个"/"别再这样了"时、用户分享偏好/习惯/个人细节时、你发现环境信息时、你学到特定于用户设置的约定/API 特性/工作流时。

messaging 消息工具集

工具说明所需环境变量
send_message向已连接的消息平台发送消息,或列出可用目标。重要:当用户要求发送到特定频道或个人(而非仅平台名称)时,先调用 send_message(action='list') 查看可用目标。

moa 混合代理工具集

工具说明所需环境变量
mixture_of_agents将难题路由到多个前沿 LLM 协作处理。进行 5 次 API 调用(4 个参考模型 + 1 个聚合器),使用最大推理力度——请谨慎使用,仅在真正困难的问题上使用。最适合:复杂数学、高级算法、多步骤推理、创意头脑风暴、代码架构设计。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() 查看所选环境的所有可用字段。每个环境有不同的可配置选项。基础设施设置(分词器、URL、lora_rank、学习率等)是固定的。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。警告:训练可能持续数小时并消耗大量 GPU 资源。TINKER_API_KEY, WANDB_API_KEY
rl_stop_training停止正在运行的训练任务。当指标表现不佳、训练停滞或你想尝试不同设置时使用。TINKER_API_KEY, WANDB_API_KEY
rl_test_inference对任何环境进行快速推理测试。使用 OpenRouter 运行几步推理 + 评分。默认:3 步 × 16 补全 = 每个模型 48 次推演,测试 3 个模型 = 总计 144 次。测试环境加载、提示构建、推理和评分。TINKER_API_KEY, WANDB_API_KEY

session_search 会话搜索工具集

工具说明所需环境变量
session_search搜索过往对话的长期记忆。这是你的回忆功能——每个过去的会话都可搜索。两种模式:1. 最近会话(无参数):查看最近处理的内容,返回标题、预览和时间戳。2. 关键词搜索(带参数):跨所有过去会话搜索特定主题。

skills 技能工具集

工具说明所需环境变量
skill_manage管理技能(创建、更新、删除)。技能是你的程序性记忆——针对重复任务类型的可复用方法。新技能保存到 ~/.hermes/skills/;现有技能可在任何位置修改。操作:create(完整 SKILL.md + 可选类别)、patch(old_string/new_string — 首选修复方式)、edit(完整 SKILL.md 重写 — 仅重大改造)、delete、write_file、remove_file。
skill_view加载技能的完整内容或访问其关联文件(参考资料、模板、脚本)。首次调用返回 SKILL.md 内容及 linked_files 字典。要访问这些文件,用 file_path 参数再次调用。
skills_list列出可用技能(名称 + 描述)。使用 skill_view(name) 加载完整内容。

terminal 终端工具集

工具说明所需环境变量
process管理通过 terminal(background=true) 启动的后台进程。操作:'list'(显示所有)、'poll'(检查状态 + 新输出)、'log'(带分页的完整输出)、'wait'(阻塞直到完成或超时)、'kill'(终止)、'write'(发送原始 stdin 数据)、'submit'(发送数据 + Enter)、'close'(关闭 stdin/发送 EOF)。
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=false(默认):替换整个列表。merge=true:按 id 更新现有项目,添加新项目。

vision 视觉工具集

工具说明所需环境变量
vision_analyze使用 AI 视觉分析图片。提供全面描述并回答关于图片内容的特定问题。

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/。语音和提供者由用户配置,不由模型选择。

编辑此页

Continue Exploring

继续探索

这不是课程式的上一篇下一篇,而是从当前节点向外继续漫游。

核心功能

MCP 集成 (MCP Integration)

MCP 让 Hermes Agent 连接到外部工具服务器,使 Agent 能够使用 Hermes 本身之外的工具——GitHub、数据库、文件系统、浏览器栈、内部 API 等。 如果你曾想让 Hermes 使用一个已经存在于其他地方的工具,MCP 通常是最简洁的方式。 - 无需先编写原生 Hermes 工具即可访问外

核心功能

Memory Providers(记忆 Provider)

原文链接:Memory Providers sidebar position: 4 title: "Memory Providers" description: "External memory provider plugins — Honcho, OpenViking, Mem0, Hindsight, Hologr

参考

CLI 命令参考

本页介绍从终端运行的 命令行命令 。 聊天内斜杠命令请参见斜杠命令参考。 hermes [全局选项] <命令 [子命令/选项] hermes chat [options] 常用选项: 示例: hermes hermes chat -q "总结最新的 PR" hermes chat --provider openrout

参考

斜杠命令参考

原文链接:Slash Commands Reference Hermes 有两个斜杠命令(Slash Command)界面,均由 hermes cli/commands.py 中的中央 COMMAND REGISTRY 驱动: 交互式 CLI(命令行界面) 斜杠命令 — 由 cli.py 分发,支持从注册表自动补全

参考

配置文件命令参考

本页面涵盖所有与 Hermes 配置文件 相关的命令。通用 CLI 命令请参见 CLI 命令参考。 hermes profile <子命令 管理配置文件的顶级命令。不带子命令运行 hermes profile 会显示帮助。 hermes profile list 列出所有配置文件。当前活跃的配置文件用 标记。

参考

环境变量

原文链接:Environment Variables Reference 所有变量都放在 /.hermes/.env 文件中。你也可以通过 hermes config set VAR value 来设置。 变量 描述 --- --- OPENROUTER API KEY OpenRouter API 密钥(推荐,灵活性

Reference

参考

命令、配置、环境变量、技能目录与常见问题,适合作为索引与查阅入口。

11 篇文档11 个节点

当前节点

内置工具参考

同主题继续探索

CLI 命令参考

本页介绍从终端运行的 命令行命令 。 聊天内斜杠命令请参见斜杠命令参考。 hermes [全局选项] <命令 [子命令/选项] hermes chat [options] 常用选项: 示例: hermes hermes chat -q "总结最新的 PR" hermes chat --provider openrout

斜杠命令参考

原文链接:Slash Commands Reference Hermes 有两个斜杠命令(Slash Command)界面,均由 hermes cli/commands.py 中的中央 COMMAND REGISTRY 驱动: 交互式 CLI(命令行界面) 斜杠命令 — 由 cli.py 分发,支持从注册表自动补全

配置文件命令参考

本页面涵盖所有与 Hermes 配置文件 相关的命令。通用 CLI 命令请参见 CLI 命令参考。 hermes profile <子命令 管理配置文件的顶级命令。不带子命令运行 hermes profile 会显示帮助。 hermes profile list 列出所有配置文件。当前活跃的配置文件用 标记。

环境变量

原文链接:Environment Variables Reference 所有变量都放在 /.hermes/.env 文件中。你也可以通过 hermes config set VAR value 来设置。 变量 描述 --- --- OPENROUTER API KEY OpenRouter API 密钥(推荐,灵活性

工具集参考

工具集(Toolsets)是工具的命名捆绑包,控制 Agent 能做什么。它们是按平台、按会话或按任务配置工具可用性的主要机制。 每个工具恰好属于一个工具集。当你启用一个工具集时,该捆绑包中的所有工具都对 Agent 可用。工具集分为三类: 核心(Core) — 一组相关工具的逻辑分组(例如,file 捆绑了 read

MCP 配置参考

本页面是主 MCP 文档的紧凑参考手册。 概念指南请参阅: MCP(Model Context Protocol) 在 Hermes 中使用 MCP mcp servers: <服务器名称 : command: "..." stdio 服务器 args: [] env: {} url: "..." HTTP 服务器

相关节点

MCP 集成 (MCP Integration)

MCP 让 Hermes Agent 连接到外部工具服务器,使 Agent 能够使用 Hermes 本身之外的工具——GitHub、数据库、文件系统、浏览器栈、内部 API 等。 如果你曾想让 Hermes 使用一个已经存在于其他地方的工具,MCP 通常是最简洁的方式。 - 无需先编写原生 Hermes 工具即可访问外

Memory Providers(记忆 Provider)

原文链接:Memory Providers sidebar position: 4 title: "Memory Providers" description: "External memory provider plugins — Honcho, OpenViking, Mem0, Hindsight, Hologr

CLI 命令参考

本页介绍从终端运行的 命令行命令 。 聊天内斜杠命令请参见斜杠命令参考。 hermes [全局选项] <命令 [子命令/选项] hermes chat [options] 常用选项: 示例: hermes hermes chat -q "总结最新的 PR" hermes chat --provider openrout

斜杠命令参考

原文链接:Slash Commands Reference Hermes 有两个斜杠命令(Slash Command)界面,均由 hermes cli/commands.py 中的中央 COMMAND REGISTRY 驱动: 交互式 CLI(命令行界面) 斜杠命令 — 由 cli.py 分发,支持从注册表自动补全

配置文件命令参考

本页面涵盖所有与 Hermes 配置文件 相关的命令。通用 CLI 命令请参见 CLI 命令参考。 hermes profile <子命令 管理配置文件的顶级命令。不带子命令运行 hermes profile 会显示帮助。 hermes profile list 列出所有配置文件。当前活跃的配置文件用 标记。

环境变量

原文链接:Environment Variables Reference 所有变量都放在 /.hermes/.env 文件中。你也可以通过 hermes config set VAR value 来设置。 变量 描述 --- --- OPENROUTER API KEY OpenRouter API 密钥(推荐,灵活性