Run a fleet of AI coding agents from your phone.
AgEnD (Agent Engineering Daemon) turns your Telegram or Discord into a command center for AI coding agents. One bot, multiple CLI backends, unlimited projects — each running as an independent session with crash recovery and zero babysitting.
You → Telegram/Discord → AgEnD → Fleet of AI Agents → Results back to your phone
繁體中文 · Documentation · CLI Reference
| Without AgEnD | With AgEnD |
|---|---|
| Close the terminal, agent goes offline | Runs as a system service — survives reboots |
| One terminal = one project | One bot, unlimited projects running in parallel |
| Long-running sessions accumulate stale context | CLI auto-compact + crash recovery with context snapshots |
| No idea what your agents are doing overnight | Daily cost reports + hang detection alerts |
| Agents work in silos, can't coordinate | Peer-to-peer collaboration via MCP tools |
| Runaway costs from unattended sessions | Per-instance daily spending limits with auto-pause |
🚀 Fleet Management — One bot, N projects. Each Telegram Forum Topic is an isolated agent session.
🔄 Multi-Backend — Claude Code, Gemini CLI, Codex, OpenCode, Kiro CLI. Switch or mix freely.
🤝 Agent Collaboration — Agents discover, wake, and message each other via MCP tools. A General Topic routes tasks to the right agent using natural language.
📱 Mobile Control — Approve tool use, restart sessions, and manage your fleet from Telegram inline buttons.
🛡️ Autonomous & Safe — Cost guards, hang detection, model failover, and crash recovery keep your fleet running without babysitting.
⏰ Persistent Schedules — Cron-based tasks backed by SQLite. Survives restarts.
🎤 Voice Messages — Talk to your agents with Groq Whisper transcription.
📄 HTML Chat Export — Export any agent session as a self-contained HTML file for sharing or archiving.
🪞 Mirror Topic — Cross-instance visibility. Watch another agent's work in real time from a separate topic.
🖥️ Web Dashboard — Live fleet monitoring in the browser with SSE updates and integrated chat UI.
🔌 Extensible — Discord adapter, webhook notifications, health endpoint, external session support via IPC.
👥 Teams & Task Board — Named groups for targeted broadcasting. Shared task board for multi-step work tracking across instances.
📋 Fleet Templates — Define reusable fleet configurations. Deploy multi-instance setups with one command, each with its own git worktree.
One-liner (macOS / Linux — installs Node.js via nvm + tmux + agend, then runs quickstart):
curl -fsSL https://suzuke.github.io/AgEnD/install.sh | bashOr install manually:
# Option A: One-line install (Linux / macOS / WSL)
curl -fsSL https://suzuke.github.io/AgEnD/install.sh | bash
# Option B: Manual install
npm install -g @suzuke/agend # 1. Install
agend quickstart # 2. Setup — bot token, backend, done
agend fleet start # 3. Launch your fleet 🎉Open Telegram, send a message to your bot, and start coding from your phone.
Discord?
agend quickstartsupports Discord too — install the plugin first:npm install -g @suzuke/agend-plugin-discord. See Discord setup guide.
graph LR
You["You<br/>(Phone / PC)"] <-->|messages| Channel["Telegram / Discord<br/>/ Web UI"]
Channel <-->|routing| Daemon["AgEnD Daemon"]
subgraph Fleet
Daemon --> General["General<br/>Dispatcher"]
Daemon --> A["Instance A<br/>Claude Code<br/>Project X"]
Daemon --> B["Instance B<br/>Gemini CLI<br/>Project Y"]
A <-.->|MCP Tools| B
General -.->|routes tasks| A
General -.->|routes tasks| B
end
- You send a message to your Telegram/Discord bot
- Messages sent to the General Topic are interpreted and routed to the right agent. Messages to a specific topic go directly to that instance.
- Agent instances run in isolated tmux sessions, each with its own project and CLI backend
- Agents collaborate peer-to-peer via MCP tools — delegating tasks, sharing context, reporting results
- Results flow back to your chat. Permission requests arrive as inline buttons.
| Backend | Install | Auth |
|---|---|---|
| Claude Code | curl -fsSL https://claude.ai/install.sh | bash |
claude (OAuth) or ANTHROPIC_API_KEY |
| OpenAI Codex | npm i -g @openai/codex |
codex (ChatGPT login) or OPENAI_API_KEY |
| Gemini CLI | npm i -g @google/gemini-cli |
gemini (Google OAuth) |
| OpenCode | curl -fsSL https://opencode.ai/install | bash |
opencode (configure provider) |
| Kiro CLI | brew install --cask kiro-cli |
kiro-cli login (AWS Builder ID) |
- Node.js >= 20
- tmux
- One of the supported AI coding CLIs (installed and authenticated)
- Telegram bot token (@BotFather) or Discord bot token
- Groq API key (optional, for voice)
⚠️ All CLI backends run with--dangerously-skip-permissions(or equivalent). See Security.
WSL (Windows Subsystem for Linux): Fully supported. The install script auto-detects WSL and avoids using Windows
node.exefrom PATH. If you encounter PATH issues, add to/etc/wsl.conf:[interop] appendWindowsPath=falseThen restart WSL (
wsl --shutdown). Install with:curl -fsSL https://suzuke.github.io/AgEnD/install.sh | bash
- Features — detailed feature documentation
- CLI Reference — all commands and options
- Configuration — fleet.yaml complete reference
- Security — trust model and hardening
- macOS (launchd) and Linux (systemd) supported; Windows is not
- Official Telegram plugin in global
enabledPluginscauses 409 polling conflicts - OpenCode and Kiro CLI do not read MCP server
instructionsfield — fleet context and workflow templates are not injected into these backends' system prompts. Awaiting upstream fix.
MIT