OpenClaw + Hermes 双开实战:一台 Windows 跑两个 AI Agent,飞书+本地互相调用的真实体验
先说结论
如果你已经在用 OpenClaw 或者 Hermes,**不要二选一,双开**。
两个 Agent 跑在同一台 Windows 电脑上(WSL 环境),同时连接飞书,互相可以调用对方的能力——这不是炫技,是实打实的生产力提升。
跑了一个月,我把整个搭建过程、踩过的坑、以及**为什么两个比一个强**,一次性讲清楚。-
为什么是”双开”?
OpenClaw 的强项
-
Skills 生态丰富:社区 Skill 多,拿来即用,从小红书配图到天气查询,安装一条命令搞定
-
多平台 Gateway:飞书、Telegram、Discord、WhatsApp 原生支持
-
Node.js 技术栈:和前端/JS 生态无缝衔接,Codex/Claude Code 等 ACP Agent 天然兼容
Hermes 的强项
-
工具链深度:文件系统操作、终端执行、浏览器自动化、代码执行沙箱——开箱即用
-
Python 技术栈:数据处理、脚本自动化、API 调用更顺手
-
结构化任务管理:定时任务(cron)、Agent 团队调度、多 Agent 协同是原生能力
-
记忆系统:持久化记忆 + 跨会话搜索,Agent 真的能”记住”你说过什么
**合在一起的效果**:OpenClaw 负责快速响应 + Skills 生态,Hermes 负责深度执行 + 长期记忆。两个 Agent 跑在同一台机器上,通过 ACP 协议互相调用,等于你同时拥有两个不同专长的 AI 助手。
我的实际环境
| 系统 | Windows 11 + WSL2(Ubuntu) |
| OpenClaw | Node.js 全局安装,Gateway 常驻运行 |
| Hermes | Python venv,Gateway + CLI 同时运行 |
| 平台 | 飞书(两个 Agent 都接入同一个飞书应用) |
| 模型 | 百炼 Coding Plan 免费额度(qwen3.6-plus / MiniMax-M2.7 / glm-5) |
| 通信 | ACP 协议(acpx 作为桥梁) |
> 零成本。所有模型走的是阿里百炼的 Coding Plan 免费额度,每个月白嫖。
搭建步骤(干货)
第一步:各自跑起来
|
git clone https://github.com/hermes-agent/hermes-agent.git
python -m venv venv && source venv/bin/activate
|
两个 Gateway 各占一个端口,互不冲突。飞书上配置一个应用,两个 Gateway 都接入——飞书不限制多个后端。
第二步:打通 ACP 互相调用
这是最关键的一步。ACP(Agent Client Protocol)是两个 Agent 互相调用的桥梁。
编辑 `~/.acpx/config.json`:
|
“command”: “/home/你的用户名/hermes-agent/venv/bin/python -m acp_adapter.entry”
|
⚠️ **坑 1**:一定要用 venv 的 Python 绝对路径!不能用 `source venv/bin/activate && python …`,acpx 不支持 shell 命令。
3. 在 OpenClaw 里注册 Hermes Agent:
编辑 `~/.openclaw/openclaw.json`:
|
“workspace”: “/mnt/d/HermesWorkplace”,
“allowedAgents”: [“main”, “hermes”]
“allow”: [“main”, “hermes”]
|
|
npx acpx hermes “你好,你是谁?”
|
第三步:从 Hermes 调用 OpenClaw
反过来也一样。Hermes 用 `delegate_task` 工具调用 OpenClaw:
|
goal=”用 OpenClaw 的 Skills 帮我生成一张小红书配图”,
acp_args=[“–acp”, “–stdio”]
|
Hermes 的 Python 环境 + OpenClaw 的 Skills 生态 = 完美互补。
实战场景:双开到底强在哪?
场景 1:每日新闻自动推送
我用 Hermes 的 cron 定时任务,每天早上 7:30 自动抓取国内外热点新闻(政治/经济/科技各 7 条),整理成飞书消息推送给我。
-
-
记忆系统让它知道我的偏好(哪些新闻类型优先、格式要求)
-
如果某天新闻源出了问题,Hermes 可以调用 OpenClaw 的 Skills 来补充数据源。
场景 2:内容创作流水线
范遥(我的内容 Agent)用 OpenClaw 的 Skills 快速生成小红书配图,然后交给 Hermes 的技术 Agent 做 HTML 报告输出。
-
我在飞书给 OpenClaw 发指令:”帮我写一篇关于 XX 的小红书笔记”
-
OpenClaw 调用 `xiaohongshu-image-generation` Skill 生成配图
-
图片生成后,通过工作空间共享,Hermes 自动读取并生成配套 HTML 报告
-
最终成果存在共享目录 `/mnt/d/HermesWorkplace/团队输出/` 里
场景 3:Agent 互相救场
这才是双开最有价值的地方——一个挂了,另一个能顶上。
比如某天 OpenClaw 的某个模型 API 报错 401,Hermes 可以自动切换到备用模型继续执行任务。反过来,Hermes 的某个工具链出问题,也可以委托给 OpenClaw 的 Skills 来处理。
两个 Agent 各有一套模型调度策略和 fallback 链,等于给自己的工作流上了双保险。
踩过的坑(帮你省时间)
坑 1:acpx 不支持 shell 激活
|
“command”:”source /home/user/hermes-agent/venv/bin/activate && python -m acp_adapter.entry”
|
|
“command”: “/home/user/hermes-agent/venv/bin/python -m acp_adapter.entry”
|
❌ `pip install acp` —— 这是个完全无关的包
✅ `pip install agent-client-protocol` —— 这才是对的
坑 3:ACP 连上了但返回空响应
acpx 显示 `[thinking]` 动画在转,但最后返回空文本。
**原因**:Hermes 的 `run_conversation()` 返回的 `final_response` 字段为空,但 `messages` 里有内容。
**修复**:在 `acp_adapter/server.py` 的 `prompt()` 方法里加一个 fallback,从 `messages` 列表中提取最后一条 assistant 消息。
坑 4:WSL 文件路径映射
Windows 文件系统在 `/mnt/d/` 下,两个 Agent 的共享工作空间必须用 Linux 路径,不能用 Windows 路径。
✅ 正确:`/mnt/d/HermesWorkplace/`
❌ 错误:`D:\HermesWorkplace\`
坑 5:飞书同一个应用接入两个 Gateway
飞书不限制一个应用有多个后端。两个 Gateway 都配置同一个 App ID 和 App Secret,飞书会把消息推送给两个——但你需要在代码层面做好消息路由,避免两个 Agent 同时回复同一条消息。
我的做法:OpenClaw 处理简单对话和 Skills 调用,Hermes 处理定时任务和深度执行。两个 Agent 各司其职,不抢活。
成本
所有模型走阿里百炼 Coding Plan 的免费额度:
服务器?就是自己的 Windows 电脑,WSL2 跑着不费事。
如果要用更强的模型(比如 Claude / GPT-4),那才需要花钱。但日常办公 + 内容创作 + 自动化任务,免费模型完全够用。
总结
OpenClaw + Hermes 双开不是”多此一举”,而是:
-
**能力互补**:Skills 生态 × 深度工具链
-
-
-
**飞书统一入口**:不用切换平台,一个聊天窗口搞定
如果你已经在用其中任何一个,**强烈建议试试双开**。搭建过程半小时搞定,但生产力的提升是持续的。
**你的 Agent 怎么配的?欢迎在评论区聊聊。**
*本文作者:希昂,供应链老兵,AI Agent 重度用户。目前在创业,一人公司,折腾 AI 自动化。*