@aria-cli/gateway-whatsapp
v1.0.80
Published
Optional WhatsApp adapter for ARIA — pairs a Baileys bridge subprocess with the @aria-cli/gateway ChannelAdapter contract. Pulls Meta's unofficial Web protocol into isolated opt-in territory.
Maintainers
Readme
@aria-cli/gateway-whatsapp
Optional WhatsApp adapter for ARIA. Pairs a Baileys-backed subprocess
bridge with the @aria-cli/gateway ChannelAdapter contract, so the
unofficial WhatsApp Web protocol never enters the core ARIA binary.
Why a bridge subprocess
- ✅ Core binary stays lean — Baileys pulls ~35 MB of deps
- ✅ Legal/ToS risk stays opt-in — users install this package knowingly
- ✅ Swappable backend — same NDJSON protocol can front Baileys today,
whatsapp-web.jsor Meta Cloud API later, without touching consumers - ✅ Crash isolation — bridge can OOM without taking ARIA down
Install
# Runtime deps (user installs — we don't ship them)
npm install -g @whiskeysockets/baileys qrcode-terminal
# Then the adapter
npm install -g @aria-cli/gateway-whatsappUse from ARIA
aria gateway channels enable whatsapp
aria gateway start
# A QR code renders in the terminal on first pair.Session storage
By default, pairing state lives under
~/.aria/gateway/whatsapp/default/. Pass --session <dir> to
aria-whatsapp-bridge to use a different location.
Protocol (stable)
Line-delimited JSON over the bridge's stdio. Events (bridge → adapter):
| kind | payload |
|---|---|
| hello | { protocolVersion, bridgeVersion } |
| qr | { qrAscii, qrDataUrl? } |
| ready | { jid, phoneNumber? } |
| disconnected | { reason, reconnectSeconds? } |
| error | { message } |
| message | { chatId, senderId, senderName?, isGroup, mentioned, text, timestamp, messageId } |
| ack | { correlationId, ok, error? } |
Commands (adapter → bridge): send, logout, ping (all carry
correlationId for ack-matching).
Legal notice
The bridge uses Baileys, which implements WhatsApp's private Web protocol. WhatsApp's ToS prohibits unofficial clients in certain commercial contexts. This package is provided for personal, experimental, and self-hosted use. For production commercial use, prefer the Meta Cloud API adapter (roadmap).
License
Proprietary. See the root LICENSE for terms. For licensing inquiries: [email protected].
