Hermes 接微信机器人
个人微信 iLink 接入 · 扫码即连
深信号·教程

让 Hermes 在微信里陪你聊天、干活

接好之后,你在微信里直接给机器人发消息,Hermes 就会像在终端里一样调用工具、执行任务、回你结果——还能把定时任务的产出(周报、情报、提醒)推送到微信。本文用个人微信 + iLink Bot 方案,扫个码就通。

个人微信可用扫码登录无需公网 IP支持图片/文件/语音

目录

前置:Hermes 已装好、能跑 ① 装微信连接依赖 ② 扫码登录(核心) ③ 配置权限策略 ④ 启动网关测试 ⑤ 常用管理命令 常见问题
0

前置:Hermes 已装好、能跑

先用 hermes doctor 确认 Hermes 能正常对话。微信接入是「网关」功能,需要 Hermes 已经配置好一个大模型(模型没配,机器人不会回复)。

💡 还没装 Hermes?先看《Windows 安装 Hermes Agent 全流程教程》。
1

装微信连接依赖

必做

微信适配器需要两个 Python 包:aiohttp(异步网络)和 cryptography(微信媒体加密解密)。在你的终端里执行:

pip install aiohttp cryptography

如果是 git 安装的 Hermes,还可以把 messaging 附加组件装上(终端里能直接显示登录二维码):

cd ~/.hermes/hermes-agent && uv pip install -e ".[messaging]"
2

扫码登录(核心)

核心

运行交互式配置向导,选 Weixin:

hermes gateway setup

向导会自动完成 5 步:

成功后终端会显示:微信连接成功,account_id=你的账号ID

💡 二维码在终端显示不出来?重新安装 messaging 附加组件,或直接打开它打印的 URL 扫码。
⚠ 重要认知:扫码连上的是微信官方的 iLink Bot 身份(类似 xxx@im.bot),不是你个人微信号本身。它不能像普通联系人那样被拉进大多数微信群、也收不到普通群消息。大部分场景一对一私聊是稳定可用的。
3

配置权限策略

建议

默认是"任何人私聊都能触发机器人",建议改成白名单,只允许你自己用。编辑 ~/.hermes/.env,确认至少有以下几项:

# 必填(扫码登录已自动保存,一般不用动)
WEIXIN_ACCOUNT_ID=你的账号ID
WEIXIN_TOKEN=你的token
# 私聊权限:只允许白名单用户
WEIXIN_DM_POLICY=allowlist
WEIXIN_ALLOWED_USERS=用户ID1,用户ID2
# 定时任务的推送目标(周报/提醒发到这里)
WEIXIN_HOME_CHANNEL=聊天ID
WEIXIN_HOME_CHANNEL_NAME=Home

怎么拿到自己的用户 ID?先让机器人开白名单(open)跑起来,你在微信里给它发条消息,然后看网关日志里的发送者 ID,把它填进 WEIXIN_ALLOWED_USERS 再重启。

策略值含义
open任何人可私聊(不推荐长期)
allowlist仅白名单用户(推荐)
pairing配对模式(初始设置用)
disabled忽略所有私聊
4

启动网关测试

完成

先在前台跑一次看日志(确认无报错):

hermes gateway

确认正常后,安装成后台服务,让它常驻:

hermes gateway install
hermes gateway start
hermes gateway status

测试:用微信给机器人发一句「你好」,应该会收到回复。再试试让它干活:

# 在微信里给机器人发:
帮我查一下现在几点了
写一个 Python 脚本计算 1 到 100 的和
明天提醒我开会
💡 网关会话会持续保存上下文,聊天中途可以随时 /new 开新对话、/model 换模型、/usage 看用量。
5

常用管理命令

命令作用
hermes gateway status看网关是否在跑
hermes gateway restart重启网关
hermes gateway stop停止
hermes gateway setup重新配置平台(换号/加平台)
hermes cron list查看定时任务
6

常见问题

备用
本文基于 Hermes 官方文档 + 实际部署经验 · 由知微编写 · 2026-09-27