wangrongding /wechat-bot
🤖 Multi-platform IM AI Agent for Telegram, WhatsApp, Lark, and WeChat. Connects ChatGPT / Claude / Kimi / DeepSeek / Ollama / Pi for auto-replies, community analysis, contact management, and inactive-friend detection.
★ 11,522⑂ 1,308👁 63⑃ 48● 240▤ 2
11,522
stars
+0+6+100
1,308
forks
63
watchers
48
prs
240
issues
2
releases
–
discussions
README
WeChat Bot
English | 简体中文
一个基于 Wechaty 的微信 / IM agent 项目。
它可以把微信扫码登录、飞书 IM 事件、Telegram Bot API 轮询或 WhatsApp Cloud API webhook 收到的消息交给 ChatGPT、DeepSeek、Ollama、Claude、Pi 等服务处理;也可以通过 OpenCLI 的 wx-cli 访问本机微信聊天、联系人、群成员、收藏、朋友圈缓存,并对群聊或某个好友做统计和分析。
如果你希望把 Pi 作为本项目的 agent,用微信、飞书、Telegram 或 WhatsApp 作为外部通信渠道,直接看:Pi Agent + IM 使用说明。
赞助商
智谱 AutoClaw · 替你干活的 AI 搭档,一键接入飞书 / 企业微信 / 微信
能力概览
| 能力 | 命令入口 | 当前状态 |
| ------------------------------ | -------------------------------------------------------------------- | -------------------------------------- |
| 微信扫码 IM | wb agent --im wechat --agent pi / wb start --serve pi | 已接入,可扫码登录并回复白名单消息 |
| Pi 作为项目 agent | wb agent --im wechat/lark/telegram/whatsapp --agent pi | 已接入,默认单轮非交互回复 |
| 本地微信聊天 / 联系人 / 群成员 | wb wx sessions、wb wx history、wb wx members | 通过 OpenCLI wx-cli 接入 |
| 本地朋友圈缓存 | wb wx sns-feed、wb wx sns-search | 通过 OpenCLI wx-cli 接入 |
| 群 / 好友分析 | wb analyze --room "群名"、wb analyze --friend "好友备注" | 支持本地统计和 AI 深度分析 |
| 飞书 IM | wb lark login、wb lark messages、wb lark send、wb lark agent | 支持登录、读、搜、发和事件驱动自动回复 |
| Telegram IM | wb telegram agent、wb telegram send | 支持 Bot API 轮询接收和发送 |
| WhatsApp IM | wb whatsapp agent、wb whatsapp send | 支持 WhatsApp Cloud API webhook 收发 |
| 多模型回复 | --serve ChatGPT/deepseek/ollama/pi/... | 复用现有 provider 机制 |
快速开始:Pi + 微信 IM
sh
npm i
cp .env.example .env
npm link
在 .env 中至少配置:
env
BOT_NAME='@你的微信昵称'
ALIAS_WHITELIST='允许私聊你的好友备注'
ROOM_WHITELIST='允许接入的群名'
PI_BIN='pi'
PI_AGENT_ARGS='--print --no-session'
WECHAT_STORE_MESSAGES='true'
启动:
sh
wb agent --im wechat --agent pi
终端出现二维码后,用微信扫码。消息链路是:
text
微信扫码登录 - Wechaty 收消息 - 本地 JSONL 捕获 - Pi agent 回复 - 微信 IM 发回
触发规则:
- 私聊:好友备注或昵称需要在 ALIAS_WHITELIST。
- 群聊:群名需要在 ROOM_WHITELIST,并且消息里需要 @BOT_NAME。
- 非文本消息不会自动进入回复链路。
注意:微信 Web 协议存在风控和封号风险。请只在你明确接受风险的账号和场景中使用,优先控制白名单和使用范围。
贡献者们
欢迎大家提交 PR 接入更多的 ai 服务(比如扣子等...),积极贡献更好的功能实现,让 wechat-bot 变得更强!
注意:最近微信对此审查变得非常严格,使用默认的协议有微信警告或者封号的风险,请大家谨慎使用,关于 padlocal ,这个协议的作者没有继续维护,大家可以自行切换更稳定的协议。
!
支持的回复 / Agent 服务
如果只使用 wb wx ... 访问本地微信数据,或只使用 wb lark ... 操作飞书 IM,可以不配置大模型。
如果要让微信消息自动回复,或执行 wb analyze 深度分析,需要选择一个 --serve 服务。当前可选:ChatGPT、doubao、deepseek、Kimi、Xunfei、deepseek-free、302AI、dify、ollama、tongyi、claude、pi。
- pi
Pi 适合作为项目 agent 使用,可通过微信、飞书、Telegram 或 WhatsApp IM 对外通信:
env
PI_BIN='pi'
PI_NPM_PACKAGE='@earendil-works/pi-coding-agent'
PI_AGENT_ARGS='--print --no-session'
如果本机没有全局 pi 命令,可以先把 PI_BIN 留空,项目会通过 npx --yes @earen