Telegram plugin: inbound messages not delivered to session (outbound works)

Resolved 💬 3 comments Opened Apr 10, 2026 by gog5-ops Closed Apr 13, 2026

Description

The Telegram plugin (v0.0.4) can send outbound messages via telegram__reply tool, but inbound messages from Telegram never arrive in the Claude Code session as <channel source="telegram"> notifications.

Environment

  • OS: Windows 11 Enterprise 10.0.26200
  • Claude Code: VSCode extension
  • Plugin: telegram@claude-plugins-official v0.0.4
  • Runtime: Bun (two bun.exe processes spawn on plugin load)

Steps to Reproduce

  1. Install telegram plugin: /plugin install telegram@claude-plugins-official
  2. Configure bot token via /telegram:configure <token>
  3. Complete pairing flow — sender added to allowlist
  4. /reload-plugins
  5. Send a message from Telegram to the bot

Expected Behavior

Message appears in Claude Code session as <channel source="telegram" ...> notification.

Actual Behavior

  • No inbound message is delivered to the session
  • Outbound messages via telegram__reply tool work fine (message received on Telegram)
  • Pairing flow works (bot responds with pairing code)
  • Bot token, access.json config verified correct
  • Killed all bun processes and reloaded plugins — same result
  • Restarted Claude Code session — same result

Investigation

  • Plugin uses grammy long-polling (bot.start()) for inbound messages
  • Delivery is via MCP notification: mcp.notification({ method: 'notifications/claude/channel', ... })
  • The MCP server connects over stdio (new StdioServerTransport())
  • Two bun.exe processes spawn simultaneously (possibly parent + child), but no 409 Conflict observed
  • Access policy tested with both pairing and allowlist modes — neither delivers inbound messages

Workaround

None currently. Outbound-only communication works (user relays Telegram messages manually).

🤖 Generated with Claude Code

View original on GitHub ↗

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