Topic = session
/new opens a private forum topic bound to a repo and agent. History,
mode, and model stay with that thread.
Agent Client Protocol · Telegram · Local-first
acpbot is the Telegram control surface for ACP coding agents. Each forum topic is a live session with Grok, Claude, Codex, or OpenCode — permissions, media, MCP tools, and schedules on your machine.
Install · v0.1.0
Standalone Bun-compiled executables — no Bun or Node required. macOS builds are Developer ID–signed. Linux from CI.
darwin-arm64
darwin-x64
linux-x64
linux-arm64
# Apple Silicon example — pick your platform from above
curl -fsSL -o acpbot.tgz \
"https://github.com/pmdroid/acpbot/releases/download/v0.1.0/acpbot-v0.1.0-darwin-arm64.tar.gz"
tar -xzf acpbot.tgz
chmod +x acpbot-v0.1.0-darwin-arm64
sudo mv acpbot-v0.1.0-darwin-arm64 /usr/local/bin/acpbot
acpbot setup GitHub release
·
Full install guide
· Docker:
docker pull ghcr.io/pmdroid/acpbot:v0.1.0
Capabilities
Not a toy chat wrapper — a durable bridge between Telegram and the Agent Client Protocol.
/new opens a private forum topic bound to a repo and agent. History,
mode, and model stay with that thread.
Agent stdio lives in a long-lived host process. Restart the Telegram worker without killing agent context.
ACP permission requests, elicitation, and ask-user flows become Telegram keyboards — approve, reject, or cancel where you already are.
/model, /effort, and /mode read live agent
catalogs over ACP — reasoning effort and permission modes when advertised.
Photos, files, voice STT in; agent TTS out. OpenAI and ElevenLabs are selectable per
TTS/STT via config.toml.
Durable in-repo jobs. The host can fire them even when the worker is offline.
Spawn child agents in worktrees, or run agent-authored directive graphs with zero-token orchestration on the host.
Route repos to remote acp-host over authenticated WSS — keep the bot
token on the worker, agents where the code lives.
Architecture
You (Telegram)
│ forum topic
▼
acpbot worker ──Unix──► acp-host ──stdio──► grok / claude / codex / opencode
│ │
├── worker-api.sock └── sessions · OAuth · schedules
└── single operator (CLI pair approve) acpbot pair approve on the host.
Agents
Switch agent mid-session with /agent. PATH-gated picker — only installed
CLIs appear.
grok agent stdio
via claude-agent-acp
via codex-acp
opencode acp
Open source · MIT · v0.1.0 out now — download or read the quick start.