Claude Code Channels + Telegram
Drive Claude Code on your computer from Telegram
黃志弘 Leo
Published 2026-03-31 · Updated 2026-10-08 · 3 readers
What Channels is
Channels is a feature Anthropic shipped on March 20, 2026, and as of October 2026 it is still a research preview, so the command syntax may change. It lets you command Claude Code through Telegram, Discord or iMessage, so you do not have to sit at the computer. Open Telegram on your phone and you are working.
I use it this way every day: when I am out, I send a line from my phone like "make the homepage heading 24px" or "check yesterday's site traffic", Claude Code on my computer does it, and the result comes back in Telegram.
The setup flow
On the computer:
① Install Claude Code + Bun
② Install the Telegram plugin inside Claude Code
③ In Claude Code, run /telegram:configure and paste your token
④ Quit, then relaunch with claude --channels ... from the terminal
On Telegram, on your phone:
⑤ Create a Telegram bot (chat with @BotFather)
⑥ Copy the bot token (paste it in step ③)
⑦ Once the computer is running, message the bot to pair
Order matters: set everything up on the computer first, then go to Telegram and send a message.
If Telegram goes first, the bot stays silent, because the computer is not ready yet.
What you need first
- Claude Code installed
- A claude.ai login (Pro or Max both work) or an Anthropic Console API key. On Team and Enterprise, an admin has to turn it on first
- The Telegram app (phone or desktop, either works)
- Bun (the Channels plugin needs it), the install command is below
- A computer running Claude Code (Mac, Windows or Linux)
First time with Terminal
Mac: Press ⌘ + Space (Spotlight), type Terminal and press Enter.
Or go to Applications → Utilities → Terminal.
Windows: Press the Win key and search for PowerShell or CMD and press Enter.
You do not need WSL2; install it only if you prefer Linux commands.
Install Claude Code first
On Mac, open Terminal, copy and paste this line:
curl -fsSL https://claude.ai/install.sh | bashOn Windows, open PowerShell and paste this line instead:
irm https://claude.ai/install.ps1 | iexIt shows no progress while it downloads. When it finishes, open a new terminal window.
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc && source ~/.zshrcConfirm the install worked:
claude --versionIf it prints a version number (anything starting with2.x.x works), you are set.
Then run claude to start it. The first run asks you to log in to your Anthropic account.
Install Bun (the Channels plugin needs it)
Copy and paste this line:
curl -fsSL https://bun.sh/install | bashOn Windows, paste this in PowerShell instead:
powershell -c "irm bun.sh/install.ps1 | iex"If bun --version next says “command not found”, on Mac paste this line to set PATH:
echo 'export BUN_INSTALL="$HOME/.bun"' >> ~/.zshrc && echo 'export PATH="$BUN_INSTALL/bin:$PATH"' >> ~/.zshrc && source ~/.zshrcConfirm the install worked:
bun --versionA version number means you are good.
Step 1: Create a Telegram bot
Find BotFather
Open Telegram and search for @BotFather(Telegram's official bot manager).
Open the chat and send this command:
/newbotName your bot
- BotFather asks for your bot's display name (anything you like, you can change it later)
For example:My Claude Code - Then it asks for your bot's username (it has to end in
botand be unique worldwide)
For example:leo_claude_bot - Once that works, BotFather hands you a bot token
Copy the bot token
A token looks like this:
123456789:ABCDefGhIjKlMnOpQrStUvWxYzStep 2: Install the plugin and launch
Install the Telegram plugin
Open Claude Code (type claudein Terminal), then inside it type:
/plugin install telegram@claude-plugins-officialIf it says the plugin cannot be found, run this first to add the official marketplace:
/plugin marketplace add anthropics/claude-plugins-officialThen install it again.
> Install for you (user scope) ← pick this one, press Enter Install for all collaborators (project scope) Install for you, in this repo only (local scope) Back to plugin listTake the first one, Install for you, so the plugin works in every project of yours.
Once it is installed, run:
/reload-pluginsSet the bot token
Inside Claude Code, type this line followed by the token BotFather gave you:
/telegram:configure YOUR_TOKENRun
/reload-plugins or restart Claude Code, then run the line above again.The error has nothing to do with including the token. The full fix is in the FAQ at the bottom.
~/.claude/channels/telegram/.env, you only set it once.Start Claude Code + Channels
Quit Claude Code first, then relaunch with this command:
claude --channels plugin:telegram@claude-plugins-officialWhen the Telegram plugin loads, you are connected.
Step 3: Pair and test
The Telegram bot's replies come from Claude Code. If the terminal is closed, or the channels command is not running, the bot will not send back a pairing code (it looks broken, but really nobody is picking up).
Open the terminal and check this is running:
claude --channels plugin:telegram@claude-plugins-official(the command from the previous step, keep that window open)
- Open Telegram and search for the bot you just created (by the username you set)
- Send the bot any message (“hi”, for example)
- The bot replies with a 6-digit pairing code
- Back in Claude Code, type this command (swap XXXXXX for the code you got):
/telegram:access pair XXXXXXOnce paired, lock it down so only you can drive it:
/telegram:access policy allowlistNow go back to Telegram and send a test message:
Hi, tell me what the current working directory isIf the bot answers with your working directory, Channels is set up.
Keep the connection alive with tmux
Closing the terminal drops the connection. Use tmux so Claude Code keeps running in the background:
# create a tmux session named claude
tmux new -s claude
# start channels inside it
claude --channels plugin:telegram@claude-plugins-official
# press Ctrl+B then D to leave (it keeps running)
# to come back later: tmux attach -t claudeAway from the computer and Claude asks for permission
Before Claude edits a file or runs a command, it asks whether you allow it. At the computer you click once. Away from it, the whole job stops and waits for you to come back.
The official Telegram plugin forwards that question to your Telegram with Allow and Deny buttons, and See more shows what it wants to do first. Tap on your phone and the computer carries on.
The question only goes to accounts you paired and put on the allowlist. Whoever can tap that button decides what runs on your computer, so keep only yourself on the list.
There is also a launch flag, --dangerously-skip-permissions, that skips most of these questions. It lets Claude act without asking you, so use it only in an environment you trust, and leave it off while you are new to this.
How I actually use it
Want to see how I use Channels to post, watch communities, and answer comments?
These are the workflows I actually run
Includes: scheduled posting / community monitoring / smart replies / data reports
DM @kanisleo328 on IG and let's talkFAQ
/telegram:configure says “Unknown skill”?
The Telegram plugin did not install properly. Fix it in this order:
1. Check whether the plugin is there:
/plugin list2. If telegram is missing, add the marketplace:
/plugin marketplace add anthropics/claude-plugins-official3. Install it again (pick “Install for you” and press Enter):
/plugin install telegram@claude-plugins-official4. Reload after installing:
/reload-plugins5. Run the setup again, with your token after it as before:
/telegram:configure your-tokenInstalled Claude Code but typing claude says “command not found”?
PATH is not set. Copy and paste this line, then press Enter:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc && source ~/.zshrcIf it still cannot find it, close Terminal, open a fresh one, and type claude.
Installed Bun but typing bun says “command not found”?
Same PATH problem as above. Copy and paste:
echo 'export BUN_INSTALL="$HOME/.bun"' >> ~/.zshrc && echo 'export PATH="$BUN_INSTALL/bin:$PATH"' >> ~/.zshrc && source ~/.zshrcThe bot does not respond, now what?
Check in this order:
1. The computer is on and Claude Code is running
2. The bot token has no typos (open ~/.claude/channels/telegram/.env to confirm)
3. Restart with claude --channels plugin:telegram@claude-plugins-official
4. Confirm Telegram has a working network connection
Can several people use it at once?
Yes, but be careful about security. Channels supports an allowlist, so you can name which Telegram user IDs may drive your Claude Code. Only add people you trust, this is the same as letting them work your computer remotely.
Does it disconnect when the Mac shuts down?
Yes. Channels needs your computer to keep running Claude Code. Shutting down, sleeping, or closing the terminal all cut the connection. Use tmux or screen to keep the session alive, and set the Mac not to sleep on its own.
How is it different from OpenClaw?
Channels is an official Anthropic feature: you install one plugin inside Claude Code, with no server to host and no third-party service in between, and it updates along with Claude Code. OpenClaw is a community-built open-source tool that you install and configure separately.
How is it different from Remote Control?
Remote Control uses the Claude app or claude.ai to drive the Claude Code session already running on your computer, and you see the same screen you would at your desk.
Channels sends messages in from chat apps like Telegram or Discord, and Claude answers back in the chat when it is done.
Use Remote Control when you want to watch the whole session from your phone. Use Channels when you want to hand off tasks the way you would message an assistant, or let notifications from other services flow in automatically.
Does it remember what we said earlier in Telegram?
Within the same session, yes. Say "that one above" and it knows what you mean.
But a Telegram bot cannot read chat history, it only receives new messages. After Claude Code restarts, or after you clear the session with /clear, you can still see the old messages in Telegram, but Claude starts from zero. Repeat the background or paste the earlier messages in.
Messages you send while the computer is off are not lost: Telegram holds them (for up to 24 hours) and Claude Code receives them once it is back.
What I do: before clearing a session, I ask it to write a handoff note on the work in progress, and the first thing a new session does is read that note.
Is it safe? Where does the data go?
Your commands travel through the Telegram Bot API to Claude Code on your own computer, and Claude Code processes them through the Anthropic API. That means the code and file contents Claude reads go to Anthropic's servers as part of the conversation for inference, so it does not all stay local. The files on your disk are not copied away, but what Claude reads does pass through Anthropic. If security worries you, set an allowlist to limit who can drive it, and keep Claude away from genuinely confidential files.