Orchestrate multiple AI agents working in parallel — with full visibility and control.
Quick Start • Documentation • Features • Agent Teams • Community • Developer Guide
Running one AI agent is easy. Running five in parallel on the same project — tracking what each one is doing, keeping them coordinated, and not losing context when things restart — is chaos without the right tool.
Coral is your mission control for AI agents. It orchestrates multiple agents across isolated environments, gives you a real-time dashboard to monitor everything at a glance, and lets your agents communicate with each other through a built-in message board.
-
Run agents in parallel, not in sequence. Launch a team of AI agents — each in its own isolated git worktree — so they can work on different parts of your project simultaneously without stepping on each other.
-
See everything, miss nothing. The real-time dashboard shows every agent's status, current task, and confidence level. Sleep agents, wake them up, restart them, or send commands — all from one screen.
-
Agents that talk to each other. Built-in message board with cursor-based delivery lets agents coordinate work, share progress, and avoid duplicating effort. No messages lost, no duplicates, even across restarts.
# Install from PyPI
pip install agent-coral
# Launch the dashboard
coralOpen http://localhost:8420 in your browser. Click +New to launch your first agent or team.
Requirements: Python 3.8+, tmux. Works with Claude Code and Gemini CLI out of the box. Extensible to any CLI-based agent.
Monitor all your agents from a single web interface with live status updates, activity timelines, and one-click controls.
- Live agent status via the PULSE protocol — see what each agent is doing right now
- Command input — send prompts, navigate modes, trigger macros from the dashboard
- Attach/Restart/Kill — full lifecycle control for every agent session
- Themes & customization — built-in themes, custom macros, AI-generated themes
Launch coordinated teams of agents with roles, behavior prompts, and a shared message board. Learn more below.
Browse your complete AI session history with full-text search, tags, notes, and auto-generated summaries.
- Full-text search across all sessions (SQLite FTS5 with porter stemming)
- Auto-summarization — sessions are summarized automatically using AI
- Markdown notes & tags — annotate any session for future reference
- Git integration — tracks commits, branches, and changed files per session
Automate recurring tasks and get notified when agents need attention.
- Cron-scheduled jobs — launch agents on a schedule in isolated worktrees
- Webhook notifications — Slack, Discord, or any HTTP endpoint
- Idle detection — automatic alerts when agents are stuck waiting for input
Agent teams are Coral's most powerful feature. Launch a group of specialized agents that communicate through a shared message board:
# Or use the +New → Agent Team modal in the dashboardEach agent gets:
- An isolated git worktree (no merge conflicts)
- A role and behavior prompt (e.g., "You are the QA Engineer...")
- Automatic message board subscription with cursor-based delivery
- Sleep/wake persistence — the agent's state, prompt, and message position are preserved
Teams can be managed collectively (Sleep All, Wake All, Kill All) or individually from the dashboard sidebar.
Learn more about agent teams in the documentation.
Agents automatically report what they're doing using inline markers that Coral parses from terminal output in real time:
||PULSE:STATUS Implementing auth middleware||
||PULSE:SUMMARY Refactoring the database layer||
||PULSE:CONFIDENCE Low Unfamiliar with this library||
The protocol is automatically injected when launching agents. Any CLI-based agent can participate — just print the markers to stdout. See PROTOCOL.md for the full specification.
Bulk agent launcher
# Launch agents for every worktree subdirectory + start the dashboard
launch-coral
# Specify path and agent type
launch-coral <path-to-root> geminiRemote server (SSH port forwarding)
ssh -L 8420:localhost:8420 user@remote-hostThen open http://localhost:8420 locally. Add to ~/.ssh/config for persistence.
Manual tmux management
tmux attach -t claude-<session-uuid> # Attach to an agent
Ctrl+b n / Ctrl+b p # Switch windows
Ctrl+b d # DetachFull documentation is available at cdknorow.github.io/coral.
For project structure, API endpoints, and database schema, see DEVELOP.md.
We welcome contributions! Whether it's adding support for new AI agents, improving the dashboard, or fixing bugs — please open an issue or submit a pull request.
Apache 2.0 License. See LICENSE for details.
Built for developers who work with AI, not against it.
Star the repo if Coral helps your workflow.

