项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-09-14 · 当前星标 ★ 3676
技术标签
使用教程
环境要求
- Node.js 环境(可直接运行 npx 命令;参与仓库开发需 Node.js >=22.21.1)
- 一个可登录的 WhatsApp 账号(首次启动需扫码或使用链接码登录)
- 使用 Docker 方式需已安装 Docker
- 参与 monorepo 开发需 pnpm 11.15.1(工具链由 mise.toml 固定)
安装与启动步骤
-
1选择合适版本
v5 仍是 alpha 版本可能有问题,成熟的 v4 生产系统请留在 4.76.0,仅在测试或贡献 v5 时使用 alpha。
-
2启动 Easy API
运行 CLI 会启动 Easy API 实例并触发首次认证流程,同时为当前会话暴露交互式文档。
npx @open-wa/wa-automate@alpha --port 8080 -
3完成登录认证
按运行时提示认证:扫描终端打印的二维码,或改用适合你的链接码登录方式。
-
4打开接口文档验证
会话连接后访问 api-docs 页面,能看到交互文档即说明会话已上线、API 可访问。
-
5多会话与鉴权
若要跑多个账号,尽早指定 session-id;对暴露到本机之外的 API 建议加 api-key 保护。
npx @open-wa/wa-automate@alpha --session-id sales --port 8081 -
6用配置文件启动
同目录下新建 wa.config.mjs,写入 apiKey、port 与 mcp 配置,再通过 --config 参数加载启动。
WA_API_KEY="your-secure-key" npx @open-wa/wa-automate@alpha --config ./wa.config.mjs -
7Docker 方式运行
拉取 openwa/wa-automate 镜像并映射 8080 端口,加 --init 让初始化进程清理僵尸进程。
docker run -p 8080:8080 --init openwa/wa-automate -
8嵌入式运行时
需要自己掌控浏览器驱动与生命周期时,安装核心包与驱动包,在代码中调用 createClient。
npm install @open-wa/wa-automate @open-wa/driver-puppeteer
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
sessionId | 否 | 会话标识,可能运行多个账号时建议尽早设置 | sales |
apiKey | 否 | 保护 API,暴露到本机之外前应配置 | your-secure-key |
port | 否 | Easy API 监听端口 | 8080 |
mcp.enabled | 否 | 启用 MCP,v5 只能通过配置文件开启 | true |
mcp.path | 否 | MCP 服务挂载路径 | /mcp |
headless | 否 | 嵌入式运行时是否无头启动浏览器 | true |
如何确认成功
访问 http://localhost:8080/api-docs/ ,页面正常显示交互文档即表示会话已连接、API 可访问。
常见问题
Q:该用 v5 还是 v4?
A:v5 目前是 5.0.0-alpha.0,仍可能出问题。生产系统请留在稳定版 4.76.0,只有在测试或为 v5 做贡献时才用 alpha。
Q:CLI 上的 --webhook 和 --mcp 参数好用吗?
A:v5 alpha 会解析 --webhook 但会警告未恢复 CLI 注册能力,该参数不会启用投递;--mcp 在当前源码中不被解析,两者都需要在 wa.config.* 中配置。
Q:怎样给 API 加鉴权?
A:启动时加 --api-key "your-secure-key",或在 wa.config.mjs 中设置 apiKey,再对暴露到本机外的实例使用。
Q:Docker 运行时怎么固定版本?
A:通过环境变量 W_A_V 指定库版本,例如 docker run 时加 -e W_A_V=4.42.1。
Q:怎么跑多个 WhatsApp 账号?
A:为每个实例指定不同的 --session-id,并注意使用不同端口,例如 sales 用 8081。
注意事项
- 本项目为非官方项目,与 WhatsApp、Meta 无关联,使用风险自负,使用即表示同意其服务条款。
- v5 为 alpha 版本,建议先在可丢弃的环境中测试,再接入重要系统。
- Docker 方式适合本地测试或一次性的首次运行,除非同时做好会话持久化规划。
- 旧文档或示例提到的部分参数可能已过时,请以你实际运行版本验证过的参数集为准。
核心亮点
- 封装了 WhatsApp Web 协议,提供简洁的 TypeScript API,降低开发门槛
- 支持事件监听、Webhook 和 REST API,方便与现有系统集成
- 内置会话保持、自动重连和反封禁策略,提升稳定性
不足之处
- 依赖 WhatsApp Web 非官方接口,存在账号被封禁的风险
- 部分高级功能需要付费授权或商业许可
适用场景
- 电商客服自动回复与订单通知
- 社群运营中自动欢迎新成员、关键词触发回复
- 企业内部通过 WhatsApp 发送告警和审批提醒
替代项目
Baileys、whatsapp-web.js
上一篇:EVE-Online-Bot
下一篇:oh-my-taiyiforge
同类项目推荐
Automation-workflow
开源
一站式 React Flow 工作流示例集,快速搭建可视化自动化界面
React flow Examples with Workflow automations and others examples in one repo.
hwatu
开源
让 AI 代理秒级验证界面,卡壳时一键转人工。
Headless verification browser for AI coding agents: 35 ms one-call checks, pixel dif···
neo
开源
把网页变成 API,让 AI 直接调用
Turn any web app into an API. Chrome extension captures browser traffic, auto-genera···
n8n-workflow-builder
开源
用自然语言对话,让 AI 帮你自动搭建 n8n 工作流
AI assistant integration for n8n workflow automation through Model Context Protocol ···
webdriverio
开源
一套 API 跑通浏览器和手机自动化测试
Next-gen browser and mobile automation test framework for Node.js
agent-tui
开源
让 AI 代理像人一样操作任何终端程序
TUI automation for AI agents. Control any terminal app from code.
magic
开源
一个平台搞定 AI 智能体、工作流和团队协作
Magicrew. The first open-source all-in-one AI productivity platform (Generalist AI A···
claude-telegram-supercharged
开源
在 Telegram 里 24 小时语音指挥 Claude Code 写代码
Run Claude Code 24/7 from Telegram. Drop-in upgrade for the official plugin: voice n···
awesome-n8n-templates
开源
海量现成 n8n 工作流,检索即导入,省去从零搭建
The largest open-source collection of n8n workflow templates — 8,697+ ready-to-impo···
