Telegram is the most popular way to interact with OpenClaw — and for good reason. It's available on every device, has a clean API, delivers messages instantly, and works equally well for sending quick questions or having long conversations with your AI assistant.
This guide covers everything you need to connect OpenClaw to Telegram, from creating your bot with BotFather to locking it down so only you can use it.
Why Telegram is the best OpenClaw channel
OpenClaw supports Telegram, WhatsApp, Discord, Signal, and a handful of others. Telegram tends to be the first choice for most users because:
- No phone number linking — you create a standalone bot, not tied to your personal number
- Bot API is free and stable — no business account, no approval process
- File sharing — send documents, images, and voice notes to your assistant
- Inline buttons — OpenClaw can render interactive buttons in Telegram for richer UX
- Available everywhere — iOS, Android, desktop, web — all in sync
Prerequisites
- OpenClaw installed and running (locally or on a VPS)
- A Telegram account
- 5 minutes
Step 1 — Create your bot with BotFather
BotFather is Telegram's official bot for creating and managing bots. Open Telegram and search for @BotFather, or use this link: t.me/BotFather.
Send: /newbot
BotFather will ask for a name (e.g. "My OpenClaw Assistant") and a username (must end in bot, e.g. my_openclaw_bot).
Once created, BotFather gives you a token that looks like:
7891234567:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw
Copy this token and keep it safe. Anyone with it can control your bot.
Optional: set a bot description and profile photo
While you're in BotFather, it's worth setting a description and photo so the bot looks polished:
/setdescription— short text shown when people open the bot/setuserpic— upload a profile photo/setabouttext— text shown in the bot's profile
Step 2 — Add the token to OpenClaw
With your token ready, add it to your OpenClaw configuration. The exact method depends on how you installed OpenClaw:
Via CLI (recommended)
openclaw config set channels.telegram.token YOUR_BOT_TOKEN
Via config file directly
Open ~/.openclaw/config.json and add the Telegram section:
{
"channels": {
"telegram": {
"token": "7891234567:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw"
}
}
}
config.json to a public git repository. It contains your bot token and API keys. Add it to your .gitignore.Step 3 — Start the gateway
The OpenClaw gateway handles incoming Telegram messages and routes them to your AI assistant. Start (or restart) it:
openclaw gateway restart
Or if you set it up as a systemd service (see our VPS guide):
systemctl restart openclaw
Confirm it's running and picked up the Telegram config:
openclaw gateway status
You should see Telegram listed as an active channel.
Step 4 — Test it
Open Telegram, find your bot by username, and send it any message — even just "hello". You should get a response from your OpenClaw AI assistant within a few seconds.
If it's your first message, the assistant might introduce itself or ask for context depending on how you configured the persona in SOUL.md.
Try a few commands to confirm everything works:
What time is it?— tests basic response/status— shows session info (if configured)What can you do?— tests persona and capability awareness
Step 5 — Lock it down (important!)
By default, anyone who finds your bot can talk to it. That's usually fine for a personal assistant — strangers won't find it unless you share the link — but it's worth knowing your options.
Restrict to your Telegram user ID
The safest option is to whitelist only your Telegram user ID. Add it to your OpenClaw config:
openclaw config set channels.telegram.allowedUsers '["285283827"]'
Replace 285283827 with your own Telegram user ID. You can find yours by messaging @userinfobot.
With this set, OpenClaw will silently ignore messages from anyone not on the list.
Make the bot private
In BotFather, send /setjoingroups → Disable, so your bot can't be added to group chats you didn't intend.
Useful bot commands to set up
In BotFather, use /setcommands to add a command list to your bot. Suggested commands for OpenClaw:
new - Start a new conversation
status - Show session and model info
reasoning - Toggle extended reasoning
help - Show available commands
These will appear as a menu when users tap the / button in the chat.
Troubleshooting
Bot doesn't respond
Check these in order:
- Is the gateway running? (
openclaw gateway status) - Is the token correct? Copy it again from BotFather with
/mybots→ select your bot → API Token - Check gateway logs:
openclaw gateway logsorjournalctl -u openclaw -n 30
"Unauthorized" error in logs
Your bot token is wrong or has been revoked. Generate a new one in BotFather with /mybots → your bot → API Token → Revoke current token.
Responses are slow
Telegram delivery itself is near-instant. If responses feel slow, the bottleneck is your AI model API (usually 1–5 seconds for Claude/GPT-4o). Check your API key's rate limit tier if it's consistently slow.
Messages going to the wrong bot
If you've tested with multiple bots, make sure you're messaging the right one. Check the username in BotFather and confirm it matches what's in your config.
With Telegram connected, your OpenClaw assistant is now with you everywhere. The next logical step is connecting your email and calendar — so your assistant can read your inbox, remind you about meetings, and actually help manage your day. That guide is coming next week.
Or if you'd rather have us handle the whole setup — Telegram, email, calendar, automations — our done-for-you service starts at $499 and takes 24 hours.
Want it set up for you?
We'll connect OpenClaw to Telegram (and everything else) in 24 hours. No terminal required.
Get Your Setup →