FERAL FLEET • 2026

Three Serious Telegram Channel Implementations

A detailed architectural comparison of how the official Claude Code Telegram plugin, OpenClaw, and Hermes actually solve the "agent ↔ Telegram" problem.

Jump to Grok Design Recommendations
CLAUDE CODE OFFICIAL
The Reference Channel

The grammy + MCP server that started it all. Extremely strong on security, pairing, access control, and being a well-behaved MCP channel.

Language: TypeScript (grammy)
Model: MCP "channel" with notification injection
Strength: Pairing + permissions + zombie defense
OPENCLAW
Deep Agent-Native Runtime

A complete, independent Telegram bot implementation tightly integrated into OpenClaw's plugin-sdk, conversation threading model, and runtime.

Location: extensions/telegram/
Style: Full custom bot runtime + rich plugin-sdk adapters
Strength: Threading, approvals, native commands, deep runtime integration
HERMES (Nous Research)
Resilient Gateway Platform

A first-class pluggable gateway platform with exceptional focus on real-world delivery reliability, networking resilience, and multi-platform consistency.

Location: gateway/platforms/telegram.py
Style: Abstract platform adapter + heavy networking layer
Strength: Batching, noise filtering, forum support, censored-network fallbacks

Architectural Styles

Claude Code — "MCP Channel"

A relatively focused implementation whose primary job is to be an excellent MCP server that emits notifications/claude/channel blocks. The heavy lifting for access control, pairing, and security lives in the combination of the server + the two management skills (/telegram:access and /telegram:configure).

Core Components
  • • grammy polling loop + excellent PID/zombie defense
  • • MCP tools: reply, react, edit_message, download_attachment
  • • Sophisticated access.json + pairing code system
  • • Optional remote permission relay via DM inline keyboards
Philosophy

Make Telegram feel like a first-class, secure, auditable channel for Claude Code sessions. Strong emphasis on "who is allowed to talk to this agent and when."

OpenClaw — "Deep Runtime Integration"

OpenClaw built a complete, parallel Telegram bot system from the ground up inside extensions/telegram/. It is not an adaptation of the Claude plugin — it is its own full-featured implementation that deeply understands OpenClaw's threading model, plugin system, approval flows, and conversation runtime.

Key Modules
bot-core, channel, ingress, outbound-adapter, approval-native, thread-bindings, bot-native-commands, monitor (polling + webhook)
Notable Strengths
Extremely rich threading/thread-binding system, native command surface, tight integration with OpenClaw's approval and session models.
Tradeoff
More complex and OpenClaw-specific. Less "just a channel" and more "Telegram as a first-class runtime surface."

Hermes — "Resilient Messaging Gateway"

Hermes treats messaging platforms as pluggable adapters behind a common gateway abstraction. The Telegram implementation (gateway/platforms/telegram.py + telegram_network.py) is one of many (Discord, WhatsApp, Signal, etc.). The standout characteristic is obsessive focus on reliable delivery in hostile network conditions.

Key Differentiators
DoH-based IP fallback transport, text batching, noise filtering, excellent forum/thread support, sophisticated media/audio handling rules.
Architecture
Clean abstract base class for platforms + heavy investment in the networking layer (one of the most sophisticated Telegram network resilience implementations seen).
Philosophy
"Make sure the message actually gets there, even when Telegram is being difficult."

Deep Feature Comparisons

Conversation Threading & Session Mapping

Claude

Relies on the channel notification system + basic DM vs group distinction. Threading is relatively lightweight compared to the other two.

OpenClaw

Extremely sophisticated. Has thread-bindings.ts, auto topic labeling, DM thread management, topic-agentid mapping, and deep integration with the conversation runtime. One of the most advanced Telegram threading systems in the agent space.

Hermes

Strong forum and topic support (see dedicated tests for forum commands). Focuses more on clean message delivery into the gateway than on ultra-complex internal threading models.

Networking & Resilience

Claude

Standard grammy + HTTP. No special handling for censored networks or API IP blocking documented in the core channel.

OpenClaw

Has request timeout handling, 401 backoff for sendChatAction, and network error tagging. Solid but not the primary focus.

Hermes

Best in class. Dedicated telegram_network.py with DoH-based discovery of fallback IPs for api.telegram.org, custom AsyncBaseTransport that preserves SNI while retrying on different IPs, and explicit support for heavily censored environments. This is a major differentiator.

Approvals & Human-in-the-Loop

Claude

Has the famous remote permission relay (inline keyboards in DMs for approving tool use). Very Claude-specific interactive model.

OpenClaw

Deep native approval system (approval-native.ts, exec-approval-forwarding.ts, etc.). Tightly integrated with how OpenClaw wants approvals to feel inside Telegram.

Hermes

Approvals are handled at the gateway/agent level rather than being a core feature of the Telegram platform adapter itself. More "deliver the message reliably" than "build approval UX in Telegram."

Comparison Matrix

Dimension Claude Official OpenClaw Hermes
Primary Style MCP Channel + strong security layer Full custom bot runtime + deep SDK integration Pluggable gateway platform + resilience focus
Threading Sophistication Moderate Very High (one of the best) Good (especially forums/topics)
Network Resilience Standard Good Excellent (DoH fallbacks, custom transport)
Approval UX in Telegram Strong (remote relay via DMs) Very strong (native, deeply integrated) Delegated to agent/gateway level
Multi-Platform Abstraction Telegram-only (by design) Telegram-focused with channel system Excellent (many platforms behind same gateway)
Native Commands / UI Polish Basic Extensive (bot-native-commands, inline keyboards, menus) Solid but more gateway-oriented
Coupling to Agent Runtime Loose (MCP channel contract) Very tight (designed for OpenClaw runtime) Medium (clean gateway boundary)

Recommendations for Grok Telegram Integration

Given what we've learned from the three mature implementations, here is a pragmatic recommendation for building a first-class Telegram experience for Grok (building on the existing excellent analysis in feral-cc-bots/grok/telegram-channel/).

Recommended Path: "Smart Minimal Fork + Selective Ambition"

Start with the existing high-quality plan in feral-cc-bots (minimal fork of the Claude grammy MCP server, fix paths/branding, make permission relay optional). This gets you 80-90% of the value with low risk.

Then selectively adopt the best ideas from the others:
  • From Hermes: Steal the networking resilience patterns (DoH fallbacks, custom transport). This is genuinely best-in-class and will matter a lot for international users.
  • From OpenClaw: Study their threading and conversation binding model if you want Grok bots to feel natural in long group threads or topics. Don't copy the whole runtime, but the concepts are valuable.
  • From both: Invest early in excellent media handling and chunking. Both OpenClaw and Hermes clearly treat this as a first-class problem.
Longer-term options
Option A: Stay close to the "MCP Channel" model (easiest compatibility with existing Grok runtime).
Option B: Evolve toward a "Gateway Platform" model like Hermes if Grok wants to support many messaging platforms cleanly.
Option C: Go deep like OpenClaw only if you want Telegram to be an extremely rich native surface for Grok agents (higher investment).

This comparison was built by actually reading the source of all three implementations (plus the existing Grok plans in feral-cc-bots).