Skip to main content

openclaw channels

Manage messaging channel connections and authentication for OpenClaw.

Usage

Commands

list

List configured channels and auth profiles.
boolean
Skip model provider usage/quota snapshots
boolean
Output JSON format

status

Show gateway channel status and health.
boolean
Probe channel credentials and connectivity
number
Timeout in milliseconds (default: 10000)
boolean
Output JSON format

add

Add or update a channel account.

General Options

string
required
Channel type: telegram, discord, slack, signal, whatsapp, imessage, matrix, etc.
string
Account ID (default when omitted)
string
Display name for this account

Telegram/Discord

string
Bot token for Telegram or Discord
string
Path to file containing bot token

Slack

string
Slack bot token (xoxb-…)
string
Slack app token (xapp-…)

Signal

string
Signal account number in E.164 format (+12345678900)
string
Path to signal-cli executable
string
Signal HTTP daemon base URL
string
Signal HTTP daemon host
number
Signal HTTP daemon port

WhatsApp

string
WhatsApp auth directory override

iMessage

string
Path to imsg CLI executable
string
iMessage database path
string
iMessage service: imessage, sms, or auto
string
iMessage region for SMS

Matrix

string
Matrix homeserver URL
string
Matrix user ID
string
Matrix access token
string
Matrix password
string
Matrix device name
number
Matrix initial sync limit

Tlon (Urbit)

string
Tlon ship name (~sampel-palnet)
string
Tlon ship URL
string
Tlon login code
string
Comma-separated list of group channels
string
Comma-separated list of allowed ships for DMs
boolean
Auto-discover group channels

Environment

boolean
Use token from environment variable (default account only)

remove

Disable or delete a channel account.
string
required
Channel name
string
Account ID (default when omitted)
boolean
Delete config entries without prompting

login

Link a channel account (for channels that support interactive authentication).
string
Channel name (default: whatsapp)
string
Account ID
boolean
Verbose connection logs

logout

Log out of a channel session.
string
Channel name (default: whatsapp)
string
Account ID

capabilities

Show provider capabilities (intents/scopes + supported features).
string
Channel name (or “all” for all channels)
string
Account ID (only with —channel)
string
Channel target for permission audit (e.g., Discord channel:id)
number
Timeout in milliseconds (default: 10000)
boolean
Output JSON format

resolve

Resolve channel/user names to IDs.
string[]
required
Names or IDs to resolve
string
Channel name
string
Account ID
string
Target kind: auto, user, or group (default: auto)
boolean
Output JSON format

logs

Show recent channel logs from the gateway log file.
string
Channel name (default: all)
number
Number of lines to show (default: 200)
boolean
Output JSON format

Examples

Some channels (like WhatsApp) require interactive login with openclaw channels login. Others (like Telegram and Discord) use bot tokens that can be added directly.
Never commit or share channel tokens publicly. Store them securely and use environment variables or token files for automation.

Supported Channels

OpenClaw supports these messaging platforms:
  • Telegram - Bot API with token authentication
  • Discord - Bot with token authentication
  • Slack - Bot with app and bot tokens
  • Signal - via signal-cli or HTTP daemon
  • WhatsApp - via WhatsApp Web (requires QR login)
  • iMessage - macOS only, requires database access
  • Matrix - Homeserver with password or token
  • Google Chat - via webhooks
  • Microsoft Teams - via extension
  • Tlon (Urbit) - Ship connection

Configuration

Channel configurations are stored in ~/.openclaw/openclaw.json under the channels section:

Environment Variables

You can use environment variables for tokens:
Then add channels with --use-env:
  • gateway - Manage the gateway that channels connect to
  • status - Check overall system status including channels
  • doctor - Diagnose channel connectivity issues