OpenClaw * Hermes Agent 完美结合实战手册
一、什么是 Hermes Agent?
Hermes Agent 是由 Nous Research 团队打造的开源自进化 AI 智能体。它的核心口号是”the agent that grows with you”—— 一个会与你共同成长的智能体。
与传统的 AI 工具不同,Hermes Agent 最大的特点是内置了一套完整的学习循环框架。每次任务完成后,它会主动复盘:这次执行值不值得记录下来?触发条件很具体——工具调用超过 5 次、中途出过错然后自己修复了、用户做过纠正、或者走了一条不明显但有效的路径——满足任何一条,它就会在~/.hermes/skills目录里生成一个 Skill。
打个比方:OpenClaw 是一个执行力极强的“管家”,而 Hermes Agent 是一个会越用越聪明的“大脑”。两者结合,OpenClaw 负责调度和执行,Hermes 负责深度思考和记忆。
Hermes Agent 的核心能力
|
|
|
|---|---|
| 跨会话长期记忆 |
MEMORY.md 和 USER.md 记录任务经验和用户偏好,每次会话自动加载 |
| 自动技能沉淀 |
|
| 分层记忆系统 |
|
| 内置 40+ 技能 |
|
| 完全本地化 |
~/.hermes/,不依赖云端 |

二、环境准备
系统要求
·Linux / macOS / WSL2
·已安装 OpenClaw(本文以阿里云 Ubuntu 22.04 4核8G 为例)
·自备大模型 API Key(本文以 DeepSeek 为例)

三、安装 Hermes Agent
3.1 执行一键安装脚本
SSH 登录服务器,执行以下命令:
curl-fsSLhttps://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh|bash

安装脚本会自动完成:克隆仓库、创建虚拟环境、安装依赖、添加命令到 PATH。
3.2 加载环境变量并验证

source ~/.bashrc# 如果使用 zsh,执行 source ~/.zshrchermes --version
看到类似Hermes Agent v0.16.0的输出版本号即表示安装成功。
3.3 配置大模型 API Key
本文以 DeepSeek 为例:
#设置provider 为 custom(通用模式)hermes configsetmodel.provider custom# 设置 DeepSeek 官方 API 地址hermes configsetmodel.base_url https://api.deepseek.com/v1# 设置 API 模式为 OpenAI 兼容hermes configsetmodel.api_mode openai# 设置你的 API Key(替换为真实 Key)hermes configsetmodel.api_key YOUR_DEEPSEEK_API_KEY# 设置默认模型(deepseek-chat 会自动指向最新 V4 版本)hermes configsetmodel.default deepseek-chat
💡其他模型配置参考:如果使用阿里云百炼,可参考官方文档配置。也可以用hermes setup交互式配置向导完成设置。
3.4 验证配置
hermes doctor
看到✓ API key or custom endpoint configured即表示配置成功。



四、OpenClaw 集成 Hermes(ACP 协议方式)
OpenClaw 通过ACP (Agent Client Protocol)协议调用 Hermes。核心是安装acpx插件,让 OpenClaw 能够启动并管理 Hermes 子进程。
4.1 安装并启用 acpx 插件
#安装 acpx 插件openclaw pluginsinstallacpx# 启用插件openclaw configsetplugins.entries.acpx.enabledtrue
4.2 修改 OpenClaw 配置文件
编辑~/.openclaw/openclaw.json:
nano ~/.openclaw/openclaw.json
添加或修改以下内容(注意不要破坏原有结构):
{"acp":{"enabled":true,"backend":"acpx"},"plugins":{"entries":{"acpx":{"enabled":true,"config":{"agents":{"hermes":{"command":"/usr/local/bin/hermes","args":["acp"]}}}}}}}
⚠️注意:command建议使用绝对路径(可通过which hermes查看实际路径)。
4.3 创建过滤脚本(关键!解决崩溃问题)
为什么需要这个脚本?Hermes 在 ACP 模式下会输出带颜色的进度条和特殊字符(如⚕ deepseek-chat │ 0/1M │ [░░░░░░░░░░]),这些不是合法的 JSON 格式,会导致 OpenClaw 的 acpx 插件解析失败而崩溃。
创建过滤脚本,只输出以{或[开头的纯 JSON 行:
#!/bin/bash# Hermes ACP 过滤包装脚本# 只输出有效的 ACP JSON 行,过滤掉 Hermes 的交互式美化输出export NO_COLOR=1export TERM=dumbexec hermes acp 2>/dev/null | python3 -c "import sys, jsonfor line in sys.stdin:stripped = line.strip()if not stripped:continueif stripped.startswith('{') or stripped.startswith('['):try:json.loads(stripped)print(stripped, flush=True)except json.JSONDecodeError:continue"
这个脚本是openclaw帮我创建的,其实可以让openclaw自动安装、配置。
4.4 让 OpenClaw 使用过滤脚本
openclaw config set plugins.entries.acpx.config.agents.hermes.command /usr/local/bin/hermes-acp-cleanopenclaw config set plugins.entries.acpx.config.agents.hermes.args '[]'
4.5 重启 OpenClaw Gateway
openclaw gateway restart
检查服务状态:
openclaw gateway status

五、验证集成是否成功
5.1 在 OpenClaw Control UI 中测试
在浏览器打开 OpenClaw Control UI(默认http://你的IP:18789),新建对话,输入:
/acp spawn hermes --mode oneshot --bind here
然后发送消息,例如:
你好,请简单介绍一下自己
如果收到 Hermes 的回复(而不是 OpenClaw 自己回答),说明集成成功!🎉
5.2 检查 ACP 后端健康状态
在 UI 中输入:
/acp doctor
应显示healthy: yes和registeredBackend: acpx。

六、⚠️ 常见踩坑与异常排查
坑 1:/acp spawn 报 ACP_BACKEND_MISSING
原因:plugins.allow白名单未包含acpx,或者 acpx 插件未启用。
解决方案:
# 移除 plugins.allow 限制(或确保包含 acpx)openclaw config unset plugins.allow# 确保 acpx 已启用openclaw config set plugins.entries.acpx.enabled trueopenclaw gateway restart
坑 2:OpenClaw 执行 /acp spawn 后崩溃
原因:Hermes 输出了带颜色的进度条和特殊字符,acpx 解析 JSON 失败。
日志特征:
Failed to parse JSON message: ⚕ deepseek-chat │ 0/1M │ [░░░░░░░░░░] 0%
解决方案:确保使用了 4.3 节创建的过滤脚本hermes-acp-clean,并且 OpenClaw 配置中的command指向该脚本。
坑 3:修改配置后重启,配置被 doctor –fix 恢复
原因:openclaw doctor –fix会从“已知良好”的备份中恢复配置。
解决方案:
·手动编辑配置文件后,不要再运行doctor –fix
·日常只使用openclaw doctor(不带–fix)查看状态
·如果 JSON 格式错误,先用doctor –fix修复,再手动删除 hermes 相关内容
坑 4:JSON 配置文件语法错误
症状:
JSON5: invalid end of input at 574:1
解决方案:
# 先用 doctor --fix 恢复合法 JSONopenclaw doctor --fix# 然后手动编辑,删除 hermes 相关内容nano ~/.openclaw/openclaw.json# 验证 JSON 格式python3 -c "import json; json.load(open('/root/.openclaw/openclaw.json'))"
坑 5:hermes 命令找不到
原因:环境变量未加载或安装未完成。
解决方案:
source ~/.bashrc# 或重新执行安装脚本
坑 6:Hermes 回复很慢或超时
可能原因:
·网络问题或 API 额度不足
·模型选择较慢(可换deepseek-v4-flash)
解决方案:
hermes config set model.default deepseek-v4-flash

七、让 OpenClaw 自动调度 Hermes(终极目标)
一旦集成成功,你不需要每次手动输入/acp spawn。OpenClaw 会智能判断何时需要调用 Hermes。
你只需像这样对 OpenClaw 说话:
“让 Hermes 帮我分析一下茅台最近一周的股价走势”
OpenClaw 内部会调用sessions_spawn启动 Hermes 并完成任务。
在定时任务中调用 Hermes
openclaw acp run --agent hermes --mode oneshot --message "分析当前A股市场表现"
注意:如果你的 OpenClaw CLI 不支持acp run,OpenClaw 的 UI 对话方式同样可以实现自动调度。

八、如何卸载 Hermes Agent
如果将来不再需要 Hermes,可以按以下步骤彻底卸载。
8.1 停止 Hermes 进程(如果正在运行)
pkill -f hermes
8.2 删除 Hermes 安装目录
sudo rm -rf /usr/local/lib/hermes-agent
8.3 删除 Hermes 配置和数据(记忆、技能等)
rm -rf ~/.hermes
8.4 删除命令符号链接
rm -f ~/.local/bin/hermes
8.5 从 OpenClaw 中移除 Hermes 集成
方法一:禁用 acpx 插件(推荐)
openclaw config set plugins.entries.acpx.enabled falseopenclaw gateway restart
方法二:彻底卸载 acpx 插件
openclaw plugins uninstall acpxopenclaw gateway restart
8.6 清理 OpenClaw 配置中的 hermes Agent(如果有)
编辑~/.openclaw/openclaw.json,删除agents.list中id: “hermes”的条目,以及defaultAgent中指向”hermes”的配置。
8.7 验证卸载结果
hermes --version# 应提示 command not foundps aux | grep hermes# 除了 grep 本身,不应有其他进程

九、总结
|
|
|
|---|---|
|
|
curl -fsSL ... | bash |
|
|
hermes config set model.api_key YOUR_KEY |
|
|
openclaw plugins install acpx |
|
|
cat > /usr/local/bin/hermes-acp-clean ... |
|
|
~/.openclaw/openclaw.json |
|
|
/acp spawn hermes --mode oneshot --bind here |
|
|
rm -rf /usr/local/lib/hermes-agent ~/.hermes |
祝你玩得开心!🚀
夜雨聆风
