Core Features
Notify
Get pinged the instant an agent needs a permission or finishes a task — foreground, tmux, nohup, or over SSH.
Approve
The terminal dialog, mirrored one-to-one: Allow, Deny, Deny with a note — plus the agent's own "always allow / don't ask again" options rendered as buttons.
Answer questions
When Claude asks a multiple-choice question, the options arrive as buttons. Tap one, or reply with your own answer — the "something else" path, remotely.
Presence-aware
Knows when you're at the terminal (tmux client activity / tty idle). Approvals pop locally while you're there, and go to your phone only when you're away.
Remote steer
Inject instructions into a live session from your phone — reply to any session notification, or use /send. Needs tmux; degrades gracefully to notify-only.
Multi-agent
Claude Code, Codex, and Gemini CLI unified behind one adapter layer, with defensive parsing across versions.
Single binary
One static CGO-free executable, no runtime dependencies. Present but absent until you run init — no processes, no config changes.
Secure by design
Outbound long-polling only — no public port or webhook. A single allowlisted Telegram ID; the token never touches logs or messages.