wa-automate-nodejs  by open-wa

WhatsApp automation API and chatbot framework

Created 6 years ago
3,582 stars

Top 13.3% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides a robust Node.js solution for automating WhatsApp, enabling users to connect accounts, expose them as APIs, and build advanced chatbots and integrations. It targets developers and power users seeking to programmatically interact with WhatsApp, offering flexible approaches from simple API exposure to deep runtime control, thereby enhancing productivity and enabling custom workflows.

How It Works

The project offers three primary interaction models: an Easy API via CLI for quick setup and external service integration, a SocketClient for connecting separate Node.js applications to a running API instance, and an embedded runtime for deep integration and full control over browser automation. v5 utilizes HTTP RPC for commands and Server-Sent Events for runtime updates, providing a modern communication layer. This layered approach allows users to select the complexity and control level that best suits their needs.

Quick Start & Requirements

To start the Easy API:

npx @open-wa/wa-automate --port 8080

This command initiates an API instance with interactive documentation. For contributors, Node.js >=22.21.1 and pnpm >=10.25.0 are recommended. Docker is also supported for local testing.

Relevant documentation links:

Highlighted Details

  • AI-Agent Integration (MCP): Exposes Easy API methods as discoverable tools for AI agents (e.g., Claude, Cursor) via a Model Context Protocol server, simplifying AI-driven automation.
  • Extensible Plugin System: Supports custom integrations and plugins (e.g., Chatwoot, Webhook, Cloudflare Session Proxy) via npm packages or local file paths.
  • Cloudflare Session Proxy: Facilitates secure remote session access without exposing local ports by leveraging Cloudflare Workers.
  • v5 Alpha Status: The current v5 release is in alpha, requiring careful testing, especially for migrating mature v4 systems.

Maintenance & Community

The project maintains an active community on Discord (https://discord.gg/dnpp72a) and provides comprehensive documentation at https://docs.openwa.dev/. Paid support and consulting services are available.

Licensing & Compatibility

The software is released under the "Hippocratic + Do Not Harm Version 1.0" license. It is explicitly stated as unofficial and not affiliated with WhatsApp or Meta, and users agree to the Terms of Service upon use. Cryptographic software is included, subject to export regulations (ECCN 5D002.C.1).

Limitations & Caveats

The v5 release is currently in alpha, and users are advised to use explicit commands and test thoroughly before deploying to production. The project is unofficial and carries inherent risks associated with interacting with WhatsApp's platform. Sharing plugins currently relies on standard npm package publishing rather than a dedicated marketplace.

Health Check
Last Commit

4 days ago

Responsiveness

Inactive

Pull Requests (30d)
3
Issues (30d)
9
Star History
138 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.