telegram-ai-bridge

communication MCP Server

Run N parallel Claude Code sessions from your phone. Shared memory, per-bot personas, War Room mode. Self-hosted Telegram bridge for CC / Codex / Gemini.

Verified
communicationcommunication
7 views8 stars4 forksv3.1.0MIT

Why This Matters

Discovered via github-topic:mcp and last synced 5mo ago.

Verified
Source
github-topic:mcp
Stars
8
Last synced
5mo ago
Install
Check source

Install

Install instructions not detected yet

Check the source repository for the latest setup steps.

View source instructions
16
Tools
0
Resources
0
Prompts
Standard I/O
Transport

Available Tools (16)

codex

gemini) → local credentials and session files ``` Each bot instance keeps its own Telegram token, SQLite DBs, credential directory, and model settings. --- <details> <summary><strong>Configuration</strong></summary> `bun run bootstrap --backend claude` generates a starter `config.json`. Or copy `config.example.json`. ```json { "shared": { "ownerTelegramId": "123456789", "cwd": "/Users/you", "httpProxy": "", "defaultVerboseLevel": 1, "executor": "direct", "tasksDb": "tasks.db", "sharedContextBackend": "sqlite", "sharedContextDb": "shared-context.db", "redisUrl": "", "streamPreviewEnabled": true }, "backends": { "claude": { "enabled": true, "telegramBotToken": "...", "sessionsDb": "sessions.db", "model": "claude-sonnet-4-6", "permissionMode": "default" }, "codex": { "enabled": true, "telegramBotToken": "...", "sessionsDb": "sessions-codex.db", "model": "" }, "gemini": { "enabled": false, "telegramBotToken": "", "sessionsDb": "sessions-gemini.db", "model": "gemini-2.5-pro", "oauthClientId": "", "oauthClientSecret": "", "googleCloudProject": "" } } } ``` `config.json` is gitignored. Sessions run until completion — no hard timeout (a soft watchdog logs after 15 minutes without aborting). Inspect resolved config: `bun run config --backend claude` (secrets redacted). </details> <details> <summary><strong>Backend Notes</strong></summary> **Claude:** - Requires local login state under `~/.claude/` - Supports `permissionMode`: `default` or `bypassPermissions` **Codex:** - Requires local login state under `~/.codex/` - Optional `model` override; empty string uses Codex defaults **Gemini:** - Experimental compatibility backend, not primary - Requires `~/.gemini/oauth_creds.json`, `oauthClientId`, `oauthClientSecret` - Uses Gemini Code Assist API mode, not full CLI terminal control - Recommended only when you intentionally need Gemini support </details> ## Multi-Instance Deployment Run N parallel Claude Code instances, each with its own Telegram bot: **1. Create a bot** — message @BotFather on Telegram, get a token. **2. Create a config file** — copy and customize: ```bash cp config.json config-2.json # Edit config-2.json: change telegramBotToken, sessionsDb, tasksDb ``` ```json { "shared": { "ownerTelegramId": "YOUR_ID", "tasksDb": "tasks-2.db" }, "backends": { "claude": { "enabled": true, "telegramBotToken": "NEW_TOKEN_FROM_BOTFATHER", "sessionsDb": "sessions-2.db", "model": "claude-opus-4-6", "permissionMode": "bypassPermissions" } } } ``` **3. Start it:** ```bash bun run start --backend claude --config config-2.json ``` **4. (Optional) Register as LaunchAgent** for auto-start: ```bash # The run script accepts an optional config path as second argument: # scripts/run-launch-agent.sh <backend> [config-file] ``` See the LaunchAgent section below for plist setup. > **What's shared vs isolated:** > >

Yes

Research preview

MCP

Built-in `codex mcp-server` + `claude mcp serve`, zero code

Session-tied

Gateway

redis

`ioredis`

Command

Description

gemini

Gemini Code Assist API

Project

Description

Backend

Dependencies

Feature

[Remote Control](https://code.claude.com/docs/en/remote-control)

claude

Claude Code (via Agent SDK)

Layer

Protocol

2

Change progress verbosity

Channels

OpenClaw

Provider-locked

All three, per-chat switchable

json

None (built-in)