Files
nanoclaw/.claude/skills/add-whatsapp-cloud-v2/SKILL.md
gavrielc 12af451069 v2: add Chat SDK channel adapters and skills for 11 platforms
Thin wrapper adapters + SKILL.md for Slack, Telegram, GitHub, Linear,
Google Chat, Teams, WhatsApp Cloud API, Resend, Matrix, Webex, iMessage.
All follow the same pattern as discord-v2.ts: readEnvFile → create*Adapter
→ createChatSdkBridge → registerChannelAdapter.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 11:26:33 +03:00

2.4 KiB

name, description
name description
add-whatsapp-cloud-v2 Add WhatsApp Business Cloud API channel to NanoClaw v2 via Chat SDK. Official Meta API (not Baileys).

Add WhatsApp Cloud API Channel (v2)

This skill adds WhatsApp support via the official Meta WhatsApp Business Cloud API. This is different from the Baileys-based WhatsApp adapter (which uses WhatsApp Web protocol).

Phase 1: Pre-flight

Check if src/channels/whatsapp-cloud-v2.ts exists and the import is uncommented in src/channels/index.ts. If both are in place, skip to Phase 3.

Phase 2: Apply Code Changes

Install the adapter package

npm install @chat-adapter/whatsapp

Enable the channel

Uncomment the WhatsApp Cloud API import in src/channels/index.ts:

import './whatsapp-cloud-v2.js';

Build

npm run build

Phase 3: Setup

Create WhatsApp Business App

  1. Go to Meta for Developers and create an app (type: Business)
  2. Add the WhatsApp product
  3. Go to WhatsApp > API Setup:
    • Note the Phone Number ID (not the phone number itself)
    • Generate a permanent System User access token with whatsapp_business_messaging permission
  4. Go to WhatsApp > Configuration:
    • Set webhook URL: https://your-domain/webhook/whatsapp
    • Set a Verify Token (any random string you choose)
    • Subscribe to webhook fields: messages
  5. Copy the App Secret from Settings > Basic

Configure environment

Add to .env:

WHATSAPP_ACCESS_TOKEN=your-system-user-access-token
WHATSAPP_PHONE_NUMBER_ID=your-phone-number-id
WHATSAPP_APP_SECRET=your-app-secret
WHATSAPP_VERIFY_TOKEN=your-verify-token

Sync to container: mkdir -p data/env && cp .env data/env/env

Build and restart

npm run build
launchctl kickstart -k gui/$(id -u)/com.nanoclaw  # macOS
# systemctl --user restart nanoclaw  # Linux

Phase 4: Verify

Send a message to your WhatsApp Business number. The bot should respond within a few seconds. Note: WhatsApp Cloud API only supports 1:1 DMs, not group chats.

Removal

  1. Comment out import './whatsapp-cloud-v2.js' in src/channels/index.ts
  2. Remove WHATSAPP_ACCESS_TOKEN, WHATSAPP_PHONE_NUMBER_ID, WHATSAPP_APP_SECRET, WHATSAPP_VERIFY_TOKEN from .env
  3. npm uninstall @chat-adapter/whatsapp
  4. Rebuild and restart