AaronWong1999/hermesclaw
Run Hermes Agent and OpenClaw on the same WeChat account
HermesClaw – 用一个账号运行多个关联微信的LLM机器人
功能简介
HermesClaw是一个轻量级Python代理,让一个微信账号同时与三个不同的AI代理通信:
- Hermes Agent(Nous Research)
- OpenClaw("龙虾"助手)
- OpenCode(代码专用LLM,例如 MiniMax M2.5 Free)
微信每个账号只允许一个iLink连接,因此通常只能运行Hermes Agent或OpenClaw之一。HermesClaw成为唯一的iLink轮询器,将每条传入消息转发到相应的本地代理(OpenCode使用ACP桥)。通过简单的斜杠命令,您可以切换活跃机器人,或让两/三个机器人同时回复。
为什么需要它
- 优势互补 – 让Hermes处理一般聊天,OpenClaw回答特定查询,或让OpenCode处理代码相关任务。
- 语音转代码 – 发送微信语音消息,HermesClaw将转录内容转发给OpenCode,从而生成或编辑代码。
- 一键切换 –
/hermes、/openclaw、/opencode、/both、/three即时改变路由。 - 无需修改原始代理 – 代理仅转发原始iLink消息;每个代理仍执行自己的媒体解密、格式化和LLM调用。
工作原理(高层)
iLink API ←→ HermesClaw(唯一轮询器)
│ │ │ │
│ ├─ Proxy A (19999) → OpenClaw gateway
│ ├─ Proxy B (19998) → Hermes gateway
│ └─ ACP bridge → OpenCode subprocess
│
└─ 原始iLink消息(文本、语音转录、图片/视频URL等)
HermesClaw监听消息,检查命令前缀,并将负载转发到选定的代理。当多个代理处于活动状态时,回复会带有小标签([Hermes Agent]、[OpenClaw]、[OpenCode])发送回微信。
开始使用
- 安装您需要的代理 – 至少一个:
- OpenClaw + clawbot(
openclaw-weixin包) - 带有微信网关的Hermes Agent
- OpenClaw + clawbot(
- 运行一行安装程序:
curl -fsSL https://raw.githubusercontent.com/AaronWong1999/hermesclaw/main/install.sh | bash- 检测存在的网关
- 从其配置文件中提取iLink令牌
- 将每个网关修补为指向本地代理端口
- 安装Python依赖(
requests、python-dotenv) - 设置systemd服务(macOS上为launchd)以保持HermesClaw运行
- 重启网关,在微信中发送
/whoami以验证路由。 - (可选)添加OpenCode –
npm install -g opencode-ai;安装程序将自动检测并启用/opencode和/three。
在微信中使用的命令
| 命令 | 效果 |
|---|---|
/hermes |
仅路由到Hermes Agent |
/openclaw |
仅路由到OpenClaw |
/opencode |
仅路由到OpenCode |
/both |
发送到Hermes + OpenClaw;回复以机器人名称作为前缀 |
/three |
同时发送到所有三个代理 |
/whoami |
显示当前活动路由和每个代理的状态 |
| 其他文本 | 转发到当前活动的代理 |
安装详情
- Python代理 –
hermesclaw.py(约870行)实现两个HTTP代理和一个ACP桥。 - 安装脚本 –
install.sh自动检测环境,修补配置文件,创建systemd单元(macOS上为launchd plist),并支持使用-y或HERMESCLAW_YES=1进行非交互式运行。 - 测试 – 117个pytest用例涵盖路由、媒体处理、ACP恢复和安装程序边界情况。
- 卸载 – 脚本化删除可恢复原始网关配置并禁用后台服务。
开发者
Aaron Wong(@AaronWong1999),感谢Hermes Agent和OpenClaw社区的贡献。项目采用MIT许可证。
HermesClaw不修改AI模型本身;它只是让您用单个账号运行多个现有的微信关联LLM机器人。
相关
- 项目
- 项目
- 项目
- 项目
- 项目