Remote OpenClaw Blog
Claude Code Channels: Complete Setup and Integration Guide
6 min read ·
Claude Code Channels are MCP-based plugins that push events from Telegram, Discord, iMessage, or custom webhooks into an active Claude Code session on your local machine. Launched as a research preview on March 20, 2026, channels require Claude Code v2.1.80 or later and a claude.ai login. For a higher-level overview of what channels are and how they compare to OpenClaw, see our companion post: Claude Code Channels Explained.
Prerequisites and Requirements
Claude Code Channels requires Claude Code v2.1.80 or later, installed and authenticated with a claude.ai account. Console and API key authentication are not supported for channels.
| Requirement | Details |
|---|---|
| Claude Code version | v2.1.80+ |
| Authentication | claude.ai login only (not API key) |
| OS (Telegram/Discord) | macOS, Linux, Windows (WSL) |
| OS (iMessage) | macOS only |
| Feature status | Research preview (as of April 2026) |
Verify your Claude Code version before starting:
claude --version
# Must be 2.1.80 or higher
If you need to update:
npm install -g @anthropic-ai/claude-code@latest
Telegram Channel Setup
Telegram is the fastest channel to set up — roughly 5 minutes from start to working integration. No server invite or additional configuration is needed beyond a bot token from BotFather.
Step 1: Create a Telegram Bot
Open Telegram and search for @BotFather. Send /newbot and follow the prompts:
- Enter a display name for your bot (e.g., "My Claude Agent")
- Enter a unique username ending in
bot(e.g., "my_claude_agent_bot") - Copy the bot token BotFather returns — you will need it in the next step
Step 2: Install and Launch
# Install the Telegram channel plugin
claude /plugin install telegram@claude-plugins-official
# Launch Claude Code with the Telegram channel
claude --channels plugin:telegram@claude-plugins-official
When prompted, paste your BotFather token. Claude Code will confirm the connection and display a link to your bot.
Step 3: Test the Connection
Open your bot in Telegram and send a message like "What files are in this directory?" Claude will process the message using your local environment and reply through Telegram.
Telegram Tips
- Messages sent while the session is down are lost — Telegram does not queue them
- Use
/startin your bot chat to verify the connection is active - Keep the bot token secret — anyone with the token can impersonate requests
Discord Channel Setup
Discord setup takes roughly 10-15 minutes and requires creating a bot application in the Discord Developer Portal.
Step 1: Create a Discord Application
- Go to the Discord Developer Portal and click New Application
- Name your application and accept the Terms of Service
- In the Bot section, click Reset Token and copy the token
- Scroll to Privileged Gateway Intents and enable Message Content Intent
Step 2: Invite the Bot to Your Server
In the Developer Portal, go to OAuth2 > URL Generator:
- Under Scopes, check
bot - Under Bot Permissions, check
Send Messages,Read Message History, andRead Messages/View Channels - Copy the generated URL and open it in your browser to invite the bot to your server
Step 3: Install and Launch
# Install the Discord channel plugin
claude /plugin install discord@claude-plugins-official
# Launch with the Discord channel
claude --channels plugin:discord@claude-plugins-official
Paste your bot token when prompted. Claude Code will confirm the connection.
Discord Tips
- Messages sent while the session is down are queued — Discord's
fetch_messagesretrieves them when the bot reconnects - Restrict the bot to specific channels using Discord's role permissions to avoid unintended interactions
- The Message Content Intent is mandatory — without it, the bot receives empty messages
Best Next Step
Use the marketplace filters to choose the right OpenClaw bundle, persona, or skill for the job you want to automate.
iMessage Channel Setup
iMessage support was added one week after the initial channels launch and is macOS-only. It requires Full Disk Access because the plugin reads the local Messages database.
Step 1: Install the Plugin
claude /plugin install imessage@claude-plugins-official
Step 2: Launch with iMessage Channel
claude --channels plugin:imessage@claude-plugins-official
Step 3: Grant Full Disk Access
macOS will prompt for Full Disk Access permission. If you click Don't Allow, grant it manually:
- Open System Settings > Privacy & Security > Full Disk Access
- Add your terminal application (Terminal.app, iTerm2, Warp, etc.)
- Restart the Claude Code session
According to the official plugin documentation, iMessage integration reads from the local Messages SQLite database — it does not use Apple's Push Notification service.
iMessage Limitations
- macOS only — Linux and Windows cannot use this channel
- Requires Full Disk Access (a significant permission grant)
- Only works with iMessage conversations, not SMS fallback
Custom Webhook Setup
Custom webhooks let any system that can send an HTTP POST push events into a Claude Code session. This covers CI/CD pipelines, monitoring alerts, scheduled tasks, and third-party integrations.
The Channels reference documentation describes the protocol any MCP server must implement to work as a channel. For a quick approach, tools like Hookdeck provide a bridge between external HTTP sources and Claude Code.
Building a Minimal Webhook Channel
A custom webhook channel is a single-file MCP server that listens for HTTP requests and forwards them into your Claude Code session:
# Development mode — loads unsigned channel code
claude --dangerously-load-development-channels \
--channels ./my-webhook-channel.js
The --dangerously-load-development-channels flag is required for unsigned custom channels. Do not use this flag in production — publish your channel as a plugin for production use.
Webhook Use Cases
- CI failure alerts: GitHub Actions or GitLab CI posts failure details to Claude for automatic diagnosis
- Monitoring: Uptime or error-rate alerts trigger Claude to investigate logs
- Scheduled tasks: Cron sends periodic prompts ("Review yesterday's PRs")
Limitations and Tradeoffs
Claude Code Channels has meaningful constraints as of April 2026 that affect how you use them in practice.
The session must stay running. Closing the terminal or stopping the Claude process takes all channels offline. There is no daemon mode — channels are tied to an active terminal session. This is the single biggest difference from a 24/7 agent like OpenClaw, which runs as a persistent service.
Permission prompts block remotely. If Claude needs to execute a command that requires approval, it pauses the entire session until you approve at the terminal. There is no way to approve from the messaging platform.
Authentication is claude.ai only. API key and Console authentication are not supported, which limits integration into automated pipelines.
Channels are a research preview. Anthropic may change the API, plugin format, or supported platforms without notice.
When NOT to use channels: when you need 24/7 autonomous operation without an open terminal, when you need to approve actions remotely, when you need API-key-based authentication, or when you need production stability guarantees.
Related Guides
- Claude Code Channels: Telegram, Discord, and iMessage Explained
- Claude Code Guide
- Hermes Agent Telegram Setup
- OpenClaw vs Claude Code
FAQ
Do Claude Code Channels work without an active terminal session?
No. Channels require a running Claude Code process in your terminal. Closing the terminal or stopping Claude takes all channels offline. For 24/7 agent operation, use OpenClaw or Hermes Agent instead.
Can I run multiple channels at the same time?
Yes. You can pass multiple --channels flags to run Telegram, Discord, iMessage, and webhooks simultaneously in the same session. Each channel feeds events into the same Claude Code instance.
Is there a cost for using Claude Code Channels?
Channels themselves are free. You pay standard Claude API usage costs for the tokens Claude processes when responding to channel messages. There is no per-message or per-channel fee.
Can I use channels with the Claude API key instead of claude.ai login?
No. As of April 2026, channels require claude.ai authentication. API key and Console-based authentication are not supported. This is a requirement of the research preview.
How do Claude Code Channels differ from OpenClaw messaging?
Channels push messages into a developer's active coding session — they are a developer tool. OpenClaw is a 24/7 autonomous agent that handles conversations independently on messaging platforms without a developer present. Channels augment a coding workflow; OpenClaw replaces the need for one.
Frequently Asked Questions
How do Claude Code Channels differ from OpenClaw messaging?
Channels push messages into a developer's active coding session — they are a developer tool. OpenClaw is a 24/7 autonomous agent that handles conversations independently on messaging platforms without a developer present. Channels augment a coding workflow; OpenClaw replaces the need for one.