Hermes Agent多工具调用教程

老浩小哥_1690

老浩小哥_1690

2026-05-14

1125人浏览

原创

需启用全部工具、用xml声明多工具、配置delegate_tool分发任务、启用异步执行、通过mcp桥接外部工具。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

hermes agent多工具调用教程

如果您希望 Hermes Agent 同时调用 terminal、browser、computer_use 等多个工具协同完成复杂任务,但实际执行中仅触发单一工具或出现工具冲突报错,则可能是由于工具注册未全部启用、执行上下文隔离缺失或调用链未显式声明所致。以下是实现 Hermes Agent 多工具并行调用的具体操作方法:

一、验证并启用全部所需工具

多工具调用的前提是所有目标工具均已在 Hermes Agent 运行时环境中完成注册与初始化,未启用的工具将被自动忽略,导致指令被截断或降级为纯文本响应。

1、启动 CLI 会话后输入 /skills 查看当前已加载工具列表。

2、确认 terminal、browser、computer_use、filesystem 等工具名后缀显示为 enabled;若为 disabled,需检查 environments/agent_loop.py 中 tools 列表是否包含对应模块导入语句。

3、在项目根目录下编辑 cli-config.yaml,确保 tools 节点中各工具的 enabled 字段设为 true,例如:computer_use: {enabled: true, backend: "cua-driver"}

4、重启 hermes 进程并再次执行 /skills,观察日志中是否出现 Loaded tool: computer_use (v1.2.0) 类似提示行。

二、使用 XML 工具声明语法显式指定多工具调用

Hermes Agent 的开源模型(如 Hermes-2-Pro)依赖系统提示中的 XML 标签结构识别可调用工具集,自然语言描述不足以触发多个工具,必须通过结构化声明明确告知模型哪些工具可组合使用。

1、在系统提示(system prompt)中插入完整 块,每个工具定义需包含 name、description 和 parameters,例如同时声明 browser 与 terminal:

[{"type":"function","function":{"name":"browser_navigate","description":"在浏览器中打开指定 URL","parameters":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"]}}},{"type":"function","function":{"name":"execute_shell","description":"执行 Shell 命令并返回结果","parameters":{"type":"object","properties":{"command":{"type":"string"}},"required":["command"]}}}]

2、在用户指令中使用 JSON 格式工具调用块,确保多个函数调用嵌套于同一轮响应中,例如:

{"name":"browser_navigate","arguments":{"url":"https://example.com"}} {"name":"execute_shell","arguments":{"command":"ls -l /tmp"}}

3、避免在单次响应中混用非标准格式(如中文描述+工具名),否则仅首个工具会被解析。

三、配置 delegate_tool 实现跨工具任务分发

delegate_tool 是 Hermes Agent 内置的子代理调度器,可将主任务按语义切分为多个子任务,并分别指派给最适配的工具执行,从而绕过单次响应只能返回一个工具调用的限制。

1、确认 tools/delegate_tool.py 文件存在且具备可执行权限。

2、构造含多阶段意图的自然语言指令,例如:“先打开 https://httpbin.org/json,再把返回内容保存为 /tmp/data.json,最后用 cat 命令输出前5行”

3、在 cli-config.yaml 中启用 delegate_tool 并设置策略:

Hermes Agent
Hermes Agent

将OpenClaw打造为具备种子工作空间规则、技能提升、反思记忆和主动维护的学习循环智能体。

下载

delegate_tool: {enabled: true, strategy: "sequential", max_subagents: 3}

4、执行指令后,观察日志中是否依次出现 [Sub-agent #1] → browser_navigate[Sub-agent #2] → write_file[Sub-agent #3] → execute_shell 等分阶段执行记录。

四、启用异步工具执行模式避免阻塞等待

默认同步调用模式下,前一工具未返回结果则后一工具无法启动,导致多工具流水线中断;启用异步模式后,各工具调用独立提交、并发执行,最终结果由主代理聚合。

1、在 environments/agent_loop.py 中定位 _tool_executor 初始化位置,将其替换为异步执行器:

_tool_executor = concurrent.futures.ThreadPoolExecutor(max_workers=8)

2、修改 tools/__init__.py,在每个工具类的 invoke 方法头部添加 @asyncio.coroutine 或 async/await 包装。

3、在 cli-config.yaml 中启用 async_execution 开关:

execution: {mode: "async", timeout_sec: 60}

4、发起多工具指令后,检查进程资源监控:应同时存在多个 python 线程处于 Running 状态,且 terminal 与 browser 工具日志时间戳高度重叠。

五、通过 MCP 协议桥接外部工具实现跨平台多工具协同

MCP(Model Communication Protocol)是 Hermes Agent 支持的标准协议接口,允许将本地不可用的工具(如 Windows GUI 自动化、iOS 模拟器控制)以远程服务形式接入,并与内置工具统一调度。

1、启动 MCP 兼容服务端,例如运行 cua-driver 的 macOS 后台服务并监听 http://127.0.0.1:8001/mcp

2、在 cli-config.yaml 的 mcp_servers 节点中注册该地址:

mcp_servers: [{"name": "macos-computer", "url": "http://127.0.0.1:8001/mcp", "tools": ["click", "type_text", "scroll"]}]

3、在系统提示中扩展 块,加入来自 MCP 服务的工具定义,确保 name 与远程服务注册名一致。

4、发出混合指令如:“在 Safari 中打开百度,然后用鼠标点击搜索框,再输入‘Hermes Agent’”,验证 browser 工具与 MCP 注册的 click、type_text 是否被连续调用。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

hermes agent hermesagent

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Hermes Agent完整设置指南教程
Hermes Agent完整设置指南教程

此专题为您提供 HermesAgent最新、最全面的设置指南。内容涵盖从一键安装、模型配置(支持阿里云百炼等)到微信、钉钉等全平台接入的完整流程。无论您是新手还是进阶用户,都能在这里找到清晰的步骤说明与常见问题解答,助您快速部署并掌握这款能自我进化的AI代理,轻松开启智能化工作流。

2026.04.13

552

11

Hermes Agent完整部署教程
Hermes Agent完整部署教程

本专题聚焦开源AI智能体Hermes Agent,提供从入门到精通的完整部署教程。作为会“自我进化”的AI助手,它支持本地及云端私有化部署,具备持久记忆与技能自动沉淀能力。无论你是开发者还是效率追求者,这里都将助你快速搭建专属的“数字伙伴”,实现AI自主执行复杂任务,让工作效率倍增。

2026.04.13

374

20

HermesAgent下载安装完整教程
HermesAgent下载安装完整教程

本专区为您提供 HermesAgent最全面的安装与部署指南。作为由NousResearch推出的“可成长”AI智能体,Hermes支持Linux、macOS及WSL2环境。我们汇集了从官方推荐的一键脚本安装、手动源码部署,到Docker及云服务器(如腾讯云Lighthouse)搭建的保姆级教程。无论您是新手还是开发者,都能在此找到详细的配置步骤,助您快速拥有这位具备持久记忆与自我进化能力的AI助手。

2026.04.13

277

21

Hermes Agent使用指南汇总
Hermes Agent使用指南汇总

本专题将带你从零开始,全面掌握Hermes Agent的安装部署、核心配置、技能扩展与生态整合,无论你是想打造专属私人助手,还是探索AI自动化变现路径,这里都有最实用的实战指南。

2026.05.06

389

34

NumPy性能优化版本更新与常见报错排查
NumPy性能优化版本更新与常见报错排查

本专题整理 NumPy 性能优化、版本更新与常见报错排查相关教程,覆盖向量化计算、广播性能、内存布局、NumPy 2.0 升级、版本兼容冲突、安装导入报错、dtype 溢出、矩阵运算异常和 broadcasting 报错修复,帮助读者系统掌握 NumPy 性能调优与问题定位方法。

2026.09.22

0

25

Vibeknow在线使用入口合集
Vibeknow在线使用入口合集

本专题汇总了Vibeknow在线创作视频的官方入口及网页版使用教程,涵盖PPT、PDF、Word等文档一键转讲解视频的核心操作,并整理了免费版水印规则与手机端浏览器访问指南,助你快速将知识内容视频化。

2026.09.21

20

20

NumPy随机数文件读写与dtype数据类型
NumPy随机数文件读写与dtype数据类型

本专题整理 NumPy 随机数、文件读写与 dtype 数据类型相关教程,覆盖 Generator/random、随机数种子、正态分布采样、npy/npz/CSV/TXT 保存读取、loadtxt/savetxt、memmap、大文件处理、astype 类型转换、结构化 dtype、整数溢出和精度丢失等场景。

2026.09.21

20

24

NumPy矩阵运算与线性代数计算
NumPy矩阵运算与线性代数计算

本专题整理 NumPy 矩阵运算与线性代数计算相关教程,覆盖矩阵乘法、dot 与 @ 运算符、逆矩阵、行列式、特征值与特征向量、SVD、线性方程组、欧氏距离、矩阵分解和大规模矩阵性能优化等内容,帮助读者掌握 np.linalg 与矩阵计算实战。

2026.09.21

0

20

NumPy广播机制数学运算与统计分析
NumPy广播机制数学运算与统计分析

本专题整理 NumPy 广播机制、数组数学运算与统计分析相关教程,覆盖广播规则、维度对齐、矩阵与数组加减除法、向量化计算、均值方差、分位数、中位数、直方图和 unique 频次统计等场景,帮助读者掌握 ndarray 高效计算与统计处理方法。

2026.09.21

0

17

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Hermes Agent中文文档
Hermes Agent中文文档

共0课时 | 0人学习

Pandas 官方文档与用户指南
Pandas 官方文档与用户指南

共0课时 | 0人学习