十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

30 分钟跑通微信机器人:wechat-bot 实现 AI 自动回复与群聊分析

30 分钟跑通微信机器人:wechat-bot 实现 AI 自动回复与群聊分析 30 分钟跑通微信机器人wechat-bot 实现 AI 自动回复与群聊分析【免费下载链接】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 的微信 AI 机器人项目扫码登录微信后它能用 Ollama、DeepSeek、ChatGPT 等 AI 服务自动回复白名单内的私聊和群聊消息同时把每条消息捕获成本地记录供你随时做群聊统计和 AI 深度分析。下面这份教程带你在一台自己的电脑上把完整链路跑通。先从一个真实场景说起你运营着一个几百人的产品交流群用户半夜提问没人接你想知道本周谁话最多、大家在聊什么又不想把聊天记录上传到别处。wechat-bot 做的事情就是机器人账号扫码进群后被 的消息交给本地或云端的 AI 回答所有消息同时写进一份本地账本你随时可以查账、出报表。 一眼看懂 wechat-bot一家 IM 前台公司这个项目可以想象成一家 24 小时营业的IM 前台公司Wechaty 是前台负责登录微信、收发每一条消息你配置的白名单是门禁名单只有名单上的人私聊好友或群被 的群聊才能进入接待流程messages.jsonl是公司的记账本每条消息都落一笔你选择的 AI 服务Ollama、DeepSeek 等是后援团队前台把问题转给后援后援的回答再由前台发回微信而wb analyze是记账部门它只读账本、不打电话专门输出统计报表和深度分析。主要技术选型如下技术作用备选方案Wechaty wechaty-puppet-wechat4u微信协议层负责扫码登录、收发信wechaty-puppet-wechatpad 协议更稳但需付费dotenv加载.env环境变量直接读 process.envqrcode-terminal在终端画出登录二维码qrcode 图形库commander解析wb命令行参数yargsOllama本地模型服务无需 API Key 和代理DeepSeek / ChatGPT / Claude 等云端服务1️⃣ 安装依赖并注册 wb 命令目的让项目装好依赖并把 cli.js 暴露成全局的wb命令。操作确认 Node 版本后克隆、安装node -v # 必须 v18建议用 LTS 版 git clone https://gitcode.com/GitHub_Trending/we/wechat-bot cd wechat-bot npm i npm link # 注册 wb 命令国内网络如果npm i卡住可先执行npm config set registry https://registry.npmmirror.com再重试。预期结果执行node ./cli.js --help能看到start、agent、analyze、wx、lark等子命令列表。执行wb --help应有相同输出。你可能会问npm link是必须的吗不是。它只是把wb变成全局命令图省事而已。跳过它的话下文所有wb xxx都可以写成npm run start -- xxx。2️⃣ 配置 .env设置门禁名单和后援团队目的告诉机器人谁能触发它、谁来回答它。操作复制模板并编辑cp .env.example .env以本地 Ollama 为例无需 API Key最适合第一次跑通最小可用配置BOT_NAME你的机器人微信昵称 ALIAS_WHITELIST好友备注1,好友备注2 ROOM_WHITELIST群名1,群名2 AUTO_REPLY_PREFIX WECHAT_DATA_DIR.data/wechat WECHAT_STORE_MESSAGEStrue OLLAMA_URLhttp://127.0.0.1:11434/api/chat OLLAMA_MODELqwen2.5:7b OLLAMA_SYSTEM_MESSAGEYou are a personal assistant.逐项说明配错会怎样BOT_NAME→ 机器人账号的微信昵称必须带。配错后果群聊靠昵称触发昵称对不上就等于永远无法触发回复。ALIAS_WHITELIST→ 允许私聊触发的备注或昵称英文逗号分隔。配错后果不在名单里的人私聊机器人消息只记账不回复。ROOM_WHITELIST→ 允许接入的群名必须和群名称逐字一致。配错后果该群所有消息不进入回复链路但依然记账。AUTO_REPLY_PREFIX→ 可选的前缀过滤空串表示不生效填了之后只有以该前缀开头的消息才回复适合大账号不想被每条 都触发的场景。WECHAT_DATA_DIR→ 账本目录。配错后果wb analyze到错误路径找记录分析结果为空。WECHAT_STORE_MESSAGES→false时停止记账之后的群聊分析将无数据可用建议保持true。OLLAMA_URL/OLLAMA_MODEL→ 本地 Ollama 的地址与模型名。配错后果机器人正常收消息但 AI 调用报错、不回复。如果用云端服务改换对应配置即可比如 DeepSeek 填DEEPSEEK_API_KEYChatGPT 填OPENAI_API_KEY具体变量名参考 README.md 中支持的回复 / Agent 服务一节。3️⃣ 扫码登录验证自动回复链路目的让前台 → 账本 → 后援整条链路转起来。操作wb start --serve ollama预期结果分三步观察终端打印出一枚二维码用机器人账号的微信扫码终端出现has logged in说明前台已就位到白名单群里发一条你的机器人微信昵称 今天天气怎么样几秒后机器人在群里回复再让ALIAS_WHITELIST里的朋友私聊发一句同样收到回复。此时打开.data/wechat/messages.jsonl应能看到刚发的消息以 JSON 一行一条追加进去——账本在正常记账。触发规则只有一条判断标准记不住就回头看这里私聊发消息人的备注或昵称在ALIAS_WHITELIST中群聊群名在ROOM_WHITELIST中且消息里真正了BOT_NAME非文本消息图片、语音等不进入回复链路只记账。一个必须知道的风险提示默认使用的免费 Web 协议wechaty-puppet-wechat4u存在被微信风控甚至封号的可能README 中有明确警告。请只在自己能接受风险的账号上使用并保持白名单尽量小。4️⃣ 查账与出报表群聊统计和深度分析目的确认捕获的数据可用并生成群聊分析。操作统计和分两步走# 第一步纯本地统计不调用 AI wb analyze --room 群名1 --stats-only # 第二步交给 AI 做深度分析 wb analyze --room 群名1 --serve ollama预期结果终端输出消息总数、文本消息数、平均长度、高频发言者等统计第二步还会输出结构化的中文分析关键统计、主要话题、互动模式、风险提醒、建议。实现细节可以对照 analysis 模块 和 消息存储模块。除了在终端查账机器人还支持在微信里直接下命令仅对白名单内的人/群生效前缀/可通过BOT_COMMAND_PREFIX调整/统计 群 群名1 /分析 好友 好友备注/统计只读本地账本/分析会把最近消息样本交给当前--serve指定的服务处理隐私聊天时建议优先选 Ollama 这类本地模型。5️⃣ 可选Docker 部署到服务器目的让前台 24 小时在岗。操作docker build -t wechat-bot . docker run -d --rm --name wechat-bot \ -v $(pwd)/.env:/app/.env wechat-bot预期结果容器后台运行docker logs -f wechat-bot中能看到登录二维码扫码后行为与本地完全一致。镜像定义见 Dockerfile。 三个高频故障现象 → 原因 → 修复现象扫码登录成功群里 机器人没有任何反应。原因三个条件缺一不可——BOT_NAME与真实昵称不一致、群名不在ROOM_WHITELIST、消息里没有真正的手动打xx不算必须用微信的 功能。修复逐项核对.env群名做到逐字一致确认消息里 的对象正是机器人账号。现象npm i在 puppeteer 下载 Chromium 阶段长时间卡住或失败。原因浏览器二进制下载在国内网络下容易超时。修复设置export PUPPETEER_SKIP_DOWNLOADtrueWindows 为SET PUPPETEER_SKIP_DOWNLOADtrue后重新npm i项目运行本身不依赖这个下载。现象机器人正常收消息但云端服务DeepSeek、ChatGPT 等不回复。原因API Key 未配置、余额不足或终端无法直连对应服务需要代理。修复先单独验证 Key例如node ./src/deepseek/__test__.js确认可达后为终端设置https_proxy/http_proxy再启动机器人。 进阶路径换后援团队通过--serve在deepseek、claude、dify、ollama、pi等 12 种服务间切换只需在.env里补齐对应服务的 Key 和模型配置消息处理链路本身不用改。读本机微信数据wb wx init之后可以用wb wx sessions、wb wx history、wb wx sns-search直接访问本机微信的会话、聊天记录和朋友圈缓存由 OpenCLI 的 wx-cli 透传实现。多 IM 渠道wb lark login、wb lark send、wb lark messages提供了飞书的登录、读、搜、发通道目前飞书还是 CLI 控制通道尚未接入实时自动回复。完【免费下载链接】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),仅供参考
返回列表