Multi-agent orchestration for Claude Code, Codex, Gemini CLI, and other AI coding assistants.
Built by desplega.sh β by builders, for builders.
agent-swarm.mp4
βΈ daily evolution Β· slack β pr Β· Making of
Agent Swarm runs a team of AI coding agents that coordinate autonomously. A lead agent receives tasks β from Slack, GitHub, GitLab, email, or the API β breaks them down, and delegates to worker agents running in Docker containers. Workers execute tasks, ship code, and write their learnings back to a shared memory so the whole swarm gets smarter every session.
Learn more in the architecture overview.
flowchart LR
subgraph IN["Tasks come in"]
direction TB
S["Slack"]
G["GitHub / GitLab"]
E["Email"]
A["API / CLI"]
end
LEAD(["Lead Agent<br/>plans & delegates"])
subgraph WORKERS["Workers in Docker"]
direction TB
W1["Worker"]
W2["Worker"]
W3["Worker"]
end
subgraph BRAIN["Persistent brain"]
direction TB
MEM["Memory<br/>(vector search)"]
ID["Identity<br/>(SOUL, CLAUDE.md)"]
end
subgraph OUT["Work ships"]
direction TB
PR["Pull Requests"]
REPLY["Slack replies"]
EMAIL["Email replies"]
end
IN --> LEAD --> WORKERS
WORKERS -->|reads context| BRAIN
WORKERS -->|writes learnings| BRAIN
WORKERS --> OUT
- Lead/worker orchestration in Docker β isolated dev environments, priority queues, pause/resume across deploys. Architecture β
- Compounding memory & persistent identity β agents remember past sessions and evolve their own persona, expertise, and notes. Memory β Β· Agents β
- Multi-channel inputs β Slack, GitHub, GitLab, email, Linear, and the HTTP API all create tasks. Integrations
- Workflow engine with Human-in-the-Loop β DAG-based automation with approval gates, retries, and structured I/O. Workflows β
- Scheduled & recurring tasks β cron-based automation for standing work. Scheduling β
- Multi-provider β run with Claude Code, OpenAI Codex, or pi-mono. Harness config β
- Skills & MCP servers β reusable procedural knowledge and per-agent MCP servers with scope cascade. MCP tools β
- Real-time dashboard β monitor agents, tasks, and inter-agent chat. app.agent-swarm.dev β
Prerequisites: Docker and a Claude Code OAuth token (claude setup-token).
The fastest way is the onboarding wizard β it collects credentials, picks presets, and generates a working docker-compose.yml:
bunx @desplega.ai/agent-swarm onboardPrefer manual setup? Clone and run with Docker Compose:
git clone https://github.com/desplega-ai/agent-swarm.git
cd agent-swarm
cp .env.docker.example .env
# edit .env β set API_KEY and CLAUDE_CODE_OAUTH_TOKEN
docker compose -f docker-compose.example.yml --env-file .env up -dThe API runs on port 3013, with interactive docs at http://localhost:3013/docs and an OpenAPI 3.1 spec at http://localhost:3013/openapi.json.
Other setups
- Local API + Docker workers β run the API on your host, workers in Docker. See Getting Started.
- Claude Code as the lead agent β
bunx @desplega.ai/agent-swarm connect, then tell Claude Code to register as the lead.
You (Slack / GitHub / Email / CLI)
|
Lead Agent ββ MCP API Server ββ SQLite DB
|
ββββββΌβββββ
Worker Worker Worker
(Docker containers with full dev environments)
- A task arrives via Slack DM, GitHub @mention, email, or the API.
- The lead plans and delegates subtasks to workers.
- Workers execute in isolated Docker containers (git, Node.js, Python, etc.).
- Progress streams to the dashboard, Slack threads, or the API.
- Results ship back out as PRs, issue replies, or Slack messages.
- Session learnings are extracted and become memory for future tasks.
More detail in the task lifecycle docs.
| Integration | What it does | Setup |
|---|---|---|
| Slack | DM or @mention the bot to create tasks; workers reply in threads | Guide |
| GitHub App | @mention or assign the bot on issues/PRs; CI failures create follow-up tasks | Guide |
| GitLab | Same model as GitHub β webhooks on issues/MRs, glab preinstalled in workers |
Guide |
| AgentMail | Give each agent an inbox; emails become tasks or lead messages | Guide |
| Linear | Bidirectional ticket sync via OAuth + webhooks | Guide |
| Sentry | Workers can triage Sentry issues with the /investigate-sentry-issue command |
Guide |
Real-time monitoring of agents, tasks, and inter-agent chat. Use the hosted version at app.agent-swarm.dev, or run locally:
cd new-ui && pnpm install && pnpm run devOpens at http://localhost:5274.
bunx @desplega.ai/agent-swarm <command>| Command | Description |
|---|---|
onboard |
Set up a new swarm from scratch (Docker Compose wizard) |
connect |
Connect this project to an existing swarm |
api |
Start the API + MCP HTTP server |
worker |
Run a worker agent |
lead |
Run a lead agent |
docs |
Open documentation (--open to launch in browser) |
For production deployments (Docker Compose with multiple workers, systemd for the API, graceful shutdown, integration config), see DEPLOYMENT.md and the deployment guide.
Everything lives at docs.agent-swarm.dev. Good starting points:
- Getting Started β install, configure, and run your first task
- Architecture overview β how the swarm is wired together
- CLI reference and Environment variables
- API reference β every HTTP endpoint
We love contributions! Whether it's bug reports, feature requests, docs improvements, or code β all are welcome.
See CONTRIBUTING.md to get started. The quickest way to contribute:
- Fork the repo
- Create a branch (
git checkout -b my-feature) - Make your changes
- Open a PR
Join our Discord if you have questions or want to discuss ideas.
MIT β 2025-2026 desplega.sh
