微信接入——全民应用
Hermes 消息平台接入第33篇:微信。个人微信号里指挥 AI。
这篇教程讲的是:如何把 Hermes Agent 这个 AI 智能体接到你的个人微信上,让它帮你收发消息、处理任务。全程不需要服务器公网地址,扫码就能连,非常“傻瓜式”。
先说个重要概念:iLink 机器人身份
想象一下,你扫码登录后,Hermes 并不是“附身”在你的微信账号上,而是在微信里注册了一个独立的“机器人分身”(比如 a5ace6fd482e@im.bot)。这个分身有自己独立的身份,别人 @ 你的微信号,机器人是收不到的。
所以,实际能用的是:别人直接给这个机器人发私聊消息。 至于拉机器人进普通微信群?大概率不行——这是腾讯 iLink 平台的限制,不是 Hermes 的问题。文档里明确说了:大多数情况下,只有私聊(DM)能稳定工作。
准备工作
- 一个个人微信号(用来扫码)
- 电脑上装好 Python 包:
pip install aiohttp cryptography
# 可选:想在终端里显示二维码,就装这个
cd ~/.hermes/hermes-agent && uv pip install -e ".[messaging]"
第1步:运行设置向导(扫码登录)
在终端输入:
hermes gateway setup
选择 Weixin,然后按提示操作:
- 终端会显示一个二维码(或者给你一个链接)
- 用手机微信扫码
- 在手机上确认登录
- 看到
微信连接成功,account_id=your-account-id就搞定了
向导会自动把账号信息保存到 ~/.hermes/weixin/accounts/,你不需要手动填 token。
第2步:配置环境变量
打开 ~/.hermes/.env 文件,至少写上账号 ID:
WEIXIN_ACCOUNT_ID=your-account-id
# 可选:限制谁能给机器人发消息
WEIXIN_DM_POLICY=allowlist
WEIXIN_ALLOWED_USERS=user_id_1,user_id_2
注意: WEIXIN_ALLOWED_USERS 是“白名单过滤”,不是“邀请系统”。别人得先主动给机器人发一条消息,你从日志里看到他们的用户 ID,再填进来,他们才能用。
第3步:启动网关
hermes gateway
看到日志输出,就说明机器人已经上线,开始“长轮询”收消息了。
它能做什么?
- 收发私聊消息(文字、图片、视频、文件、语音都支持)
- 自动回复,带“正在输入…”状态提示
- Markdown 格式保留,支持标题、表格、代码块
- 消息智能分段:短消息一条发,长消息自动拆
- 断线重连,自动重试,不怕临时网络抖动
群聊呢?
默认是关闭的(WEIXIN_GROUP_POLICY=disabled)。如果你非要开,文档里也说了:iLink 机器人身份通常收不到普通微信群的消息,开了大概率也没用。所以别折腾了,专注私聊就好。
小总结
微信接入的核心就三步:扫码 → 配 ID → 启动。记住“机器人是独立身份”这个关键点,你就不会困惑为什么群里 @ 自己没反应了。私聊功能稳定可靠,日常够用。
下篇预告: 微信搞定了,下一篇我们聊聊 Telegram 接入——如果你觉得微信限制太多,Telegram 的开放接口会让你舒服得多。敬请期待!
📖 官方文档
本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › user-guide/messaging/weixin