github star gitee star atomgit star PyPI Downloads AI 编程 AI 交流群

大家好,我是正在实战各种AI项目的程序员晚枫。

今天我们来接入微信,这是国内最重要的即时通讯平台。对于国内用户来说,这几乎是必选项——你的朋友、同事、客户都在微信上,不用微信等于白搭。


🚀 开篇:一个真实场景

想象一下:你加入了一个AI学习群,群里有个机器人。你@它问"帮我解释一下什么是大模型",它秒回了一段通俗易懂的解释。你截图发到朋友圈,朋友问你是啥,你说"AI助手"。朋友立刻说"给我也整一个"。

这就是在微信里接入OpenClaw的价值。


为什么微信比较难接?

这是新手最常问的问题。我来解释一下:

平台官方Bot支持接入难度说明
Telegram✅ 完善官方提供完整Bot API
Discord✅ 完善⭐⭐官方Bot系统很成熟
WhatsApp⚠️ 有限⭐⭐⭐有API但限制多
微信❌ 无官方Bot⭐⭐⭐⭐全靠第三方实现

核心原因:微信没有像Telegram那样的Bot开放平台,一切都是靠"逆向"实现的,所以天然不稳定。


⚠️ 重要风险提示

接入微信之前,请务必了解以下风险:

封号风险

  • 使用网页版协议可能被微信检测
  • 频繁消息收发会触发风控
  • 敏感词可能直接导致封号

稳定性问题

  • 微信接口随时可能失效
  • 登录状态可能随时掉线
  • 网页版功能受限

我的建议

  • 🚨 使用备用微信号测试
  • 🚨 不要用于任何商业场景
  • 🚨 控制消息频率(每分钟不超过5条)
  • ✅ 考虑企业微信(官方支持,稳定多了)

接入方案对比

方案稳定性成本难度推荐场景
个人微信(web)⭐⭐免费个人测试
个人微信(pad)⭐⭐⭐⭐付费追求稳定
企业微信⭐⭐⭐⭐⭐免费正式使用 ✅
微信公众号⭐⭐⭐⭐⭐免费被动消息

💡 我的推荐:如果是正式使用,直接上企业微信方案。如果是个人玩一玩体验,可以用网页版。


方案一:个人微信号(网页版)

安装微信插件

1
2
3
4
5
6
7
8
# 安装微信插件
openclaw plugins install wechat

# 或手动安装
cd ~/.openclaw/plugins
git clone https://github.com/openclaw/plugin-wechat.git
cd plugin-wechat
npm install

配置OpenClaw

编辑 ~/.openclaw/openclaw.json

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
"channels": {
"wechat": {
"enabled": true,
"plugin": "wechat",
"method": "web",
"qrCodePath": "~/.openclaw/state/wechat/qr.png",
"allowFrom": [],
"groups": {
"enabled": true,
"requireMention": true,
"mentionKeywords": ["@AI助手", "AI小助手"]
},
"autoReply": {
"enabled": false,
"keywords": ["在吗", "你好"],
"response": "你好!我是AI助手,请直接发送你的问题。"
}
}
}
}

配置说明
| 参数 | 说明 | 建议 |
|------|------|------|
| method | web=网页版,pad=付费协议 | 测试用web |
| qrCodePath | 二维码保存路径 | 默认即可 |
| allowFrom | 空=允许所有人 | 先开放测试 |
| mentionKeywords | 群聊触发关键词 | 设置多个更稳定 |
| autoReply | 自动回复关键词 | 建议先关闭 |

连接微信

1
openclaw channels connect wechat

你会看到:

1
2
3
4
5
[wechat] Initializing plugin...
[wechat] Generating QR code...
[wechat] QR code saved to ~/.openclaw/state/wechat/qr.png
[wechat] Please scan the QR code with WeChat
[wechat] Waiting for login...

扫码登录

  1. 打开手机微信
  2. 点击右上角+ → 扫一扫
  3. 扫描电脑屏幕上显示的二维码
  4. 在手机端点击"确认登录"

成功后会看到:

1
2
3
[wechat] Login successful
[wechat] User: 你的微信昵称
[wechat] Connected ✓

测试对话

  • 私聊测试:给自己的"文件传输助手"发消息
  • 群聊测试:在群里@设置的关键词

保持在线的技巧

微信网页版容易掉线,这些方法可以缓解:

1. 自动重连配置

1
2
3
4
5
6
7
8
9
10
11
{
"channels": {
"wechat": {
"reconnect": {
"enabled": true,
"interval": 300,
"maxRetries": 10
}
}
}
}

2. 系统心跳

1
2
3
4
# 添加到crontab,每5分钟检查一次
crontab -e
# 添加这一行:
*/5 * * * * openclaw channels status wechat || openclaw channels connect wechat

3. 注意事项

  • 保持手机微信在前台运行
  • 不要同时在多个设备登录同一个微信
  • 控制消息频率,避免触发风控

方案二:企业微信(推荐正式使用)

如果你想正式使用,推荐企业微信方案。

为什么企业微信更好?

对比项个人微信企业微信
官方支持❌ 无✅ 有
稳定性⭐⭐⭐⭐⭐⭐⭐
封号风险
消息限制严格宽松
群功能限制多完整支持

注册企业微信

  1. 访问 https://work.weixin.qq.com/
  2. 用微信扫码注册(无需公司资质)
  3. 创建你的企业(随便填名字就行)

创建应用

  1. 登录企业微信管理后台
  2. 进入「应用管理」
  3. 点击「创建应用」
  4. 填写应用名称和描述

获取三个凭证

在应用详情页,你会看到:

  • CorpID(企业ID)- 在「我的企业」页面
  • AgentID(应用ID)- 在应用详情页
  • Secret(应用密钥)- 在应用详情页,点击「查看」

配置OpenClaw

1
2
3
4
5
6
7
8
9
10
{
"channels": {
"wecom": {
"enabled": true,
"corpId": "wwxxxxxxxxxxxxxxxx",
"agentId": "1000002",
"secret": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
}
}

连接并测试

1
openclaw channels connect wecom

企业微信的好处是:稳定、不封号、功能完整,强烈推荐!


生产环境配置

限制白名单

1
2
3
4
5
6
7
8
9
10
11
12
13
{
"channels": {
"wechat": {
"allowFrom": ["微信号或手机号"],
"groups": {
"enabled": true,
"allowedGroups": ["群ID"],
"requireMention": true,
"mentionKeywords": ["@AI", "AI助手"]
}
}
}
}

获取你的微信ID

发送消息后,查看日志:

1
tail -f ~/.openclaw/state/logs/channels.log | grep wechat

会显示类似:

1
[wechat] Message from user: wxid_xxxxx

常见问题解决

Q1: 扫码后无法登录

原因:微信网页版限制部分账号(特别是新注册或没有实名认证的)

解决

  • 尝试换一个微信账号
  • 确认微信已实名认证
  • 考虑使用企业微信方案

Q2: 经常掉线

原因:网页版不稳定,微信随时可能踢人

解决

  • 开启自动重连
  • 减少同时登录设备
  • 使用企业微信方案

Q3: 收不到群消息

排查步骤

  1. 确认Bot被添加到群里
  2. 检查是否被群主禁言
  3. 确认@关键词配置正确
  4. 查看日志:tail -f ~/.openclaw/state/logs/channels.log

Q4: 提示"操作太频繁"

原因:触发了微信风控

解决

  • 降低消息频率(每分钟不超过5条)
  • 停止操作休息1-2小时
  • 避免发送敏感词

进阶:消息处理自定义

你可以通过编写处理脚本来自定义微信消息的行为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// ~/.openclaw/plugins/wechat/handler.js
module.exports = async (message, context) => {
// 自定义回复逻辑
if (message.text.includes('天气')) {
// 调用天气查询
return await getWeather(message.location);
}

if (message.text.includes('翻译')) {
// 调用翻译
return await translate(message.text);
}

// 其他消息交给OpenClaw处理
return null;
};

下节预告

下一讲快速浏览其他通道:Slack、iMessage、飞书、钉钉等,按需选择。

👉 继续阅读:第11讲-其他通道速览


💬 加入学习交流群

微信接入问题?加群交流:

👉 点击加入交流群


推荐:AI Python编程实战营

🎁 限时福利:送《利用Python进行数据分析》实体书

👉 点击了解详情


---## 📚 完整学习路线这是OpenClaw入门课程的第X讲。查看完整课程大纲:👉 **OpenClaw入门课程大纲**课程包含30讲,从安装部署到实战项目,带你全面掌握OpenClaw。

课程导航

上一篇: 第9讲-Discord通道连接与Slash命令

下一篇: 第11讲-其他通道速览


PS:微信接入虽然麻烦,但对国内用户来说是刚需。建议有条件的话直接使用企业微信方案。


💬 联系我

平台账号/链接
微信扫码加好友
微博@程序员晚枫
知乎@程序员晚枫
抖音@程序员晚枫
小红书@程序员晚枫
B 站Python 自动化办公社区

主营业务:AI 编程培训、企业内训、技术咨询

🎓 AI 编程实战课程

想系统学习 AI 编程?程序员晚枫的 AI 编程实战课 帮你从零上手!