Agent tabs in Telegram
Official Grok Bot still has no Telegram. I didn't install a chatbot. I made each topic an agent.
Official Grok Bot still has no Telegram. I didn’t want a chatbot in my pocket. I wanted tabs.
Tonight the always-on box grew a private Telegram forum. Each topic is one agent.
Bob. Dev Bot. Writer. Channel Digest.
Claude, Codex, Grok, Agy, Muse are topics too. Those all hit Dev Bot with a prefix so it knows which coding agent I’m talking to.
Replies stay in the topic. The laptop stays primary for coding. This is phone access to the box, not a replacement laptop.
The official product does not do this. We run an unofficial self-hosted bridge on the always-on Grok computer — a fork of ssbrouhard/grokbot-telegram-bridge.
DMs already worked. The new piece is a private Group with Topics on, bot as admin.
Dual allowlist: me, and this one group. Channels and random groups get ignored.
The longer version is the X article.
The path that actually works, said once so I don’t forget:
Private Group, not a Channel. Enable Topics — that conversion is what makes it a forum. Add the bot from inside the group by username. Make it admin. Disable privacy mode at BotFather. Put the group on the allowlist. Restart the bridge.
Then talk.
Everything else is how it looks broken when you skip a step.
Invite links do not add bots. Telegram will not let a bot join via a plus-code link. You add from inside the group: members, add, search the username.
The username has underscores. Search the wrong punctuation and Telegram returns nothing. People will omit them. I did.
If Telegram only offers “Add admin” and no members list, you made a Channel. Delete it. You need a private Group, then Topics.
Privacy mode is the silent one. The bot could join groups and still could not read group messages. In a group that means deaf unless mentioned, replied to, or sent a command. Pings in General vanished into the void.
Fix: BotFather → set privacy → Disable. Until then you @mention the bot or you talk to nobody.
Even after the bot is admin, a message from me in the group is dropped if the group isn’t on the allowlist. Editing the allowlist does nothing to a live process. Restart or you will debug a ghost.
Unauthorized updates are consumed, then discarded. If you don’t log a pending-allowlist line — chat type, title, no message text — you never learn the group id. The “bot was added as admin” event was originally ignored by the dispatcher, so the add itself didn’t give us the id.
How we finally got it: I @mentioned the bot in the forum. The bridge logged a pending allowlist line, type=supergroup, title matching the group. Then we added that id and restarted.
Forum General is not always thread 1. Sending to thread 1 failed with “message thread not found.” Omit the thread id and you post to General.
The bot has to be a group admin to post in topics. Non-negotiable.
One long-poll consumer. You cannot run a discover-ids script while the bridge is polling. Updates are exclusive. Do not steal the poll.
Secrets hygiene is a start-fail, not a later problem. Token files stay owner-only. If the gateway token file drifts to group-readable, the bridge refuses to start. A keep-alive that only “ensures” the process is running will sit there looking healthy while start is dying on permissions.
Do not paste bot tokens into chat. Ever.
That’s the whole product.
I can talk to Bob, Dev Bot, or Writer from the phone without putting the laptop in the loop. Publishing and client mail stay human-gated. The agents draft. I still ship.
Agent tabs. Not a chatbot.
Pre-drafted copy for each platform. X opens with the post pre-filled. LinkedIn requires a paste — the button copies the text to your clipboard and opens the composer in one click.
Official Grok Bot still has no Telegram. I didn't want a chatbot in my pocket. I wanted tabs. Each topic is an agent. Phone to the always-on box. Laptop still owns coding. Nothing ships without me. https://acidlemon.com/posts/2026-08-21-agent-tabs-in-telegram/
Official Grok Bot still has no Telegram. I didn't want a chatbot in my pocket. I wanted tabs. Tonight the always-on box grew a private Telegram forum. Each topic is one agent: Bob, Dev Bot, Writer, Channel Digest. The coding agents — Claude, Codex, Grok, Agy, Muse — are topics too. They all hit Dev Bot with a prefix so it knows which one I'm talking to. This is an unofficial self-hosted bridge, not a product feature. DMs already worked. The new piece is a private Group with Topics on, bot as admin, dual allowlist, replies that stay in the topic. Laptop stays primary for coding. Phone access to the always-on box. The interesting part isn't the bot. It's the twelve ways Telegram will silently ignore you: invite links don't add bots, Channel vs Group, privacy mode, an allowlist that doesn't reload until you restart, one long-poll consumer, token files that refuse to start if they aren't owner-only. Publishing and client mail stay human-gated. The agents draft. I still ship. https://acidlemon.com/posts/2026-08-21-agent-tabs-in-telegram/