WhatsApp

WhatsApp uses a Node.js bridge that connects via WebSocket. You’ll need Node.js installed.

Setup

  1. Make sure Node.js is installed (node --version)
  2. Link your WhatsApp account:
kyber channels login

This starts the bridge and shows a QR code. Scan it with WhatsApp on your phone (Settings → Linked Devices → Link a Device).

  1. Enable in config:
{
  "channels": {
    "whatsapp": {
      "enabled": true,
      "bridgeUrl": "ws://localhost:3001",
      "allowFrom": ["+1234567890"]
    }
  }
}
  1. Start the gateway:
kyber gateway

Fields

FieldTypeDefaultDescription
enabledboolfalseEnable the WhatsApp channel
bridgeUrlstringws://localhost:3001WebSocket URL of the Node.js bridge
allowFromarray[]Phone numbers allowed to interact (with country code)

How it works

The WhatsApp bridge runs as a separate Node.js process that maintains the WhatsApp Web session. Kyber connects to it over WebSocket. The bridge handles message sending/receiving while Kyber handles the AI responses.

Session persistence

The bridge stores session data locally. Once linked, you don’t need to scan the QR code again unless you unlink the device from your phone.

Security note

The WhatsApp session data in ~/.kyber/ gives full access to your WhatsApp account. Treat the ~/.kyber/ directory as sensitive.