Chat Channels
Connect OpenClaw to chat apps and understand routing, pairing, group behavior, ambient context, and channel safety.
OpenClaw's Gateway connects agent sessions to the chat surfaces you already use. Text works almost everywhere; media, reactions, threading, group behavior, and login style vary by channel.
Supported Surfaces
Commonly used channels include:
- Telegram
- Slack
- Discord
- Signal
- iMessage through the current
imsgpath on macOS - Google Chat
- Microsoft Teams
- Matrix
- Feishu/Lark
- LINE
- Mattermost
- Nextcloud Talk
- Nostr
- QQ Bot
- SMS through Twilio
- Synology Chat
- Tlon
- Twitch
- WeChat through external plugin paths
- Yuanbao
- Zalo and Zalo Personal
- WebChat through the Gateway web surface
Some channels are built in, some are bundled plugins, and some install on demand from ClawHub or npm.
Choosing a First Channel
| Channel | Best for | Notes |
|---|---|---|
| Telegram | Fastest setup | Bot token, good for personal testing |
| Daily personal assistant use | QR pairing, richer local state | |
| Slack | Team workflows | Watch group policy and shared-agent risk |
| Discord | Community or lab use | Server bot, channels, DMs, threads |
| iMessage | Apple ecosystem | Requires suitable macOS host and permissions |
| WebChat | Local smoke tests | No external chat account |
Quick Commands
openclaw channels status
openclaw channels add
openclaw channels login --channel telegram
openclaw channels logs --channel whatsappUse the Control UI when you want a visual status panel and QR/login flows.
Pairing and Allowing Senders
DM pairing is the right default for public chat surfaces. Unknown senders receive a pairing flow instead of direct access to the agent.
Approve requests explicitly:
openclaw pairing list
openclaw pairing approve <channel> <code>For team channels, prefer explicit allowFrom, allowGuilds, allowChannels, or access groups rather than broad open access.
Routing
Routing decides which agent and session should handle a message. OpenClaw can route by:
- channel
- channel account
- sender or room
- binding rules
- group/DM context
- multi-agent configuration
In single-agent mode, everything usually routes to main. In multi-agent mode, bindings connect channel accounts or rooms to specific agents.
Group Behavior
Group rooms need stricter defaults than DMs:
- require mention or activation when possible
- avoid broad tool access for large rooms
- enable bot loop protection for bot-authored inbound messages
- understand that Slack multi-person DMs behave like group chats
- use ambient room events only when quiet context is wanted
Ambient room events let supported rooms provide background context without waking the agent for every message. The agent should only send when addressed or when the message tool is used intentionally.
Delivery Notes
Recent OpenClaw releases improved rich Telegram and WhatsApp delivery. Telegram can preserve structured text such as lists, tables, blockquotes, and intentional line breaks more reliably. WhatsApp now respects configured ACP bindings in supported flows.
Still, every channel has limits. Long messages may be chunked, media support differs, and provider-specific formatting can change final output.
Troubleshooting
Start with:
openclaw status
openclaw channels status --probe
openclaw logs --follow
openclaw doctorIf a channel sees the message but the agent does not reply, check sender authorization, group activation rules, channel account binding, model credential health, and whether the target agent is already busy.
The Gateway pattern
Channels are ingress adapters. The Gateway normalizes them into routing, session, auth, and delivery events so the agent runtime does not need to know every platform's native protocol.
Continue with practice
You have finished the core ideas of Chat Channels.
If you want to turn the idea into something reusable, continue practicing on AgentWay.