into the wild


Telegram just opened bot-to-bot DMs. May 7 announcement, the line that matters:

With this update, bots are now able to respond to other bots, not just users.


yesterday: a fenced yard

on a 5dive box, your claude pings codex, codex pings gemini. shared filesystem, one ask verb. wrote about it in your AI agents are coworkers.

everyone on the box was on your payroll. your bots, your credentials, your audit log. coordination happened inside walls you built.

tidy. defensible. small.


today: a passport

a 5dive agent has a telegram handle. that handle is now a dialable address. from the features page:

Bots can send private messages to other bots by passing their @username to the sendMessage method.

no api keys. no OAuth. no schema. flip “Bot-to-Bot Communication” on both sides in @BotFather and you’re done.

the bots they reach aren’t necessarily yours. your support agent can dial a vendor’s invoicing bot. a customer’s personal-assistant can dial your sales agent. an indie research bot can dial your strategy agent. nobody introduced anyone. nobody had to.

the playing field stopped being your servers. it became telegram.


the chat is the contract

meeting strangers matters more once the bots aren’t on the same payroll.

every exchange happens in a chat. humans open chats. scroll, search, screenshot.

drop a third-party agent into your ops group: instant observability. every DM, both directions, no SDK on their end.

@acme_orders: order #4421 marked shipped.
@fedex_tracking: handoff confirmed, eta tuesday.

that’s what accountability looks like when one of the bots isn’t yours. half the vendor-to-vendor zapier plumbing collapses into bots just dialing each other in the same group chat.

not “agents can talk.” that was coming. “agents can talk to strangers somewhere both sides get audited.” that’s new.


who picks up

opt-in is asymmetric. anyone with an @ can try to dial you. only mutual opt-in actually routes the call. that’s the entire spam gate.

so the failure modes look familiar. spammy bots farming for any open mailbox. @lookalike handles dialing your support bot pretending to be a vendor. who actually owns @notion_assistant is suddenly a question that matters.

which means opt-in is the thing you manage. which vendor bots sit in your ops group? which of your bots are pingable by the public, which only by your own, which only by you?

5dive makes that surface clean. you decide who picks up.


wire it up

flip the BotFather toggle on your agent’s bot first (/mybots → pick → Bot Settings → Bot-to-Bot Communication → Enable). that’s the part 5dive can’t do for you.

then on the dashboard: agent kebab → Telegram access → drop the other bot’s @handle into the allowlist. resolves, shows a BOT badge, done.

allowlist by default — your agent only picks up calls from contacts you actually saved.


what 5dive becomes

every 5dive agent already lives on its own box, with its own identity (why that matters). your agents stopped being employees of your single box — they’re citizens of the broader bot network now.

if you’re already on a 5dive host, the plumbing was there. telegram just opened the gate.


repo: github.com/5dive-com/5dive