Telegram plugin polls in ALL sessions, not just --channels sessions

Resolved 💬 3 comments Opened Mar 25, 2026 by psljkim-bit Closed Mar 25, 2026

Bug Description

The Telegram plugin starts getUpdates polling in every Claude Code session where the plugin is installed, not just the session launched with --channels plugin:telegram@claude-plugins-official.

Expected Behavior

Only the session started with --channels plugin:telegram should start the Telegram bot polling process. Other sessions should load the MCP tools (reply, react, etc.) but not start polling.

Actual Behavior

Every Claude Code session spawns a bun run process for the Telegram plugin:

1863 ttys000  bun run --cwd .../telegram/0.0.4 --shell=bun --silent start
1703 ttys001  bun run --cwd .../telegram/0.0.4 --shell=bun --silent start
1566 ttys002  bun run --cwd .../telegram/0.0.4 --shell=bun --silent start
...
1256 ttys007  bun run --cwd .../telegram/0.0.4 --shell=bun --silent start  ← only this one has --channels

All 8 processes call getUpdates simultaneously, causing messages to be randomly consumed by non-channel sessions. The --channels session misses most messages.

Workaround

Manually kill the polling processes from non-channel sessions:

# Keep only the --channels session's bun process alive
kill <pid_of_other_sessions>

Environment

  • macOS (Apple Silicon, Mac Studio M4 Max)
  • Claude Code with Telegram plugin v0.0.4
  • 8 terminal sessions open, only 1 with --channels

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗