← Open-source Telegram bots

hanxiao/claudecode-telegram: source audit, 2026-10-10

Read from the source at commit c925f90e0b54; the bot was not run (it needs a BotFather token). Each answer cites the file and line that shows it. All 20 bots

In short

Anyone who messages the bot, and anyone who can POST to the webhook URL, gets their text typed into a Claude Code session running with permissions skipped. Do not expose it without adding your own sender check and webhook secret.

What the source shows

AnswerWhere
Who can use itHas no allowlist at all: anyone who finds the bot can use itbridge.py:162-169 — handle_message reads chat_id and writes it to a file with no sender check; bridge.py:262 — tmux_send(text)
With no allowlist setnone exists: no allowlist, chat ID check or webhook secret in bridge.pybridge.py:113-120 — do_POST handles any update with no secret-token check; bridge.py:279 — HTTPServer(("0.0.0.0", PORT), Handler)
Before the agent actsruns the agent with permission prompts switched offbridge.py:148 — claude --resume {session_id} --dangerously-skip-permissions; also :158 and :207
Bot tokenRead from the environment or a config file; no real token is committed