Deploy Your AI Assistant Across Discord, Telegram, and Slack with OpenClaw
Building an AI assistant is one thing. Deploying it across Discord, Telegram, Slack, and other platforms? That's where things get complicatedβor at least they used to. OpenClaw's messaging abstraction layer lets you run a single AI agent that responds seamlessly across multiple platforms, with platform-specific formatting handled automatically.
This guide walks through deploying your OpenClaw agent to three major platforms: Discord, Telegram, and Slack. By the end, you'll have one AI assistant accessible from any of these channels.
Why Multi-Platform Deployment?
Different teams and communities use different tools:
- Discord: Gaming communities, open source projects, tech communities
- Slack: Corporate teams, startups, professional workspaces
- Telegram: Privacy-focused groups, international communities, crypto/web3 spaces
- WhatsApp: Personal communication, family groups, international markets
- Signal: Privacy-first users, secure communications
Instead of maintaining separate bots for each platform, OpenClaw abstracts away the platform-specific details. You build once, deploy everywhere.
Architecture Overview
OpenClaw's messaging system has three layers:
βββββββββββββββββββββββββββββββββββββββββββ
β AI Agent (Claude/Opus) β
β - Processes requests β
β - Generates responses β
β - Calls tools β
ββββββββββββββββ¬βββββββββββββββββββββββββββ
β
ββββββββββββββββΌβββββββββββββββββββββββββββ
β OpenClaw Message Abstraction β
β - Platform detection β
β - Format conversion β
β - Routing logic β
ββββββββββββββββ¬βββββββββββββββββββββββββββ
β
βββββββββΌββββββββ
β β β
ββββββββΌβββ βββΌβββββ ββΌβββββββ
β Discord β βTelegramβ β Slack β
β Adapter β βAdapter β βAdapterβ
βββββββββββ ββββββββββ βββββββββ
Each adapter handles:
- Authentication/tokens
- Platform-specific API calls
- Message formatting (Discord embeds vs Telegram markdown)
- File uploads and media
- Platform features (reactions, threads, etc.)
Prerequisites
Before deploying to multiple platforms:
- OpenClaw installed β Version 2026.2+ recommended
- Server/VM β Cloud instance (AWS, DigitalOcean, etc.) or local machine running 24/7
- API keys/tokens for each platform
- Basic Linux skills β Command line, SSH, systemd
Part 1: Discord Setup
Discord is the easiest to start with and has the richest feature set.
1. Create Discord Application
- Go to Discord Developer Portal
- Click New Application
- Name it (e.g., "OpenClaw Assistant")
- Navigate to Bot β Add Bot
- Under Token, click Reset Token and save it somewhere safe
- Enable these Privileged Gateway Intents:
- Presence Intent
- Server Members Intent
- Message Content Intent
2. Invite Bot to Server
- Go to OAuth2 β URL Generator
- Select scopes:
botapplications.commands
- Select bot permissions:
- Read Messages/View Channels
- Send Messages
- Send Messages in Threads
- Embed Links
- Attach Files
- Read Message History
- Add Reactions
- Copy the generated URL and open in browser
- Select your server and authorize
3. Configure OpenClaw
Create ~/.openclaw/config/discord.json:
{
"token": "YOUR_BOT_TOKEN_HERE",
"applicationId": "YOUR_APPLICATION_ID",
"guildId": "YOUR_SERVER_ID"
}
Enable Discord in OpenClaw:
openclaw skill enable discord
openclaw restart
4. Test Discord Integration
In your Discord server:
@YourBot hello
Your bot should respond with a greeting. Check logs if not:
openclaw logs --follow
Part 2: Telegram Setup
Telegram bots are created through the BotFather and use long polling or webhooks.
1. Create Telegram Bot
- Open Telegram and search for
@BotFather - Send
/newbot - Choose a name (e.g., "OpenClaw Assistant")
- Choose a username (must end in "bot", e.g., "openclawai_bot")
- Save the token provided
2. Configure Bot Settings
Still in BotFather:
/setdescription - Set bot description
/setabouttext - Set about text
/setuserpic - Upload profile picture
/setcommands - Set command list
Example commands:
help - Show available commands
status - Check bot status
settings - Configure bot settings
3. Configure OpenClaw
Create ~/.openclaw/config/telegram.json:
{
"token": "YOUR_TELEGRAM_BOT_TOKEN",
"allowedUsers": [123456789], // Optional: restrict to specific user IDs
"allowedChats": [-1001234567890] // Optional: restrict to specific groups
}
Get your Telegram user ID by messaging @userinfobot.
Enable Telegram:
openclaw skill enable telegram
openclaw restart
4. Test Telegram Integration
Open Telegram, find your bot, and send:
/start
Hello!
The bot should respond. If using group mode, add the bot to a group and test there.
Part 3: Slack Setup
Slack requires more setup but integrates beautifully with professional workflows.
1. Create Slack App
- Go to Slack API Apps
- Click Create New App β From scratch
- Name your app (e.g., "OpenClaw Assistant")
- Select your workspace
2. Configure Bot Token Scopes
Under OAuth & Permissions β Scopes, add these Bot Token Scopes:
chat:write
chat:write.public
channels:history
channels:read
groups:history
groups:read
im:history
im:read
im:write
users:read
files:write
reactions:read
reactions:write
3. Enable Events
Under Event Subscriptions:
- Toggle Enable Events to ON
- Set Request URL to:
https://your-server.com/openclaw/slack/events - Subscribe to bot events:
message.channelsmessage.groupsmessage.imapp_mention
4. Install to Workspace
Under OAuth & Permissions:
- Click Install to Workspace
- Authorize the app
- Save the Bot User OAuth Token (starts with
xoxb-)
5. Configure OpenClaw
Create ~/.openclaw/config/slack.json:
{
"token": "xoxb-YOUR-SLACK-BOT-TOKEN",
"signingSecret": "YOUR_SIGNING_SECRET",
"appToken": "xapp-YOUR-APP-TOKEN" // For Socket Mode
}
The signing secret is under Basic Information β App Credentials.
Enable Slack:
openclaw skill enable slack
openclaw restart
6. Test Slack Integration
In Slack:
- Invite bot to a channel:
/invite @OpenClaw - Message:
@OpenClaw hello
The bot should respond in-thread.
Unified Message Routing
Now that all platforms are configured, OpenClaw routes messages automatically:
User sends message on Discord β OpenClaw receives β Claude processes β Response sent to Discord
User sends message on Telegram β OpenClaw receives β Claude processes β Response sent to Telegram
User sends message on Slack β OpenClaw receives β Claude processes β Response sent to Slack
The AI agent doesn't need to know which platform it's talking toβOpenClaw handles that.
Platform-Specific Formatting
OpenClaw automatically converts formatting:
| Feature | Discord | Telegram | Slack |
|---|---|---|---|
| Bold | **text** | **text** | *text* |
| Italic | *text* | *text* | _text_ |
| Code | `code` | `code` | `code` |
| Code block | ```lang\ncode\n``` | ```lang\ncode\n``` | ```code``` |
| Links | [text](url) | [text](url) | <url|text> |
Your agent writes in markdown, OpenClaw converts to platform-native format.
Advanced Features
1. Reactions
// Add reaction to message
message.react("π");
Works across Discord, Telegram (for supported clients), and Slack.
2. File Uploads
// Upload file
message.send({
content: "Here's the report",
files: ["./report.pdf"]
});
OpenClaw handles platform-specific upload APIs.
3. Threads
// Reply in thread
message.replyInThread("Continuing discussion here");
Discord and Slack support native threads. Telegram uses reply-to-message.
4. Platform Detection
In your agent logic:
if (message.platform === "discord") {
// Use Discord-specific features (embeds, etc.)
} else if (message.platform === "telegram") {
// Telegram-specific logic
}
Monitoring and Logs
Check all platform connections:
openclaw status
Output:
OpenClaw Status
β Gateway running
β Discord connected (bot: OpenClaw#1234)
β Telegram connected (bot: @openclawai_bot)
β Slack connected (workspace: YourTeam)
View unified logs:
openclaw logs --platform all
openclaw logs --platform discord
openclaw logs --platform telegram
Troubleshooting
Discord Bot Not Responding
- Check intents are enabled (Message Content Intent is required)
- Verify token in config
- Check bot has permissions in channel
- Review logs:
openclaw logs --platform discord
Telegram Bot Silent
- Verify token with BotFather:
/mybotsβ select bot β API Token - Check allowedUsers/allowedChats if configured
- Telegram requires
/startbefore messaging in DM
Slack Events Not Received
- Verify Request URL is publicly accessible (use ngrok for local testing)
- Check Event Subscriptions are saved
- Reinstall app to workspace if scopes changed
Security Best Practices
- Rotate tokens regularly β Especially if leaked or exposed
- Use environment variables β Don't commit tokens to Git
- Restrict bot permissions β Only grant necessary scopes
- Implement rate limiting β Prevent spam/abuse
- Validate webhook signatures β Ensure requests are from platform
- Use allowlists β Restrict bot to specific users/channels if needed
Scaling Considerations
For High-Volume Deployments
- Use webhooks instead of polling β More efficient for Telegram/Slack
- Deploy OpenClaw behind load balancer β Distribute traffic
- Separate gateway per platform β Isolate failures
- Monitor context usage β Use subagents for heavy tasks
- Implement queueing β Handle burst traffic gracefully
Cost Optimization
Running 24/7 AI assistants can get expensive. Tips:
- Use cheaper models for simple tasks β Claude Haiku vs Opus
- Implement smart routing β Only wake AI for relevant messages
- Cache common responses β FAQ-style questions
- Batch similar requests β Process multiple at once
- Use local models for some tasks β Llama for basic queries
Conclusion
Multi-platform deployment unlocks your AI assistant's full potential. Instead of building separate bots, OpenClaw's unified messaging layer lets you deploy once and serve users wherever they are.
Recap:
- Set up Discord, Telegram, and Slack bots through respective platforms
- Configure OpenClaw with platform tokens
- Let OpenClaw handle routing and formatting automatically
- Use platform detection for platform-specific features
- Monitor with unified logs and status commands
Your AI assistant is now accessible from three major platforms, with consistent behavior and automatic format conversion.
Next steps: Explore OpenClaw Discord Bot Setup Guide and OpenClaw Telegram Bot Setup Guide for platform-specific deep dives.
More Articles
The Ultimate OpenClaw AWS Setup Guide

The definitive guide to setting up OpenClaw on AWS. Includes spot instance configuration, cost optimization, and step-by-step instructions.
Building AI Workflows with Tool Chaining in OpenClaw
Master the art of chaining tools and function calls to build powerful multi-step AI automation workflowsβfrom data extraction to content generation and deployment.
Cost Optimization Guide for Self-Hosted AI Assistants: Run Claude on a Budget
Practical strategies to reduce API costs for self-hosted AI assistantsβsmart model routing, caching, batching, and OpenClaw-specific optimizations to run Claude affordably.