← ClaudeAtlas

telegram-channel-watchdoglisted

Keeps a Claude Code (or Codex) agent running on a Telegram channel alive in production, and diagnoses the three ways it goes silent while every status light stays green. Covers the real three-stage process tree, a systemd watchdog with two probes, conversation-preserving restarts, and the orphan poller that makes an agent "answer every other message". Triggers: "my telegram bot went silent", "claude agent stopped answering on telegram", "telegram bot answers every other message", "keep my agent alive on telegram", "systemctl says active but my telegram agent is dead", "my agent reads but never replies", "telegram channel watchdog", "claude code telegram not responding", "agent went quiet on telegram". Not for building the Telegram bridge itself (any bridge does that); this is the reliability layer the bridges do not give you.
maxbuildog/skills · ★ 0 · AI & Automation · score 76
Install: claude install-skill maxbuildog/skills
# Telegram channel watchdog ![Terminal demo: systemctl reads active while three Telegram messages sit unread; the watchdog finds the dead poller, restarts it, and all three are delivered.](assets/demo.gif) Keep an agent that talks to you on Telegram alive, and know which of the three silences you are looking at when it goes quiet. Written from two production channels that ran for months, and two real outages. **Trust the probes below, not the service status.** `systemctl` reporting `active` is the single most misleading signal here, for the reason in section 1. When a probe and your intuition disagree, the probe wins. ## When to use this - "My Telegram bot went silent" and you cannot tell if it crashed or just has nothing to say. - "It answers every other message." - "`systemctl status` says `active (running)`, but nothing reaches me." - You are about to wire a new bot onto an agent and want it to survive the first week. - The agent clearly received a message, understood it, and still said nothing. Do not use this to build the bridge itself. Pick any Telegram bridge for that. This is what you add so the bridge does not quietly die on you. ## 1. The founding fact: the process tree has three stages A Telegram channel is not one process, it is three, stacked: ``` claude --channels plugin:telegram@... <- the session that reasons └── <bun|node> run --cwd .../telegram start <- the plugin launcher └── <bun|node> server.ts <- THE POLLER. it ru