实操教程|把 Grok Bot 接进了微信:发一句话,它真的去干活
文章目录
部分视频或图片暂未收录,已在正文保留提示;需要时可查看原文。查看原文 ↗
现在我在微信里随手发一句"汇总今天的邮件",它就去查 4 个邮箱,整理成一条摘要发给我;发"看看 DMIT 补货没",它就去读网页,告诉我有没有货。
不是那种只会回固定话术的机器人,是真的会查邮箱、读网页、跑脚本,做完再把结果发回微信。
一些 AI 新技能,可以加入我们的TG交流群。
[未转换内容,参见原始 JSON]
[未转换内容,参见原始 JSON]
整套搭下来大约 20 分钟,下面是完整过程。
一、整体思路:难的不是收发,是"唤醒"
自动回复固定文字的机器人很好做。真正难的是:让一个能用工具的 AI 在收到消息那一刻被叫醒,自己去干活。整篇都围绕这一点。
二、准备工作
· 一个 Grok Bot 助手:它自带一台 Linux 电脑,能写文件、跑 Python、常驻后台进程
· 一个微信号:用来扫码绑定
· 协议文档:腾讯开源的 openclaw-weixin,看 docs/protocol_zh_CN.md
https://github.com/Tencent/openclaw-weixin/blob/main/docs/protocol_zh_CN.md
文档没写的细节,一律以源码为准。
三、桥接程序
用 Python 写,基本只用标准库,放在 ~/workspace/wechat-bridge/,提供 5 个命令:
- login
调用 get_bot_qrcode 拿二维码,生成 PNG。
- wait-login
轮询 get_qrcode_status。状态不止 wait、scaned、confirmed、expired,还有"需要输验证码""需要跳转到别的地址"等情况,都要处理。确认后把凭据原子写入 state/session.json,权限设为 600。
- serve
用 getupdates 长轮询收消息,保存游标 get_updates_buf,重启后能接着收。只处理扫码绑定的那个人发来的私聊,群消息和其他人一律忽略。每条消息按 message_id 去重后写进 inbox/。
- send
用 sendmessage 回复,必须带上收到消息时拿到的 context_token。超过 4000 字自动分段,用 client_id 加发送日志防止重复发送。
- status / health
查看登录状态、进程、最后一次轮询时间、任务积压。凭据只显示前后 4 位,避免在日志或截图里泄露。
四、踩过的坑
· 请求头要带 iLink-App-Id 和 iLink-App-ClientVersion。版本号按当前源码里的规则算,别照抄旧教程。
· 返回 -14 表示 token 过期。官方客户端遇到会先暂停 1 小时,所以别一出错就以为要重新扫码。
· 网络错误和业务错误分开处理:网络错误有限次重试;业务错误不重试,记下错误码。
· 图片、语音、文件先统一回复"暂不支持,请用文字描述",别让 AI 假装看过。
五、唤醒 AI 执行任务(核心)
第 1 步:建一个 routine
在 Grok Bot 里建一个定时任务,触发方式选 webhook。另外加一个每 10 分钟的定时触发做兜底和健康检查,万一 webhook 没送到,消息最多晚 10 分钟处理,不会丢。
第 2 步:安全地存密钥
webhook 地址和密钥存成机器上的环境变量,用 Grok Bot 的加密输入框填写,密钥不经过聊天。
第 3 步:只通知,不传数据
桥接程序收到新消息后,往 webhook POST 一个只含消息 ID 的通知,不带凭据,也不带消息内容。AI 被唤醒后再去本地 inbox/ 读消息。这样就算 webhook 地址泄露,别人也拿不到任何东西。
第 4 步:在 routine 说明里写清流程
查健康状态 → 取出待处理任务 → 标记"执行中" → 用工具真正去做 → 用 send 发回微信 → 标记"已发送"
任务状态分 5 种:已接收、执行中、待发送、已发送、失败。
比如任务做完了但发送失败,就停在"待发送",下次唤醒只重发、不重做。这样不会重复执行,也不会漏发。
六、扫码上线
-
先把手机拿在手上,再生成二维码,它大约 5 分钟就过期。
-
扫码确认后启动后台服务,用 setsid 加 nohup 守护,崩溃自动重启。
-
关键一步:在微信里打开机器人的聊天窗口,发一条消息。只在别处说一句"好了"不算,要靠这条消息拿到第一个 context_token。
七、实测效果
· 消息收发:不到 1 秒
· 简单问题:约 10 到 15 秒回复,时间主要花在唤醒 AI 上
· 等待体验:收到消息立刻显示"对方正在输入",心里有数
我已经在用的场景:
📬 汇总 4 个邮箱的当日邮件
📊 每天 9:30 推送 店铺营收日报
🔔 DMIT 补货提醒转发到微信
八、限制
· 每条微信任务都是一次独立唤醒。AI 能用长期记忆,但看不到主聊天的完整记录。
· 主动推送依赖最近一次对话的 context_token,太久没聊可能发不出去,随便发一句就能恢复。
· 服务器重启后,靠每 10 分钟的健康检查把服务拉起来。
· 凭据彻底失效时,微信通道已经断了,没法用它提醒你,要走 App 内通知提醒重新扫码。
· 发邮件、付款、删除这类有后果的操作,仍然要本人明确同意,AI 不会自己动手。
沿着这个主题继续读
从一篇文章,找到相关的教程、经验和阅读路径。







