
wechat-bot 实战教程30 分钟从零搭出微信机器人自动回复【免费下载链接】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-botwechat-bot 是一个基于 Wechaty 的开源 IM 机器人项目用机器人账号扫码登录微信后可以把群消息和私聊消息交给 DeepSeek、Ollama、ChatGPT 等大模型自动应答还能顺手做群聊统计和好友活跃度分析。如果你第一次接触微信机器人开发跟着本文操作大约 30 分钟就能跑通一次完整的微信机器人自动回复链路。它解决的是什么问题先说三个最常见的场景看看你是否中招客户群、项目群里有十几个别人 你的问题要隔天才看到回复已经冷场同一个问题被反复问你手动复制粘贴答案重复劳动想知道群里谁是活跃成员、讨论集中在什么话题却没有任何数据可依wechat-bot 的思路是给微信配一个 7×24 小时不下班的值班员。它守在一条固定的值班台上每条消息进来都先查访客证白名单只有授权的消息才会被转给大模型拟稿再把回复发回原群或原会话。你本人不需要在线。适合场景客服群值守、开发者答疑群、内部技术群的值班机器人。消息流转全流程值班员如何接待一条消息先看整体链路再动手就不容易迷路微信消息到达 → 查访客证私聊查 ALIAS_WHITELIST / 群聊查 ROOM_WHITELIST → 群消息还必须 机器人BOT_NAME否则忽略 → 消息以 /统计 /分析 开头走本地统计或 AI 分析分支 → 普通消息交给 --serve 指定的模型服务拟稿 → 回复发回原群或原会话同时消息落盘 .data/wechat/messages.jsonl注意最后一步落盘所有收到的消息都会追加写入本地 JSONL 文件后面的群聊统计分析全靠这份数据。先记账、后办事是这套链路设计里最值得学的一点。技术栈一览每一层只干一件事技术用途为什么选它Wechaty微信协议封装、消息收发事件驱动协议层和业务层解耦wechaty-puppet-wechat4u网页版协议驱动扫码登录免费开箱即用无需采购付费协议Node.js≥ 18运行时项目硬性要求建议直接用 LTS--serve 模型服务DeepSeek / Ollama / ChatGPT 等一个参数切换大脑业务代码不用改环境准备开始之前核对 3 件事第一步确认 Node 版本第二步拉取代码第三步装依赖node -v # 必须 18 git clone https://gitcode.com/GitHub_Trending/we/wechat-bot cd wechat-bot npm config set registry https://registry.npmmirror.com npm i npm link # 可选之后可用 wb 命令代替 npm run start⚠️ 避坑node -v显示 16 及以下 → 项目语法不兼容会直接报错 → 升级到 Node 18 LTS 后重新安装依赖。 ⚠️ 避坑npm i卡在 puppeteer 下载 → 默认下载源访问不到 → 设置PUPPETEER_SKIP_DOWNLOADtrue再装一次。.env 白名单配置照抄这份最小模板复制一份配置文件只改下面几个字段就能启动BOT_NAME可乐 ALIAS_WHITELIST好友备注1,微信名2 ROOM_WHITELIST测试群1,测试群2 AUTO_REPLY_PREFIX DEEPSEEK_API_KEY你的key WECHAT_STORE_MESSAGEStrue几个关键字段BOT_NAME机器人账号的微信昵称必须带前缀群聊靠它识别 ALIAS_WHITELIST/ROOM_WHITELIST私聊和群聊的准入名单用半角逗号分隔AUTO_REPLY_PREFIX可选。填了之后只有带该前缀的消息才触发自动回复适合用大号、不想被每条 都唤醒的场景DEEPSEEK_API_KEY本次教程选 DeepSeek 当大脑换模型时只改这一个块⚠️ 避坑BOT_NAME忘了写→ 群消息识别不出 永远不回复 → 补上再试。 ⚠️ 避坑白名单第二项不生效 → 逗号后打了空格或用了全角逗号 → 全部改成半角逗号且不留空格。扫码登录与启动3 步看到回复执行启动命令选择 DeepSeek 作为模型服务wb start --serve deepseek # 没执行 npm link 的话等价写法 npm run start -- start --serve deepseek终端会打印一张二维码用机器人账号的微信扫码。登录成功后触发规则如下场景触发条件私聊对方备注或微信名在ALIAS_WHITELIST里群聊群名在ROOM_WHITELIST里且消息 了机器人/统计/分析命令仅对白名单内的群或好友生效在测试群里发一句可乐 帮我总结一下这个群最近在聊什么机器人调用模型后会把答复发回群里。⚠️ 避坑登录后发消息没反应 → 绝大多数是白名单问题 → 优先核对BOT_NAME格式和群名是否与微信里显示的群名一字不差。这套白名单 触发的组合拳适合客服群、答疑群这类希望机器人只接点名消息的场景如果只是私人小号自娱自乐把AUTO_REPLY_PREFIX留空即可全量应答。群聊统计与深度分析让值班员交出报表消息落盘后你随时可以从两个入口拿数据# 群里直接发命令 /统计 群 测试群1 /分析 好友 某好友备注 # 或命令行纯本地统计不调用 AI、不花钱 wb analyze --room 测试群1 --stats-only/统计只读本地 JSONL输出消息数、文本数、高频发言成员/分析会把最近消息样本交给当前--serve服务生成定性总结。适合运营复盘、判断群活跃度、或者给新接手的项目群快速摸底。命令的解析逻辑集中在 commandRouter.js想加自己的群管理指令可以从这里入手。Docker 部署上线把值班台搬进容器项目自带 Dockerfile构建和运行各一条命令docker build . -t wechat-bot docker run -d --rm --name wechat-bot \ -v $(pwd)/.env:/app/.env wechat-bot成本与配置参考方案建议配置成本适合本地机器 / 家用 NAS2 核 4G一次性开发调试、低活跃群云轻量服务器1 核 2G约 90 元/年24 小时值守、长期在线⚠️ 避坑构建时 node 基础镜像反复下载超时 → 网络拉不动官方镜像 → 先docker pull一个本地 node 镜像再把 Dockerfile 的 FROM 改成它。提醒一句微信网页协议存在风控官方 README 也明确提示了封号风险。上线前请把白名单范围压到最小尽量用可接受风险的账号跑。不生效时先查这三处按命中率排序的排查清单Node 版本是否 ≥ 18、依赖是否装全删node_modules重装一次BOT_NAME、两个白名单、AUTO_REPLY_PREFIX是否都符合预期群名是否一字不差云端模型的 key、余额、网络可达性本地 Ollama 则检查OLLAMA_URL完整配置项以 .env.example 为准消息判定与回复的主逻辑在 sendMessage.js微信搭配 Pi 作为 agent 的进阶用法可参考 Pi IM 使用说明。进阶方向与学习资源跑通之后推荐沿这三个方向继续换本地大脑把--serve切到ollama聊天记录不出本机隐私更可控改接待策略调整defaultMessage里的触发条件比如按时间段只回复特定前缀接更多入口项目内置飞书 CLI 通道wb lark login可先把飞书当备用值班台学习资源Wechaty 官方文档、本仓库 README 的常见问题章节、以及上文给出的三个源码文件足够支撑你改出第一版自己的业务逻辑。如果你不想为每家模型分别申请 key也可以用 API 聚合平台统一对接配置方式与直连一致【免费下载链接】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),仅供参考