Telegram is the right channel when Slack isn't an option — you're outside the workspace's Slack tenant, you're collaborating with a group that lives on Telegram, or you want a lightweight mobile DM channel with Zero that's separate from your team's Slack.
You bring your own bot. Each Telegram bot is bound to a single agent in your VM0 workspace, so a personal bot and a team bot can route to different agents with different skills.
Connecting
- Talk to @BotFather in Telegram. Run
/newbot, name your bot, and copy the token BotFather gives you. - In VM0, open Where Zero works and choose Telegram.
- Paste the bot token. Pick which agent the bot should route to.
- (For group use) Disable the bot's privacy mode in BotFather:
/setprivacy→ choose your bot → Disable. Without this, the bot can only see messages that directly @mention it; with it disabled, the bot reads the group context around mentions and replies. - Open Telegram and send the bot a message. The first message starts a linked session in VM0.
How you use Zero on Telegram
Two primary patterns:
DM the bot. Behaves like a private chat with Zero. Messages, files, photos — Zero sees them all. Each DM thread maps to a session in VM0.
Add the bot to a group. With privacy mode disabled, the bot reads messages around mentions and replies. @mention the bot or reply to its messages to keep a flow going. Other group members never see Zero's reasoning, just the result the bot posts back.
Common Telegram workflows
- Mobile inbox triage. On the train, DM your bot: "summarize my unread Slack from #cs." Zero replies in seconds.
- Vendor or partner groups. Add the bot to a group with people outside your company. The bot handles scheduling, reminders, or translation without exposing your internal Slack.
- Per-agent bots. Bind a research bot to your research agent and a personal bot to your personal agent. Same Telegram app, different bots, different agents.
Per-agent routing
Each bot token is bound to exactly one agent. If you want a different agent answering, create a second bot in BotFather and bind it. This is by design: a Telegram bot's identity is the agent's identity for that surface.
File support
Telegram supports photos, voice notes, documents, and PDFs. Zero ingests all of them as session inputs. Outbound files (artifacts Zero produces) are returned as Telegram documents or images inline.
Common pitfalls
- Bot doesn't reply in a group. Privacy mode is still on. Re-run
/setprivacyin BotFather → Disable, then remove and re-add the bot to the group. - Wrong agent answering. The bot token is bound to a single agent. To change, swap the binding on Where Zero works, or use a separate bot.
- Bot token leaked. Rotate it in BotFather (
/revoke), then update the token in VM0. The old token immediately stops working.
What's next
- See Skills for capturing recurring mobile workflows.
- See Permissions for what Zero can and can't do via your bot.