Create a Telegram Bot
Talk to BotFather
Get your Telegram user ID
Talk to @userinfobot to get your numeric user ID.
Features
The Telegram transport supports:- Text messages — full conversation with agents
- Voice messages — transcribed via Whisper, replied to with TTS (requires ElevenLabs)
- File attachments — agents send research reports and files as Telegram documents
- Proactive messages — heartbeat and cron results delivered to your phone
- Rich formatting — Markdown-to-HTML conversion for code blocks, bold, lists
User Authorization
By default, only the owner (configured viaTELEGRAM_OWNER_ID) can use the bot. Manage access with:
| Command | Description |
|---|---|
/authorize <user_id> | Grant access to a user |
/revoke <user_id> | Remove access |
.octo/authorized_users.json.
Shared State
The Telegram bot shares the same conversation thread and graph lock as the CLI. This means:- Messages from CLI and Telegram appear in the same conversation
- Agents have full context regardless of which transport you use
- The
asyncio.Lockprevents race conditions between transports
Voice
Enable voice responses with ElevenLabs:/voice on or /voice off.
