Configuration
Channels
Connect your agents to messaging platforms.
Channels let users talk to agents from messaging platforms such as Telegram, WhatsApp, Discord, Slack, Signal, iMessage, Matrix, Teams, and Google Chat.
Channels are configured on the active OpenClaw engine.
Engine Scope
This matters a lot:
| Active engine | Who receives channel messages |
|---|---|
| Local | The OpenClaw engine on your Mac |
| PC / Mac mini | The OpenClaw engine on that computer |
| VPS | The OpenClaw engine on the server |
If Telegram is configured on the VPS, the VPS is the process that answers Telegram. The xCloud desktop app is only the control panel.
Telegram
Telegram is configured per agent.
- Go to Settings > Channels > Telegram.
- Open BotFather.
- Create a bot with
/newbot. - Copy the BotFather token.
- Select the agent that should own the bot.
- Paste the token.
- Save.
- Ask the Telegram user to message the bot.
- Approve the pairing code if DM policy is
pairing.
DM Policies
| Policy | Meaning |
|---|---|
pairing | Recommended. New users need an approval code |
allowlist | Only listed Telegram users can message the agent |
open | Anyone can DM the bot |
disabled | Telegram DMs are ignored |
WhatsApp uses a QR login flow.
- Go to Settings > Channels > WhatsApp.
- Click Show QR.
- On your phone, open WhatsApp Linked Devices.
- Scan the QR from WhatsApp, not the camera app.
- Approve users if pairing is enabled.
Discord
Discord requires a bot token. If you want xCloud to generate an invite link, add the Discord application id as well.
Live Status
For Telegram, xCloud can run a live channel check. Use Check live status when a bot appears connected but does not reply.
Status can be:
| Status | Meaning |
|---|---|
| Live | The engine can reach Telegram with this token |
| Offline | Gateway, token, network, or polling conflict failed |
| Warning | OpenClaw returned a degraded state |
| Not checked | No live probe has run yet |
Common Problems
| Problem | Fix |
|---|---|
| Bot token saves but no replies arrive | Check active engine and run live status |
Telegram says conflict or 409 | Same bot token is running in another engine |
| No pairing code | Token, DM policy, or gateway is wrong |
| WhatsApp QR does not connect | Generate a fresh QR and scan from Linked Devices |
| Channel works on Local but not VPS | Configure the channel again while VPS is active |