← Claude Code Hub
✦ Tip #030 Mar 21, 2026

Control Claude Code from Telegram or Discord with Channels

Claude Code Channels lets you control sessions from Telegram, Discord, or iMessage. Send a message from your phone, it executes in your terminal, and replies through the same channel.

TL;DR Claude Code now accepts messages from Telegram and Discord while working in your terminal. Text it from your phone, it executes, and replies through the same channel. Bidirectional, secure (sender allowlist), activated with --channels.

Channels is a system that pushes external events into your Claude Code session via an MCP server. Telegram, Discord, iMessage, or any service you implement. Claude reads the message, acts with all its tools (bash, editing, reading, subagents), and replies through the same channel.

If this sounds like what OpenClaw does — an AI assistant that lives in your chat apps and executes tasks on your machine — it's no coincidence. Anthropic is building that same vision, but integrated natively into Claude Code: with access to hooks, skills, subagents, and MCP.

Result — you text your Telegram bot:

You (Telegram): Are any tests failing in the project?

Claude Code (terminal): runs npm test, analyzes results

Claude Code (Telegram): 2 tests failing in auth.test.ts:
  - testLoginExpiredToken: expected 401, got 500
  - testRefreshToken: timeout after 5s

Setup (Telegram)

1. Create a Telegram bot

Open BotFather in Telegram, send /newbot, give it a name, and copy the token.

2. Install the plugin

/plugin install telegram@claude-plugins-official

3. Configure the token

/telegram:configure <your-token>

4. Restart with channels enabled

claude --channels plugin:telegram@claude-plugins-official

5. Pair your account

Send any message to your bot in Telegram. It replies with a pairing code. In Claude Code:

/telegram:access pair <code>
/telegram:access policy allowlist

The second line locks access to your account only.

Reference

Aspect Detail
What it is MCP server that pushes events into your session
Supported channels Telegram, Discord, iMessage, fakechat (localhost demo)
Direction Bidirectional — Claude reads and replies through the same channel
Security Sender allowlist + pairing code
Activation flag --channels plugin:<name>@claude-plugins-official
Session required Claude Code must be running (not a persistent service)
Permissions Permission prompts pause the session until you approve locally
Status Research preview (v2.1.80+)
Authentication claude.ai or a Console API key (not on Bedrock/Vertex/Foundry)
Enterprise Disabled by default — admin must enable channelsEnabled

Official docs: Channels — Push events into a running session

Requirements

  • Claude Code v2.1.80+
  • Bun installed (bun --version to verify)
  • claude.ai login or a Console API key (enabled by default on Console)
  • Team/Enterprise: admin must enable channels in managed settings

Related: Channels as an event receiver: CI, deploys, and webhooks · Computer use — when the terminal is not enough · Remote control from your phone

Free guide

51 tips to master Claude Code.

One page per tip. Five chapters. What I actually use daily in production — no theory, no fluff.

  • I. Getting started 10 tips
  • II. Awareness 3 tips
  • III. Mastery 22 tips
  • IV. Autonomy 10 tips
  • V. Comparison 6 tips
Are you a professional Web developer?

You'll receive the guide by email · You join the Gravitas newsletter · Unsubscribe anytime

of 51
#

Wmedia · 51 Tips
Free guide · 51 tips · 5 chapters

51 tips to master Claude Code.

Are you a professional Web developer? · Unsubscribe anytime