Telegram Control (removed)
The Telegram bridge shipped in v0.1.27 and was removed in v0.2.0.
A security review turned up three things I wasn’t willing to leave running:
- The
allow_execgate did nothing./sendand/say— always on, even with exec off — went throughtmux send-keyswith key-name interpretation, so any paired chat could sendC-cand then type a shell command. - Alerts silently vanished for projects with names longer than about 23 characters. The Approve/Deny buttons packed the session name into Telegram’s 64-byte callback field twice, Telegram rejected the whole message, and the bridge logged it and carried on. You just never got the notification.
- Queued commands replayed on restart. Anything sent while the daemon
was down ran when it came back — including a
/killconfirmation from hours earlier.
Pulling it was faster than fixing it under pressure, so that’s what I did.
If you had it configured: ccmux telegram is gone, and the [telegram]
block drops out of config.toml the next time config is saved —
including bot_token. Nothing else in your config is touched.
What to use instead
Moshi does the same job on a phone: a push when
an agent needs you, then a tap to attach. Setup is ccmux moshi-setup —
see Getting started.
Building your own control surface? ccmuxd exposes an
HTTP API over your tailnet.
Will it come back?
Maybe. The code is one revert away and all three problems have known
fixes — literal-mode send-keys, short callback IDs, and draining the
backlog on startup. It comes back when it’s had the review time it
should have had the first time.
Help improve ccmux
Found a bug, an unclear guide, or a translation that could read better? Contributions of any size are welcome. Open an issue or send a pull request.
Spotted an error or something out of date? Edit this page on GitHub.