让微信自动回复:wechat-bot 智能机器人新手完整指南
2026/9/15 17:17:57 网站建设 项目流程

让微信自动回复:wechat-bot 智能机器人新手完整指南

【免费下载链接】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.项目地址: https://gitcode.com/GitHub_Trending/we/wechat-bot

wechat-bot 是一个基于 WeChaty 框架的微信机器人项目,接入 ChatGPT、DeepSeek、Kimi 等 12 种 AI 服务。扫码登录微信后,它可以自动回复白名单好友和群聊的消息,还能查询本地微信数据、分析群聊活跃度。

什么时候你需要一个微信机器人

先说几个真实会遇到的场景,对号入座:

  • 群里总有人问重复问题。项目群、答疑群里,同一个配置问题一天被问五遍。让机器人在白名单群里被 @ 时自动接话,你腾出手干正事。
  • 群太多,顾不上谁活跃。几十个群每天滚动几百条消息,你想知道哪个群最活跃、谁是高频发言者——它能把本地记录的聊天记录拉出来做统计和深度分析。
  • 海外模型用不了、不想用。OpenAI 的 API 要海外信用卡,还要稳定的网络环境。它同时支持 Ollama(本地跑的模型,不依赖网络)和多家有免费额度的国内服务,门槛低很多。

只要命中其中一条,往下走四步就能跑起来。

微信机器人部署步骤:4步跑起来

环境要求:Node.js v18.0 或更高版本,建议用 LTS 版,版本太低会直接报错。

第 1 步:获取项目代码

git clone https://gitcode.com/GitHub_Trending/we/wechat-bot cd wechat-bot

第 2 步:安装依赖。大陆网络环境下如果下载慢或卡住,可以先切到淘宝镜像源(npm config set registry https://registry.npmmirror.com)再执行:

npm i

第 3 步:准备配置文件,把示例配置复制成实际使用的.env,再填入你的白名单和 API 密钥:

cp .env.example .env

最小可用的几项配置:

BOT_NAME='@你的微信昵称' ALIAS_WHITELIST='好友备注1,好友备注2' ROOM_WHITELIST='群名1,群名2'

第 4 步:启动并扫码。可选执行npm linkwb注册成本机命令(不执行的话,所有wb命令都可以用npm run start --替代):

npm link wb agent --im wechat --agent pi

终端出现二维码后,用微信扫一下,登录完成。之后收到的白名单消息会走这条链路:Wechaty 收消息 → 本地存储 → AI 服务生成回复 → 发回微信。

能力全景:按使用频率分组

每天都会用的:自动回复链路

私聊只有ALIAS_WHITELIST里的好友会触发;群聊要求群名在ROOM_WHITELIST中,且消息里 @ 了BOT_NAME。非文本消息(图片、语音)不会进入回复链路,这一点在配置前要知道。回复"大脑"用--serve参数切换,当前共 12 种可选:

wb start --serve ollama wb start --serve deepseek wb start --serve ChatGPT

12 种服务包括 ChatGPT、doubao(豆包)、deepseek、Kimi、Xunfei(科大讯飞)、deepseek-free、302AI、dify、ollama、tongyi(通义)、claude、pi。免费额度方面,讯飞每个模型有 200 万免费 token,豆包每个模型有 50 万免费 token;Ollama 则完全在本地跑,OLLAMA_URL指向http://127.0.0.1:11434/api/chat即可。

不花一分钱 token 的:本地数据查询

通过wb wx ...命令(底层透传 OpenCLI 的wx-cli)访问本机微信缓存,不需要配置任何大模型:

wb wx sessions # 最近会话 wb wx history # 聊天记录 wb wx members # 群成员 wb wx sns-feed # 朋友圈缓存 wb wx stats # 聊天统计

聊天里直接下命令

白名单内的聊天窗口可以直接发指令:/统计 群 群名只读本地记录出统计结果,不调 AI;/分析 好友 好友备注会取最近消息样本交给当前模型做深度分析。涉及隐私聊天时,建议用本地模型或本地 Pi 配置。

延伸场景

飞书也接入了 CLI 通道:wb lark loginwb lark messageswb lark searchwb lark send支持登录、读、搜、发消息,但暂不做实时自动回复。Docker 部署方式见 Dockerfile。

白名单配置方法:.env 关键项

自动回复不是"来者不拒",而是靠.env精确控制,这也是很多人"跑了却没回复"的根源:

配置项作用注意点
BOT_NAME机器人在群里的称呼必须带@,如@可乐,群聊靠它识别 @
ALIAS_WHITELIST私聊白名单填好友备注或昵称,英文逗号分隔
ROOM_WHITELIST群聊白名单只回复列表内的群
AUTO_REPLY_PREFIX前缀触发(可选)配了之后,消息需匹配该前缀才回复,适合"大号不想被每次 @ 都触发"的场景
WECHAT_DATA_DIR消息落盘目录默认.data/wechat,消息逐条追加到messages.jsonl
WECHAT_STORE_MESSAGES是否记录消息设为false可停止存储

接入 Pi 作为 agent 时还有PI_BINPI_AGENT_ARGS(默认--print --no-session),本机没有pi命令时把PI_BIN留空,项目会改用npx临时调起。

想改行为逻辑时,优先看这两处源码:消息分发在 src/wechaty/sendMessage.js,聊天内置命令的解析在 src/platforms/wechat/commandRouter.js。把微信接成 Pi 的完整说明在 docs/pi-im-agent.md。

常见问题与避坑

现象:启动后扫码成功,但发消息没有回复解法:逐项核对三件事——BOT_NAME是否带了@、私聊对象/群名是否在白名单里、群消息是否 @ 了机器人。启动时如果缺配置,终端会明确提示缺哪个变量(比如OPENAI_API_KEY),照提示补上即可。

现象:npm i卡在 puppeteer 下载解法:设置环境变量跳过浏览器下载,然后重装依赖:

export PUPPETEER_SKIP_DOWNLOAD='true'

现象:云端模型请求超时、调不通解法:确认三要素——API Key 正确、账户有余额、终端网络能访问该服务(必要时给终端单独配代理)。不想折腾网络,就换本地 Ollama 或有免费额度的国内服务。

现象:收到微信"外挂警告",担心封号解法:项目默认走免费的 Web 协议,微信目前审查严格,这是已知的最大风险。建议只用能接受风险的账号、少频繁登录登出、收紧白名单控制回复范围,或按 README.md 提示切换更稳定的协议。

现象:讯飞配了 key 还是不回复解法:讯飞需要三个变量同时填对——XUNFEI_APP_IDXUNFEI_API_KEYXUNFEI_API_SECRET,填反是最常见的坑。

验证环节可以跑npm run test:analysis检查本地分析模块,用node ./cli.js --help确认 CLI 正常。

写在最后

wechat-bot 的定位很直接:一条命令把微信接上 AI,自动回复、群聊分析、本地数据查询一次到位。适合想让机器人替自己盯群、答问、做统计的个人用户,以及想在此基础上扩展业务的开发者。更多细节和最新能力,直接读项目内的 README.md 和 docs/pi-im-agent.md 即可。

【免费下载链接】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.项目地址: https://gitcode.com/GitHub_Trending/we/wechat-bot

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询