It’s 2am. Your staging deployment just failed. GitHub Actions sent a notification, Slack has three messages from the on-call engineer asking what happened, and nobody’s looking at any of it because everyone is asleep.
Old world: you find out in the morning, do triage over coffee, and the fix ships mid-afternoon. The pipeline was broken for twelve hours before anyone touched it.
New world with Claude Channels: the failure hits Telegram, Claude Code wakes up, investigates the logs, traces the error, pushes a fix, runs the build again, and messages you back with a three-sentence summary of what happened and what it did. You wake up to a resolved incident instead of an open one.
That’s not a demo scenario. That’s the literal capability Anthropic shipped on March 20, 2026 — and it fundamentally changes what “agentic” actually means in practice.
Step 1: What Channels Is (and Why the Reactive vs. Proactive Problem Matters)
Every AI workflow until now has been pull-based. You open a session, describe what you need, Claude does the work, you close the session. It’s powerful — but it’s still you initiating every single action. Claude sits idle until you show up.
Channels flips that model. It lets external events — a CI failure, a GitHub notification, a Telegram message from a teammate, a Discord mention in your dev server — push directly into a running Claude Code session as triggers for autonomous action. Claude isn’t waiting for you to ask. It’s listening for events, and when they arrive, it works.
The technical implementation is MCP. Channels are MCP servers — specifically, servers that connect Claude Code to messaging infrastructure. Telegram and Discord are the launch integrations, but the protocol is open, which means the surface area will expand fast.
What this unlocks is a different category of automation. Not “Claude helps me do a thing faster” but “Claude handles a class of things without me.” The reactive vs. proactive distinction sounds academic until you experience the difference in your actual operational cadence. Then it’s obvious.
What you need to get started:
Claude Code v2.1.80 or later (check with
claude --version)Bun runtime installed (
curl -fsSL https://bun.sh/install | bash)A claude.ai account (login required — Channels uses your claude.ai identity for the MCP connection)
Either a Telegram bot token or Discord bot token depending on which channel you’re connecting
Step 2: Setup — Installing the MCP Server and Configuring Your Channel
The Channels MCP server is what bridges your messaging platform to Claude Code. You’re adding it the same way you’d add any MCP server — a JSON configuration block that tells Claude Code where to find it and how to run it.
Step 1: Install the Channels server via Bun
bunx @anthropic-ai/claude-channels installThis installs the server binary and sets up the local runtime. Bun handles the dependency resolution — the reason Bun is required over Node is startup speed. Channels needs to respond to inbound events fast, and Bun’s cold-start time is roughly 4x faster than Node for this workload.
Step 2: Add the MCP configuration to Claude Code
Open or create ~/.claude/claude_desktop_config.json and add the following under mcpServers:
{
"mcpServers": {
"channels": {
"command": "bunx",
"args": ["@anthropic-ai/claude-channels", "serve"],
"env": {
"CLAUDE_CHANNELS_AUTH": "your-claude-ai-token"
}
}
}
}Your CLAUDE_CHANNELS_AUTH token is available in your claude.ai account settings under Developer → API Tokens. Generate one scoped to Channels if you want to limit surface area.
Step 3: Configure your first messaging platform
For Telegram, you need a bot token. Get one from BotFather — open Telegram, search @BotFather, send /newbot, follow the prompts. Copy the token it gives you.
claude channels add telegram --token YOUR_BOT_TOKEN --name "claude-ops"For Discord, you need a bot token from the Discord Developer Portal (discord.com/developers/applications). Create an application, add a bot, copy the token.
claude channels add discord --token YOUR_BOT_TOKEN --guild YOUR_SERVER_ID --name "claude-ops"Step 4: Restart Claude Code
claude restartOn startup, Claude Code will initialize the Channels server and establish the connection to your configured platform. You’ll see a confirmation in the terminal output: Channels: connected (telegram: claude-ops).
Step 3: Your First Channel — Send a Message, Watch Claude React
With the server running and Telegram connected, you have a live two-way bridge between your phone and a Claude Code session.
Open Telegram. Find the bot you just created — search by the username you gave it during BotFather setup. Send it a message:
@yourbot what's the current state of my project?Watch your terminal. Claude Code receives the message as an injected prompt, runs against your current working directory, and responds — both in the terminal and back to you in Telegram.
That first response will feel underwhelming if you ask something generic. The capability reveals itself when you send it something with real operational context.
Try this instead:
@yourbot run git log --oneline -10 and tell me what's been committed in the last 48 hoursClaude executes the command, reads the output, and sends you a clean summary in Telegram. You just ran a terminal command from your phone via a chat message. That’s the primitive. Everything else in this guide builds on it.
A few things to understand about how the two-way messaging works before you go further:
Claude Code sends messages back through the same channel that triggered it. If the message came from Telegram, the response goes to Telegram. If it came from Discord, it goes to Discord. The session stays alive between triggers — Claude maintains context across multiple messages in the same channel thread, which means you can have a real back-and-forth from your phone without typing a single character in a terminal.
Message length is capped at Telegram’s standard 4096 characters per message. For longer outputs — log analysis, full reports — Claude will chunk the response automatically. You can override this with an instruction in your trigger message: “respond in under 200 words” keeps things clean for quick status checks.
Keep reading with a 7-day free trial
Subscribe to GTM AI Podcast & Newsletter to keep reading this post and get 7 days of free access to the full post archives.

