How to Connect OpenClaw to Telegram with Bot API 9.5 Streaming

Set up OpenClaw as a Telegram chatbot with native streaming responses using Bot API 9.5. Step-by-step guide covering bot creation, plugin setup, and streaming modes.

beginner 10 min read Updated March 23, 2026

Telegram is one of the most popular ways to interact with an OpenClaw agent on the go. With the release of Telegram Bot API 9.5 in March 2026, you can now get real-time streaming responses — the "typing bubble" experience where you see the agent's reply appear word by word, just like ChatGPT. OpenClaw was the first framework to ship full Bot API 9.5 support, and this guide shows you how to set it up from scratch.

Prerequisites

  • A running OpenClaw instance (version 2026.3.7 or later for Bot API 9.5 support)
  • A Telegram account
  • About 15 minutes of setup time
  • No programming experience required

If you are new to OpenClaw, start with our Installation and Setup guide first.

Step 1: Create a Telegram Bot

Before connecting OpenClaw, you need a Telegram bot token:

  1. Open Telegram and search for @BotFather
  2. Send /newbot
  3. Choose a display name for your bot (e.g., "My OpenClaw Assistant")
  4. Choose a username ending in bot (e.g., my_openclaw_bot)
  5. BotFather will reply with your bot token — a long string that looks like 123456789:ABCdef.... Copy this and keep it safe.
Watch out: Never share your bot token publicly. Anyone with the token can control your bot. If you accidentally leak it, use /revokenewtoken with BotFather to generate a new one.

Step 2: Install the Telegram Skill

In your OpenClaw dashboard or CLI, install the official Telegram skill:

openclaw plugin install telegram-skill

You can also find it in the plugin browser under Messaging > Telegram Skill.

Step 3: Configure the Connection

Add your bot token to the Telegram skill configuration:

# ~/.openclaw/plugins/telegram-skill/config.yaml

telegram:

botToken: "YOUR_BOT_TOKEN_HERE"

streaming:

enabled: true

mode: partial # Options: partial, block, progress

Let us break down the streaming modes:

  • partial: Words appear one at a time as they are generated. This feels the most natural and responsive — like watching someone type. Recommended for most users.
  • block: The response is sent in larger chunks (every few sentences). Less fluid but uses fewer API calls, which matters if you are on a metered connection.
  • progress: A progress indicator shows while the full response generates, then the complete message appears at once. Best for agents that do heavy processing before responding.

Step 4: Start the Telegram Listener

Activate the Telegram connection:

openclaw plugin start telegram-skill

You should see a confirmation message like:

[telegram-skill] Connected to Telegram Bot API 9.5

[telegram-skill] Streaming mode: partial

[telegram-skill] Listening for messages...

Now open Telegram, find your bot by its username, and send a message. You should see the streaming response appear in real time.

Step 5: Configure Group Chat Support

By default, the bot only responds in private (direct) messages. To enable it in group chats:

telegram:

groups:

enabled: true

respondToMentions: true # Only respond when @mentioned

respondToReplies: true # Also respond to direct replies to the bot

respondToAll: false # Don't respond to every message (noisy!)

Add the bot to a Telegram group and give it the "Read Messages" permission. In groups, streaming works slightly differently — the bot uses sendMessage followed by editMessageText for real-time updates, since sendMessageDraft is optimized for private chats.

Pro tip: If you use Telegram topic-based groups (the forum-style channels), the bot can respond within specific topics. This pairs well with Lossless-Claw's topic-based agent routing — different topics can be handled by different specialized agents. See our Memory Management guide for setup details.

Step 6: Customize Bot Behavior

You can fine-tune how the bot presents itself:

telegram:

persona:

name: "Claw"

greeting: "Hey! I'm your OpenClaw assistant. How can I help?"

maxResponseLength: 4000 # Telegram's message limit is 4096 chars

splitLongMessages: true # Auto-split if response exceeds limit

You can also add keyboard buttons for common actions:

telegram:

keyboard:

enabled: true

buttons:

- text: "Summarize my day"

command: "/summarize"

- text: "Check my tasks"

command: "/tasks"

- text: "Search the web"

command: "/search"

Step 7: Verify Streaming Is Working

To confirm you are getting true Bot API 9.5 streaming (not the legacy edit-based fallback):

  1. Send a message that requires a long response, like "Explain quantum computing in detail"
  2. Watch for the typing indicator — you should see the text appear progressively in the chat bubble
  3. Check the plugin logs for [telegram-skill] Using sendMessageDraft (Bot API 9.5) — this confirms native streaming is active

If you see [telegram-skill] Falling back to editMessageText, your Telegram client or bot may not have Bot API 9.5 enabled yet. Update your Telegram app and verify your OpenClaw version is 2026.3.7+.

Tips and Common Mistakes

Common mistake: Setting respondToAll: true in a busy group chat. Your bot will try to respond to every message, which burns through your AI model's API credits fast and annoys other group members. Use respondToMentions: true instead. Pro tip: Use Telegram's built-in bot commands feature. Send /setcommands to BotFather and register your custom commands so users get autocomplete suggestions when they type /. Watch out: If you are running OpenClaw on a cheap VPS, Telegram's webhook delivery can timeout if your agent takes more than 60 seconds to start responding. For complex queries, consider setting the streaming mode to progress so Telegram sees an immediate acknowledgment. Common mistake: Forgetting to restart the Telegram skill after config changes:
openclaw plugin restart telegram-skill

Summary and Next Steps

You now have an OpenClaw agent accessible through Telegram with real-time streaming responses. The setup is straightforward: create a bot with BotFather, install the Telegram skill, add your token, and configure streaming mode.

To take your Telegram bot further:

Related Resources

Sources: AIBase reporting on Bot API 9.5, Telegram Bot API documentation, OpenClaw Telegram skill docs.

Related Skills on ClawGrid

More Guides

Related News