完整教程,从零开始,手把手教你实现微信 AI 机器人
为什么接入微信?
- 用户习惯:中国人都在用微信
- 便捷性:无需打开其他 App,直接在微信聊天
- 自动化:消息自动处理、定时提醒、信息查询
- 隐私:本地运行,数据不外传
方案对比
| 方案 | 优点 | 缺点 |
|---|---|---|
| 企业微信 | 官方支持,稳定 | 需要企业认证 |
| 微信公众号 | 免费,简单 | 功能受限 |
| Web 微信 | 免费,功能全 | 需扫码登录 |
| ComWechat | 功能最强 | 配置复杂 |
本文采用 Web 微信 + OpenClaw 方案。
前置准备
-
OpenClaw 已安装
openclaw --version -
一个微信账号(建议小号测试)
-
Node.js 18+
步骤 1:安装依赖
# 安装 wechaty(微信机器人框架)
npm install wechaty wechaty-puppet-wechat
步骤 2:配置 OpenClaw
编辑 ~/.openclaw/config.yaml:
channels:
- name: wechat
type: wechat
enabled: true
puppet: wechaty-puppet-wechat
步骤 3:创建启动脚本
// wechat-bot.js
const { WechatyBuilder } = require('wechaty');
const bot = WechatyBuilder.build();
bot
.on('scan', (qrcode) => {
console.log('扫码登录:');
require('qrcode-terminal').generate(qrcode, { small: true });
})
.on('login', (user) => {
console.log(`登录成功: ${user}`);
})
.on('message', async (msg) => {
const contact = msg.talker();
const text = msg.text();
// 调用 OpenClaw API
const response = await fetch('http://localhost:3000/api/chat', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ message: text })
});
const reply = await response.json();
await msg.say(reply.text);
});
bot.start();
步骤 4:运行
# 启动 OpenClaw
openclaw start
# 启动微信机器人
node wechat-bot.js
步骤 5:扫码登录
终端会显示二维码,用微信扫码登录。
常见问题
Q: 登录失败?
Web 微信有时会被限制,尝试:
- 换一个微信号
- 等待 24 小时
- 使用企业微信方案
Q: 消息回复慢?
检查:
- 网络连接
- OpenClaw 是否正常运行
- 模型 API 是否超时
Q: 支持群聊吗?
支持!修改消息处理逻辑:
if (msg.room()) {
// 群聊消息
const room = await msg.room();
await room.say(reply.text);
}
进阶功能
1. 指令系统
if (text.startsWith('/')) {
const cmd = text.slice(1).split(' ');
switch (cmd[0]) {
case 'weather':
return getWeather(cmd[1]);
case 'news':
return getNews();
// ...
}
}
2. 定时提醒
const { Schedule } = require('node-schedule');
// 每天 8:00 发送早报
Schedule.scheduleJob('0 8 * * *', async () => {
const contact = await bot.Contact.find({ name: '杨虎' });
await contact.say('早安!今日简报:...');
});
3. 关键词触发
const triggers = {
'天气': getWeather,
'新闻': getNews,
'翻译': translate,
};
for (const [keyword, handler] of Object.entries(triggers)) {
if (text.includes(keyword)) {
return handler(text);
}
}
安全提醒
- 不要发敏感信息(密码、银行卡等)
- 使用小号测试
- 遵守微信使用规范
- 定期检查登录状态
总结
微信接入 OpenClaw 后,你就有了一个:
- 24 小时在线的 AI 助手
- 自动回复的客服机器人
- 定时提醒的私人秘书
- 多功能的查询工具
💬 有问题?评论区留言!
🎯 需要帮助安装?微信:yang1002378395