โ† Back to cheatsheet

๐Ÿ“ฑ Channels Overview

OpenClaw supports 20+ messaging platforms through a single gateway. This guide compares every major channel, helps you pick the right one, and gives you the config to get each running in minutes.

20+ channels supportedRun multiple simultaneouslyUpdated for v2026.3.23

๐Ÿ“ก How channels work

Every channel is a bridge between a messaging platform and your OpenClaw gateway. Messages flow like this:

You (phone/desktop)
  โ†’ Messaging App (Telegram, WhatsApp, etc.)
    โ†’ OpenClaw Gateway (ws://127.0.0.1:18789)
      โ†’ AI Model (Claude, GPT, etc.)
        โ†’ Response back through the same path

Key facts:

  • Same assistant everywhere โ€” your agent's personality, memory, and skills work identically across all channels
  • Run multiple simultaneously โ€” Telegram + Discord + iMessage all at once, routed through one gateway
  • Per-channel security โ€” each channel gets its own dmPolicy, allowFrom, and groupPolicy
  • Session isolation โ€” each user on each channel gets their own isolated conversation context

CLI basics

# List all configured channels
openclaw channels list

# Check connection status
openclaw channels status --probe

# Interactive channel setup
openclaw channels login

# Add a specific channel
openclaw channels add --channel telegram --token $TOK

๐Ÿ“Š Side-by-side comparison

ChannelSetupStabilityGroupsVoiceMediaNeeds
TelegramEasyโญโญโญโœ…โœ…โœ…Bot token
DiscordEasyโญโญโญโœ…โŒโœ…Bot token
WhatsAppMediumโญโญโœ…โœ…โœ…Phone + QR scan
SlackMediumโญโญโญโœ…โŒโœ…App + tokens
iMessageMediumโญโญLimitedโŒโœ…Mac running 24/7
SignalHardโญโœ…โœ…โœ…signal-cli + phone
WebChatFreeโญโญโญโŒโŒโœ…Nothing โ€” built in
Google ChatMediumโญโญโญโœ…โŒโœ…Workspace + bot
TeamsHardโญโญโœ…โŒโœ…Azure app reg
MatrixMediumโญโญโœ…โŒโœ…Homeserver account

๐Ÿค” Which channel to pick first

โœ… Short answer: Start with Telegram. It has the easiest setup (5 minutes), highest stability, works on every device, requires no public IP or domain, and supports voice, media, groups, and inline keyboards. You can always add more channels later.

Decision guide

If you wantโ€ฆPick this
Fastest setup, zero frictionTelegram
Already using it daily, everyone has itWhatsApp
Community / team use with rich formattingDiscord
Most natural "text a friend" feel on macOSiMessage
Workplace assistant with threadsSlack
Maximum privacy, end-to-end encryptionSignal
Enterprise / Microsoft ecosystemTeams
Federated, self-hosted, decentralizedMatrix
โœˆ๏ธ

Telegram

Easy ยท 5 min

The most recommended first channel. Uses the official Bot API via grammY, long-polling by default (no public IP needed), production-ready for DMs and groups.

Setup

  1. Open Telegram โ†’ search @BotFather โ†’ send /newbot
  2. Follow the prompts, choose a name and username
  3. Copy the bot token (looks like 123456:ABC-DEF...)
  4. Add it to OpenClaw:
openclaw channels add --channel telegram --token YOUR_BOT_TOKEN

Or paste the token during openclaw onboard. Telegram uses token-based auth โ€” it does not use channels login (thatโ€™s for WhatsApp QR pairing).

Manual config

{
  "channels": {
    "telegram": {
      "enabled": true,
      "botToken": "123456:ABC-your-token-here",
      "dmPolicy": "pairing",
      "allowFrom": ["your_telegram_user_id"]
    }
  }
}

Why it's the best starter

  • No public IP needed โ€” uses long-polling, not webhooks
  • Voice notes work โ€” speak to your agent, get voice back
  • Survives reboots โ€” reconnects automatically
  • Works everywhere โ€” phone, tablet, desktop, web
  • Groups supported โ€” add the bot to group chats with mention gating

๐Ÿ’ก Tip: Use /setdescription and /setabouttext in BotFather to customize what people see when they find your bot. Use /setuserpic to add a profile picture.

๐Ÿ“– Full Telegram Setup Guide โ†’

๐Ÿ’ฌ

WhatsApp

Medium ยท 10 min

Uses a WhatsApp Web bridge โ€” your personal account or a dedicated SIM acts as the bot. Ubiquitous, natural mobile experience, great voice notes. Less stable than Telegram.

Setup

openclaw channels login whatsapp

This displays a QR code in your terminal. Scan it with WhatsApp on your phone (Settings โ†’ Linked Devices โ†’ Link a Device).

Config

{
  "channels": {
    "whatsapp": {
      "enabled": true,
      "dmPolicy": "allowlist",
      "allowFrom": ["+15551234567"],
      "groupPolicy": "allowlist"
    }
  }
}

Gotchas

  • QR scan required on reboot โ€” WhatsApp Web sessions can expire; you may need to re-scan periodically
  • Uses your phone number โ€” the bot sends messages from your WhatsApp account (or a dedicated SIM)
  • Rate limits โ€” WhatsApp has stricter anti-spam than Telegram; don't send too many automated messages
  • Less stable โ€” WhatsApp changes their Web protocol occasionally, which can break the bridge

โš ๏ธ Dedicated SIM recommended. Using your personal WhatsApp for the bot means your contacts see "online" status from the bot's activity. A cheap prepaid SIM solves this.

๐Ÿ“– Full WhatsApp Setup Guide โ†’

๐ŸŽฎ

Discord

Easy ยท 10 min

Excellent for communities and teams. Rich formatting, threads, reactions. Requires creating a Discord application and bot. Very stable connection.

Setup

  1. Go to Discord Developer Portal โ†’ New Application
  2. Go to Bot tab โ†’ create bot โ†’ copy token
  3. Under OAuth2, generate an invite URL with bot + applications.commands scopes
  4. Invite the bot to your server
  5. Add the token to OpenClaw:
{
  "channels": {
    "discord": {
      "enabled": true,
      "token": "YOUR_DISCORD_BOT_TOKEN",
      "dmPolicy": "pairing",
      "allowFrom": ["your_discord_user_id"]
    }
  }
}

Discord-specific features

  • Thread support โ€” conversations in threads keep channels clean
  • autoArchiveDuration (v2026.3.11) โ€” set thread archiving to 1h (60), 1d (1440), 3d (4320), or 1 week (10080) instead of the 1h default
  • Mention gating โ€” requireMention: true so the bot only responds when @mentioned
  • Slash commands โ€” OpenClaw skills auto-register as Discord slash commands
  • Rich embeds โ€” formatted responses with color, fields, and images

๐Ÿ’ก Security note: Use numeric Discord user IDs in allowFrom, not usernames. Usernames can be changed; IDs are permanent. The openclaw security audit will warn you about name-based entries.

๐Ÿ“– Full Discord Setup Guide โ†’

๐ŸŽ

iMessage

Medium ยท 10 min ยท macOS only

The most natural experience on Apple devices โ€” text your agent like texting a friend. Requires a Mac running 24/7 as the gateway host. Uses native Messages framework or BlueBubbles.

Setup

openclaw channels add imessage

The wizard walks you through granting permissions. You'll need to allow OpenClaw access to Messages via macOS Privacy settings.

Two approaches

MethodProsCons
Native (legacy)Direct macOS integration, simplestFragile โ€” Apple updates can break it
BlueBubblesMore reliable, actively maintained bridgeRequires BlueBubbles server setup

Gotchas

  • Mac must run 24/7 โ€” if the Mac sleeps or reboots, iMessage goes offline
  • Apple updates break things โ€” macOS updates occasionally change the Messages framework
  • Permissions โ€” macOS requires granting Automation, Notifications, and sometimes Accessibility access
  • No Android โ€” only works for people messaging from Apple devices

โœ… Best used alongside Telegram. iMessage gives you the natural "text a friend" experience on your iPhone, while Telegram serves as the reliable backup that works everywhere and doesn't depend on a Mac being online.

๐Ÿ“– Full iMessage Setup Guide โ†’

๐Ÿ’ผ

Slack

Medium ยท 15 min

Best for workplace use. Bot + App Token setup, supports threads and channels. Socket Mode avoids needing a public URL. Very stable once configured.

Setup

  1. Go to api.slack.com โ†’ Create New App โ†’ From Manifest
  2. Add required scopes (chat:write, app_mentions:read, im:read, im:write, etc.)
  3. Enable Socket Mode (avoids public URL requirement)
  4. Install the app to your workspace
  5. Copy Bot Token + App Token + Signing Secret
{
  "channels": {
    "slack": {
      "enabled": true,
      "botToken": "xoxb-...",
      "appToken": "xapp-...",
      "signingSecret": "...",
      "dmPolicy": "pairing"
    }
  }
}

Best for

  • Work assistant that lives in your Slack workspace
  • Team-shared agent with per-user session isolation
  • Thread-based conversations that don't clutter channels
  • Integration with existing Slack workflows

๐Ÿ“– Full Slack Setup Guide โ†’

๐Ÿ”’

Signal

Hard ยท 20+ min

Maximum privacy with end-to-end encryption. Requires signal-cli (Java-based) and a dedicated phone number. High maintenance โ€” Signal protocol updates can break the bridge.

Setup

# Install signal-cli (requires Java)
brew install signal-cli

# Register a phone number
signal-cli -u +15551234567 register

# Verify with SMS code
signal-cli -u +15551234567 verify 123-456

# Configure in OpenClaw
openclaw channels add signal

Why it's hard

  • Java dependency โ€” signal-cli requires a JRE
  • Dedicated phone number โ€” can't use your main Signal account
  • Frequent breakage โ€” Signal updates their protocol regularly, which breaks signal-cli
  • No official bot API โ€” this is a workaround, not an officially supported integration

โš ๏ธ Only for privacy purists. Signal is the most secure channel but also the most fragile. If you just want privacy without the maintenance burden, Telegram with dmPolicy: "allowlist" and a self-hosted VPS is a pragmatic alternative.

๐ŸŒ

WebChat

Built-in ยท 0 min

Available at http://localhost:18789 the moment your gateway starts. No config needed. Great for testing, debugging, and desktop use.

WebChat is always available โ€” it's the Control UI's built-in chat interface. There's nothing to configure. Just open your browser and go.

When to use WebChat

  • Testing โ€” verify your SOUL.md tone, USER.md context, and skill behavior before connecting a real channel
  • Debugging โ€” see raw model responses, tool calls, and context usage
  • Desktop workflow โ€” if your agent is primarily a coding/productivity assistant and you're always at your computer

Limitations

  • Only accessible from your local machine (or via SSH tunnel/Tailscale)
  • No push notifications โ€” you have to check it manually
  • No mobile access unless you set up remote access
  • Not practical as your primary daily channel

๐Ÿ” Reminder: The WebChat at :18789 is an admin interface. Never expose it to the public internet. See the Security Guide for how to secure it.

๐Ÿ”Œ Other supported channels

OpenClaw supports many more channels beyond the major ones above:

ChannelNotesSetup
Google ChatWorkspace bot, good for Google-centric teamsMedium
Microsoft TeamsEnterprise, requires Azure app registrationHard
MatrixFederated, self-hosted, decentralizedMedium
Synology ChatFor Synology NAS users โ€” native channel since v2026.2.22Medium
LINEPopular in Japan/Thailand/TaiwanMedium
Zalo / Zalo PersonalPopular in VietnamMedium
MattermostSelf-hosted Slack alternativeMedium
Nextcloud TalkFor Nextcloud usersMedium
IRCClassic, for the old-school crowdEasy
NostrDecentralized social protocolMedium
TwitchStreaming chat integrationMedium
FeishuPopular in Chinese enterprisesMedium

All channels follow the same config pattern in openclaw.json. Check docs.openclaw.ai for each channel's specific setup requirements.

๐Ÿ”€ Running multiple channels

One of OpenClaw's strengths โ€” run as many channels as you want simultaneously through a single gateway.

Example: personal + work setup

{
  "channels": {
    "telegram": {
      "enabled": true,
      "botToken": "...",
      "dmPolicy": "pairing"
    },
    "discord": {
      "enabled": true,
      "token": "...",
      "dmPolicy": "allowlist",
      "allowFrom": ["your_id"]
    },
    "slack": {
      "enabled": true,
      "botToken": "xoxb-...",
      "appToken": "xapp-...",
      "dmPolicy": "pairing"
    }
  }
}

OpenClaw routes messages automatically per chat. Your agent's memory, personality, and skills are shared across all channels โ€” the same assistant, different surfaces.

Channel-specific MESSAGING.md tone

You can set different tone rules per channel in your workspace files:

# MESSAGING.md

## Channel Tone
- iMessage: casual, brief, emoji ok
- Slack: professional, no emoji, thread-aware
- Telegram: conversational, medium length
- Discord: friendly, can use formatting/embeds

๐Ÿ’ก Agent routing: For advanced setups, you can route different channels to different agents โ€” each with their own workspace, personality, and tool access. See agents.list in the config for multi-agent routing.

๐Ÿ”ง Channel troubleshooting

Universal steps

# Check all channel connections
openclaw channels status --probe

# Channel-specific logs (e.g. Telegram)
openclaw channels logs --channel telegram

# Watch live logs for channel errors
openclaw logs --follow

# Full diagnostic
openclaw doctor --deep --yes

Common issues

ProblemFix
Bot doesn't respondCheck dmPolicy โ€” is the sender allowed? Check openclaw logs --follow
WhatsApp disconnectsRe-scan QR code. WhatsApp Web sessions expire. Consider Telegram as backup.
Discord bot offlineVerify token hasn't been regenerated. Check Privileged Gateway Intents are enabled.
iMessage not sendingCheck macOS permissions (Automation, Accessibility). Ensure Mac isn't sleeping.
Slack bot no repliesVerify Socket Mode is enabled. Check all three tokens (bot, app, signing).
"Channel not found"openclaw channels list โ€” is the channel enabled in config?
Messages delayedCheck model latency. Use /status in chat. Consider fast model for simple responses.
Pairing code not sentEnsure dmPolicy: "pairing" is set. Check logs for errors on incoming message.

โœ… Pro tip: Always keep Telegram as a fallback channel even if it's not your primary. It's the most reliable and requires no maintenance. If WhatsApp or iMessage break, you still have a working connection to your agent.