# OpenClaw Channels Channels are [[OpenClaw]]'s adapters to messaging platforms. They translate between platform-specific event shapes (a Slack message, a Telegram update, an iMessage delivery report) and the gateway's typed event bus. Each channel is a plugin that registers with the [[OpenClaw Gateway|gateway]] and surfaces inbound traffic to the agent runtime. The channel layer is what makes OpenClaw genuinely **multi-platform**: one self-hosted agent answers across every chat surface its operator uses, with consistent skills, memory, and policies. ## Built-In Channels Shipped in-tree with the runtime: - Discord - Google Chat - iMessage - Matrix - Microsoft Teams - Signal - Slack - Telegram - WhatsApp - Zalo ## Plugin Channels Available as separately installable plugins (`openclaw plugins install <name>`): - BlueBubbles - Zalo Personal - Feishu, IRC, LINE, Mattermost, Nextcloud Talk, Nostr, QQ Bot, Synology Chat, Tlon, Twitch, WeChat, Yuanbao - WebChat (browser-based chat client) The line between built-in and plugin shifts release-to-release; the docs are the source of truth. ## Channel Features Beyond bare messaging, the channel layer surfaces: - **Channel routing** ; how messages reach the right agent (see [[OpenClaw Multi-Agent Routing]]) - **Group messages** ; multi-participant conversations with mention semantics - **Channel location parsing** ; identifying the recipient context (DM vs group vs thread) - **Access groups** ; who is allowed to address an agent on this channel - **Broadcast groups** ; one-to-many publishing patterns ## Activation Modes Per-channel `activation` can be: - `mention` ; the agent only responds when explicitly addressed (default for groups) - `always` ; the agent reads everything (used for personal DMs) This is the small dial that decides whether a Discord server feels haunted or helpful. ## Security Posture - **DM policies**: pairing mode (default, allowlist) vs open mode (explicit configuration required). Strong default ; nobody can DM the bot until the operator allows them - **Group policies**: allowlist available for locked-down deployments - **Per-channel sandbox**: non-main sessions can run in Docker sandboxes (`sandbox.mode: non-main`) so a public channel never executes tools on the host ## Common Pitfalls - **Multiple bot accounts on the same channel** ; route via the *Account* binding layer, not by trying to differentiate inside the agent - **Group chats with `activation: always`** ; the bot will respond to everything, often badly. Default to `mention` and switch only for trusted groups - **iMessage on a non-Apple host** ; requires extra setup (BlueBubbles plugin or a Mac node) ## References - Channels overview: https://docs.openclaw.ai/channels - Telegram: https://docs.openclaw.ai/channels/telegram ## Related - [[OpenClaw]] - [[OpenClaw Gateway]] - [[OpenClaw Multi-Agent Routing]] - [[OpenClaw Nodes]]