Report this

What is the reason for this report?

Edit Your Production Code from Telegram

Published on February 18, 2026
Amit Jotwani

By Amit Jotwani

Developer Educator

Edit Your Production Code from Telegram

If you’ve been exploring OpenClaw but feel like it’s a bit much for what you need—and all you really want is to update or fix your code from Telegram—there’s a much simpler option.

Recently on X, @levelsio pointed to an open source project called Claude Code Telegram created by Richard Atkinson. It does one thing really well: it lets you send messages over Telegram to Claude Code running on your server.

No multi-agent orchestration. No dasboard. No exposed control plane.

Telegram bot conversation

Just you → Telegram → your Droplet → your code.

If that’s what you’re after, here’s how to set it up on a DigitalOcean Droplet.

Create a DigitalOcean Droplet

We’ll first need to create a DigitalOcean Droplet. If you don’t already have a server, you’ll need a basic Ubuntu droplet.

In the DigitalOcean control panel:

  1. Click Create → Droplets
  2. Choose Ubuntu (latest LTS version is fine)
  3. Pick a basic plan (the smallest size works for experimenting)
  4. Choose your region
  5. Add your SSH key (recommended)
  6. Click Create Droplet

If you need a more detailed walkthrough, you can check out our guide on how to create a droplet.

Once your Droplet is ready, SSH into it from your CLI with:

ssh root@your_droplet_ip

Make sure to change your_droplet_ip to the IP address that is provided to you after creating your droplet. Also note that it may a couple minutes for your droplet to fully set up, so if you see an error in your CLI just try again after a minute or two.

Configuring Your Droplet

Now that your droplet has been set up, we’ll configure it to facilitate all the dependencies, services, and parts necessary to let you send messages over Telegram to Claude Code.

Step 1. Update Package Lists

sudo apt update

Step 2. Install Zsh

sudo apt install zsh -y

Step 3. Install Essential Build Tools

sudo apt install build-essential procps curl file git -y

This installs compilers, process utilities, curl, file detection, and git.

Step 4. Install GitHub CLI

sudo apt install gh

After installation is complete, authenticate the GitHub CLi by running:

gh auth login

Note that this is separate from SSH keys. After you run the command, follow the prompts:

  1. Select GitHub.com
  2. Select HTTPS
  3. Say Y to authenticate Git with GitHub credentials
  4. Choose Paste an authentication token

Generate a token locally at:

https://github.com/settings/tokens

Use:

  • repo
  • read:org

Then verify:

gh auth status

Step 5. Install Oh My Zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Step 6. Install Python Dependencies

sudo apt install -y curl python3-venv python3-pip

Step 7. Generate an SSH Deploy Key

ssh-keygen -t ed25519 -C "do-droplet-deploy-key" -f ~/.ssh/github_deploy_key

Step 8. Add the Public Key to GitHub

Print your public key in your CLI using:

cat ~/.ssh/github_deploy_key.pub

Copy and pate your key, and then add it under:

GitHub → Settings → SSH and GPG keys → New SSH key Key type: Authentication

Step 9. Configure SSH to Use the Key

cat >> ~/.ssh/config <<'EOF'
Host github.com
  HostName github.com
  User git
  IdentityFile ~/.ssh/github_deploy_key
  IdentitiesOnly yes
EOF

Step 10. Lock Down SSH Config Permissions

chmod 600 ~/.ssh/config

Step 11. Pre-Register GitHub’s Host Identity

ssh-keyscan -H github.com >> ~/.ssh/known_hosts

Step 12. Set known_hosts Permissions

chmod 644 ~/.ssh/known_hosts

Step 13. Install Poetry

curl -sSL https://install.python-poetry.org | python3 -

Step 14. Add Poetry to Your PATH

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

Step 15. Verify Poetry Installation

poetry --version

Install Claude Code

Step 1. Install Claude Code

curl -fsSL https://claude.ai/install.sh | bash

If you’re SSHing in with Ghostty and see terminal issues, run:

echo 'export TERM=xterm-256color' >> ~/.zshrc
source ~/.zshrc

Step 2. Set Your Anthropic API Key

nano ~/.zshrc

Add:

export ANTHROPIC_API_KEY="sk-..."

Reload:

source ~/.zshrc

Step 3. Clone Claude Code Telegram

git clone git@github.com:RichardAtCT/claude-code-telegram.git
cd claude-code-telegram

Use the SSH URL (git@github.com:), not HTTPS.

Step 4. Install Bot Dependencies

make dev

If you see:

Command not found: pre-commit
pre-commit not configured yet

That’s normal and safe to ignore.

Set Up Telegram

Step 1. Create a Telegram Bot

In Telegram:

  1. Message @BotFather
  2. Run /newbot
  3. Choose a name (must end with bot)
  4. Save the token

Step 2. Configure the Bot

mkdir /root/projects
cp .env.example .env
nano .env

Fill in:

TELEGRAM_BOT_TOKEN=<your token>
TELEGRAM_BOT_USERNAME=<your bot username>
APPROVED_DIRECTORY=/root/projects
ALLOWED_USERS=<your Telegram user ID>
USE_SDK=true

To get your Telegram user ID, message @userinfobot.

The ALLOWED_USERS setting is important — the bot ignores everyone else.

Step 3. Run the Bot

Once your bot has been setup, run the following command for the first run in debug mode:

make run-debug

Or the following command for normal mode:

make run

Conclusion

Now that it’s been setup, you can send messages on Telegram like:

Let’s remove the about link from the header nav on the rootein GitHub repo

Claude Code then runs locally on your Droplet, reads your repo, makes the changes, and responds back in Telegram.

No heavy framework. No exposed agent. Just a tight loop between you and your server.

If OpenClaw feels like overkill and you just want something simple you can understand and control, this is a very practical middle ground.

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about our products

About the author

Amit Jotwani
Amit Jotwani
Author
Developer Educator
See author profile

Amit is a Developer Advocate at DigitalOcean 🐳, where he helps developers build and ship better apps on the cloud. Compulsive Seinfeld quoter. LEGO nerd. 🧱 AMA.

Still looking for an answer?

Was this helpful?


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Creative CommonsThis work is licensed under a Creative Commons Attribution-NonCommercial- ShareAlike 4.0 International License.
Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.