微信AI代理机器人

多模型AI助手,支持微信内使用,提供WebUI管理、持久化存储和扩展功能。

  • by ChenYCL
  • TypeScript
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 ChenYCL/wechat-agent-bot

使用说明

微信代理机器人

你的AI,在微信中。

微信多模型AI助手,配备WebUI、Skills、MCP工具和持久内存。

简体中文 | 英语

支持的提供商


快速开始 · 特性 · 截图 · 命令 · 部署


问题

你想要一个人工智能助手 微信 --但现有的解决方案需要服务器、复杂的部署或锁定在一个模型上。在GPT-4o和Claude之间切换意味着运行两个机器人。

解决方案

微信代理机器人 通过简单的本地安装将微信连接到任何AI模型。一 npm install,扫描二维码,完成。切换型号 /model,记住重启时的上下文,使用技能和MCP工具进行扩展。

没有这个 有微信代理机器人
多模态 每个模型一个机器人 /model kimi 立即切换
记忆 重启时丢失 SQLite-永久,重启后仍能存活
可扩展性 硬编码 11项技能+MCP生态系统+npm/GitHub插件
管理 编辑配置文件 WebUI位于 localhost:3210
部署 综合体 ./setup.sh && npm run pm2:start

特性

  • 多模态 -OpenAI/Anthropic/Claude代码(本地会话)/Kimi/GLM/MiniMax+任何与OpenAI兼容的API
  • 中继/代理 --每种型号 baseUrl API中继服务
  • Claude代码集成 -重复使用您的本地ClaudeCode订阅,不需要API密钥
  • 流模式 --默认情况下启用,以获得更快的响应
  • WebUI仪表板 --从浏览器管理模型、技能、任务、MCP服务器
  • 11种内置技能 --图像搜索、天气、翻译、总结、记忆、语言偏好
  • SQLite持久性 --对话历史+用户记忆永久存储在 data/bot.db
  • 预定任务 --基于cron、自动发送研究报告等。
  • MCP工具 --搜索MCP注册表,一键安装
  • 第三方插件 --从npm/GitHub/本地目录加载自定义技能
  • 一个命令设置 — ./setup.sh 自动安装Node.js、Python、PM2、所有deps
  • 安全 -API认证、CORS限制、输入验证、密钥屏蔽、原型污染保护

截图

状态 型号
技能与测试 MCP服务器

快速开始

1.安装

git clone https://github.com/ChenYCL/wechat-agent-bot.git
cd wechat-agent-bot

# One-command setup (auto-installs Node.js 22+, PM2, builds WebUI)
./setup.sh

2.配置

vim .env
OPENAI_API_KEY=sk-xxx
OPENAI_BASE_URL=https://api.openai.com/v1   # or your relay URL
OPENAI_MODEL=gpt-4o

中继服务:没有直接API访问权限的用户可以使用 zyai.online --支持OpenAI/Claude/GPT-5,设置 baseUrl 到 https://api.zyai.online/v1.

3.开始

npm run dev    # Development (auto-reload)

用微信扫描二维码。完成。

✅ Connected to WeChat!
WebUI running at http://localhost:3210

三种使用模式

模式1:第三方API密钥 (建议独立部署)

OPENAI_API_KEY=sk-xxx
OPENAI_BASE_URL=https://api.openai.com/v1

模式2:Claude代码本地会话 (重复使用您的订阅)

{ "provider": "claude-code", "model": "sonnet", "apiKey": "local" }

模式3:中国模式 (Kimi/GLM/MiniMax——均兼容OpenAI)

{ "provider": "openai", "model": "moonshot-v1-8k", "baseUrl": "https://api.moonshot.cn/v1" }

微信命令

命令 描述
/help 列出所有命令
/model list 显示可用型号
/model <id> 交换机型号
/lang 中文 设置回复语言
/image cat 搜索并发送图像
/weather Beijing 天气(免费API)
/translate English 你好 通过AI翻译
/summary https://... 总结URL或文本
/remember name Alice 节省内存
/recall 列出所有回忆
/forget name 删除内存
/clear 清晰的对话

建筑

WeChat Message → weixin-agent-sdk → MessageRouter
  ├─ /command → SkillRegistry → Built-in or third-party Skill
  └─ text → MemoryManager (inject context) → ProviderRegistry
       ├─ OpenAIProvider (stream)
       ├─ AnthropicProvider (stream)
       └─ ClaudeCodeProvider (local CLI session)
  → Response sent back to WeChat
wechat-agent-bot/
├── src/
│   ├── index.ts               # Entry point
│   ├── core/                   # Bot lifecycle, router, types
│   ├── providers/              # OpenAI, Anthropic, Claude Code
│   ├── skills/                 # 11 built-in + dynamic loader
│   ├── scheduler/              # Cron task manager
│   ├── mcp/                    # MCP protocol client
│   ├── config/                 # JSON config persistence
│   ├── server/                 # Express API + WebUI static
│   └── utils/                  # SQLite store, logger
├── webui/                      # React + Tailwind SPA
├── tests/                      # 69 tests (unit + E2E + WeChat integration)
├── data/                       # Runtime: bot.db, config.json, logs/
├── ecosystem.config.cjs        # PM2 config
└── setup.sh                    # One-command installer

产量(PM2)

# Start (background, auto-restart on crash)
npm run pm2:start

# View logs
npm run pm2:logs

# Status / restart / stop
npm run pm2:status
npm run pm2:restart
npm run pm2:stop

# Auto-start on boot
pm2 startup && pm2 save
配置 值 注释
日志路径 data/logs/out.log stdout
错误日志 data/logs/error.log stderr
自动重启 开启 延迟5秒,最多重试10次
内存限制 500MB 超过时自动重启

数据目录

data/
├── bot.db          # SQLite (conversation history + memories, permanent)
├── config.json     # Runtime config (models, tasks, MCP)
├── logs/           # PM2 logs
├── media/          # Image cache
└── skills/         # Third-party skill installs

发展

npm run test          # Unit tests (23)
npm run test:e2e      # E2E tests (46, includes WeChat mock server)
npm run test:all      # All 69 tests
npm run dry-run       # Terminal chat without WeChat
npm run webui:dev     # WebUI dev server (port 5173)

API终点

方法 路径 描述
得到 /api/status 系统状态
获取/发布 /api/models CRUD模型
职位 /api/models/:id/activate 设置活动模型
获取/发布 /api/skills 技能管理
职位 /api/skills/install-npm 从npm安装技能
职位 /api/skills/install-github 从GitHub安装技能
获取/发布 /api/tasks 计划任务CRUD
获取/发布 /api/mcp MCP服务器管理
得到 /api/mcp/search?q= 搜索MCP注册表
职位 /api/status/test-message 干运行消息测试
得到 /api/config 配置(密钥被屏蔽)

常见问题

Q: 我需要升级微信吗? 不是。SDK使用OpenClaw长轮询协议。任何可以扫描二维码的微信都可以。

Q: 我需要公共服务器吗? 不是。长轮询模式,在本地运行。

Q: 对话能在重启后继续吗? 对。所有数据都永久存储在 data/bot.db (SQLite)。

Q: 如何使用API中继/代理? 集 baseUrl 在模型配置中添加到您的中继地址。

Q: 如何部署到生产环境? npm run pm2:start + pm2 startup && pm2 save 用于开机自动启动。登录 data/logs/.

Q: 如何备份/迁移? 复制整个 data/ 目录。就这样


简体中文

微信 AI 智能助手 — 一键安装,多模型切换,WebUI 配置,定时任务,记忆系统,MCP 工具集成。

基于 伟信代理商sdk(OpenClaw 协议),本地 npm install 即可运行。

快速开始

git clone https://github.com/ChenYCL/wechat-agent-bot.git
cd wechat-agent-bot
./setup.sh              # 一键安装(自动装 Node.js 22+、PM2、构建 WebUI)
vim .env                # 填入 API Key
npm run dev             # 开发模式启动,扫码连接微信
npm run pm2:start       # 生产模式(后台运行)

功能亮点

  • 多模型 --OpenAI/人类/克劳德代码/Kimi/GLM/MiniMax
  • 中转代理 — 每个模型可配独立 baseURL
  • 11 个内置技能 — 图片搜索、天气、翻译、摘要、记忆、语言偏好
  • SQLite 持久化 — 对话历史 + 用户记忆永久存储
  • WebUI 管理 — 浏览器管理模型、技能、定时任务、MCP
  • 第三方扩展 — npm / GitHub / 本地目录加载自定义 Skill
  • MCP 集成 — 搜索注册表一键安装工具
  • PM2 部署 — 后台运行、自动重启、开机自启

推荐中转:没有海外 API 的用户可使用 zyai.online 中转服务,支持 OpenAI / Claude / GPT-5 等主流模型。

微信命令

命令 说明
/help 查看所有命令
/model list 列出模型
/model <id> 切换模型
/lang 中文 设置回复语言
/image <关键词> 搜索图片发送
/weather <城市> 查天气
/translate <语言> <文本> 翻译
/summary <URL> 网页摘要
/remember <key> <内容> 保存记忆
/recall 查看记忆
/forget <key> 删除记忆
/clear 清空对话

许可证

麻省理工学院 © ChenYCL