Telegram plugin: stale bun server.ts processes persist for days after CLI sessions are closed (idle ~120-130 MB RAM each)
Description
After enabling the Telegram channel integration in Claude Code CLI, each CLI session spawns a bun server.ts process for the Telegram plugin. When the CLI session is closed, these bun processes are not cleaned up and remain running as orphan/zombie processes indefinitely.
Unlike #43073 and #44670 (which describe 100% CPU zombies), these processes sit idle — no CPU usage, but consuming ~120–130 MB RSS each — and accumulate over multiple days.
Steps to Reproduce
- Enable Telegram channel in Claude Code CLI (
/telegram:configure) - Start a Claude Code CLI session (Telegram plugin
bun server.tsstarts) - Close/terminate the CLI session (
exitor Ctrl+C) - Check for lingering bun processes:
ps aux | grep "bun.*server.ts" - Repeat across multiple days / multiple sessions
Observed Behavior
After 6+ CLI sessions over several days (Thu → Fri → Mon → Wed → Thu → Fri), all 6 bun plugin processes were still running:
PID RSS STARTED COMMAND
63416 125 MB Thu11PM /Users/…/.bun/bin/bun server.ts (cwd: telegram/0.0.4)
19098 128 MB Fri12AM /Users/…/.bun/bin/bun server.ts (cwd: telegram/0.0.4)
93509 132 MB Thu06PM /Users/…/.bun/bin/bun server.ts (cwd: telegram/0.0.4)
54268 130 MB Fri04PM /Users/…/.bun/bin/bun server.ts (cwd: telegram/0.0.4)
64038 122 MB Tue03PM /Users/…/.bun/bin/bun server.ts (cwd: telegram/0.0.4)
58294 120 MB Fri04PM /Users/…/.bun/bin/bun server.ts (cwd: telegram/0.0.4)
Total leaked RAM: ~757 MB across 6 orphaned processes.
Expected Behavior
When a Claude Code CLI session terminates, the Telegram plugin bun server.ts process spawned for that session should be killed/cleaned up.
Environment
- Platform: macOS 15.x (Darwin 25.3.0)
- Shell: zsh
- Claude Code version: latest (claude-sonnet-4-6)
- Telegram plugin version: 0.0.4
Related Issues
- #43073 — similar zombie processes but with 100% CPU
- #44670 — similar zombie processes with CPU spike
- #44959 — orphan processes pinning CPU core
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗