hermes-openclaw-bridge
Hermes 与 OpenClaw 联合调度 - 让 Hermes 通过 terminal 工具调用 OpenClaw agent 执行任务,结果返回 Hermes 再处理。适用场景:OpenClaw 独有功能、隔离执行、已有 OpenClaw workflow 复用。
- License 许可
- MIT
- 最近更新
- 2026-09-12
- Stars
- ★ 6
- Forks
- 1
01 前言 Front Matter
- name
- hermes-openclaw-bridge
- description
- Hermes 与 OpenClaw 联合调度 - 让 Hermes 通过 terminal 工具调用 OpenClaw agent 执行任务,结果返回 Hermes 再处理。适用场景:OpenClaw 独有功能、隔离执行、已有 OpenClaw workflow 复用。
02 资源文件 7
- 参考文档hermes-openclaw-bridge.html11.0 KB
- 参考文档references/hermes-wechat-file-send-debug.md3.4 KB
- 参考文档references/hermes-wechat-send.md1.1 KB
- 参考文档references/hermes-wechat-system-notification-suppression.md1.1 KB
- 参考文档references/hermes-wechat-voice-limitation.md2.7 KB
- 参考文档references/openclaw-npm-update.md2.3 KB
- 参考文档references/openclaw-weixin-upload-bug.md1.3 KB
03 SKILL.md 正文
Hermes OpenClaw Bridge
让 Hermes 作为调度器,调用 OpenClaw agent 执行任务,结果返回 Hermes 处理。
架构
微信/消息 → Hermes → [terminal工具] → openclaw agent CLI
↓
OpenClaw 执行
↓
返回 JSON 结果
↓
Hermes 解析 → 处理 → 回复用户
调用命令
openclaw agent --agent <agent_id> --message "<任务描述>" --json
参数说明
| 参数 | 说明 | 示例 |
|---|---|---|
--agent |
指定 agent ID | main、ops 等 |
--message |
任务描述,可包含上下文 | "用户说:XXX,请执行YYY" |
--json |
输出 JSON 格式,方便解析 | 必须加 |
--timeout |
超时秒数,默认 600 | --timeout 300 |
--thinking |
思考深度 | off, medium, high |
返回格式
{
"runId": "uuid",
"status": "ok",
"summary": "completed",
"result": {
"payloads": [
{ "text": "执行结果文本", "mediaUrl": null }
],
"meta": {
"durationMs": 24046,
"agentMeta": {
"sessionId": "uuid",
"provider": "minimax",
"model": "MiniMax-M2.7-highspeed",
"usage": { "input": 104, "output": 31, ... }
}
}
}
}
解析结果
Hermes 的 terminal() 返回后,用 Python 解析:
import json
result = terminal("openclaw agent --agent main --message '...' --json")
data = json.loads(result["output"])
text = data["result"]["payloads"][0]["text"]
完整示例
Python execute_code 方式
from hermes_tools import terminal
import json
def call_openclaw(task: str, context: str = "") -> str:
msg = f"【来自Hermes调度】\n任务:{task}"
if context:
msg += f"\n上下文:{context}"
res = terminal(f'openclaw agent --agent main --message "{msg}" --json')
data = json.loads(res["output"])
if data["status"] == "ok":
return data["result"]["payloads"][0]["text"]
else:
return f"执行失败:{data.get('error', 'unknown')}"
Hermes cron prompt 调用方式
在 cron 的 prompt 中直接写:
用以下命令让 OpenClaw 执行任务:
openclaw agent --agent main --message "【任务描述】" --json
解析返回的 JSON,从 result.payloads[0].text 提取结果。
使用场景
| 场景 | 为什么用 Bridge | 示例 |
|---|---|---|
| OpenClaw 独有插件 | OpenClaw 有特定插件 Hermes 没有 | OpenClaw 的某些第三方集成 |
| 隔离执行 | 危险操作想在沙盒里跑 | 未验证的代码、下载陌生脚本 |
| 已有 workflow | OpenClaw 已有成熟流程不想迁移 | 之前写好的 OpenClaw cron 任务链 |
| OpenClaw 调试 | 想单独在 OpenClaw 环境测试 | --thinking high 深度思考 |
| 负载分担 | 两个系统跑不同类型任务 | Hermes 跑对话,OpenClaw 跑定时脚本 |
吸收的专项知识(references/)
以下专项经验已沉淀为 reference 文件,伞技能本身保留通用框架:
| 文件 | 内容 |
|---|---|
references/openclaw-npm-update.md |
OpenClaw npm 更新 + PM2 重启 + 双 Gateway 架构辨别 |
references/hermes-wechat-file-send-debug.md |
微信文件发送调试:两个独立通道、getUploadUrl 错误分析 |
references/hermes-wechat-voice-limitation.md |
微信语音发送能力调查:所有路径均不可用 |
references/openclaw-weixin-upload-bug.md |
openclaw-weixin 文件上传 Bug:iLink API v2.1 字段变更 |
references/hermes-wechat-send.md |
OpenClaw CLI 发送微信消息的正确命令 |
references/hermes-wechat-system-notification-suppression.md |
屏蔽微信 ⚡打断通知的配置方法 |
限制与注意事项
- 不是消息通道 — 这是 Hermes 主动调用 OpenClaw,不是 OpenClaw 收到微信消息转发 Hermes
- 单向调度 — Hermes → OpenClaw,OpenClaw 不会主动回调 Hermes
- 需要 OpenClaw Gateway 运行 —
openclaw-gateway必须在跑,端口 18789 - 结果需解析 — 需要 terminal 返回后手动解析 JSON
- 超时默认 600s — 复杂任务可能需要
--timeout调大
检查 OpenClaw 状态
openclaw health
# 或
openclaw agents list
故障排查
报错:Gateway agent failed
→ OpenClaw Gateway 没在跑,启动它:openclaw gateway run 或 tmux new -s openclaw 'openclaw gateway run'
报错:Pass --to / --session-id / --agent
→ 没指定 agent,需要加 --agent main 或其他 agent ID
返回空 text
→ 检查 result.payloads 是否有内容,或看 result.meta 里的错误信息
JSON 解析失败
→ 某些命令输出可能不是纯 JSON,先 terminal(... --json 2>&1) 捕获所有输出再解析
04 同仓库更多 Skills
饼干记账
记账技能。写入类:记支出、记收入、拍账单、批量录入、改记录、撤销、恢复、记报销、记退款、记借出、记借入、记收回、记偿还、记分期。查询类:查今天、查某天、查月、查区间、查分类、搜备注、查标签、查账户、查账本、查欠款、查待报销。分析类:看月度、看总览、看分类、看对比、看趋势、看大额、做统计、看洞察、看借贷。目标/账户/联动:设定预算、看预算、设定目标、看目标、新增账户、改账户、账户转账、看账户汇总、买东西联动、吃饭联动。**所有查询/分析类唤醒词默认 invoke HTML 工作流**(scripts/bill_inject.py + templates),写入类保持文字回执。能力速查:说「饼干记账 HELP」/「查帮助」/「能做什么」。完整 70 个唤醒词见 references/路由表.md
贴心助理
真实助手 - 主动分析用户状态,关心用户,提供帮助与提醒。不偷懒地联动所有技能,真正像个朋友一样陪伴。
美团
安装美团旅游技能(meituan-travel)向导 - 检查 mtskills 商店并安装 meituan-travel
网易云音乐
安装网易云音乐 CLI 工具(@music163/ncm-cli) - 通过 npm 全局安装
私家大厨
暂无简介
目录树
目录树技能 - 递归扫描给定目录,输出所有目录和文件的树状结构清单