Agent Swarm
A self-hosted operating system for coordinating AI workers with durable memory and isolated execution.
What does this agent do, and when should you use it?
Agent Swarm is a self-hosted coordination system for company AI work, with a Lead Agent that plans tasks and dispatches Workers. Tasks can arrive from Slack, GitHub, GitLab, email, Linear, Jira, WhatsApp, an API, or the CLI, while Workers run in isolated Docker containers. The system writes session learnings into shared memory and retains agent identity and context across sessions. It includes an MCP API Server, SQLite, a real-time dashboard, workflows, schedules, and human approval gates. Results can be delivered as pull requests, Slack or email replies, issue replies, and shareable pages; Docker Compose and npm/Bun CLI entry points are documented.
A Lead Agent receives a task, plans the work, and delegates subtasks to Workers. Workers run inside Docker containers with development tooling including git, Node.js, and Python; they read shared memory and identity context, write learnings back, and stream progress to the dashboard, Slack threads, or the API. DAG workflows can apply retries, structured inputs and outputs, and approval gates, while cron schedules can target agent tasks, workflows, or catalog scripts. The CLI exposes onboard, connect, api, worker, lead, e2b, x, and docs; MCP tools include memory, pages, and KV operations.
- An engineering team turns a Slack feature request into delegated containerized work that produces a GitHub pull request.
- A product team using Linear and GitHub turns synchronized tickets and discussions into trackable agent tasks.
- A customer-success team runs scheduled account reports while retaining context in per-customer working directories.
- An operations team connects Datadog, New Relic, or Sentry alerts so Workers can investigate issues or propose recurring code-health improvements.
- A marketing team runs content workflows to produce material for blogs, social channels, and website updates.
- A support team receives requests through Slack, email, or WhatsApp and has agents respond in the originating conversation channel.
What are this agent's strengths and limitations?
- The Lead/Worker architecture combines centralized planning with Docker-isolated execution for parallel, reviewable delegated work.
- Shared memory, persistent identity, hybrid retrieval, and graph-linked memories preserve useful context between sessions.
- Slack, GitHub, GitLab, email, Linear, Jira, WhatsApp, API, and CLI inputs allow it to fit into several existing work channels.
- Documented harnesses include Claude Code, OpenAI Codex, pi-mono, Devin, Claude Managed Agents, raw LLMs, and opencode, reducing dependence on one harness.
- DAG workflows, cron schedules, pause/resume, retries, and HITL gates support ongoing operational automation.
- Deployment requires Docker plus credentials for a supported harness; the default quick-start example uses a Claude Code OAuth token.
- Each external channel requires its own integration setup, such as OAuth, webhooks, or service-specific credentials.
- Workers run real tasks in full development environments, so adopters must define approval gates, permitted tool routes, and infrastructure boundaries.
- Some advanced features introduce additional dependencies or co-deployments, including agent-fs, the E2B evaluation harness, and an OpenTelemetry-compatible backend.
- The supplied material does not state hosted pricing, production capacity sizing, or infrastructure cost guidance.
How do you install or deploy this agent?
Docker and at least one supported harness credential are required. For the guided setup, run bunx @desplega.ai/agent-swarm onboard or npx @desplega.ai/agent-swarm onboard; the wizard creates a Docker Compose configuration. For manual setup, run git clone https://github.com/desplega-ai/agent-swarm.git, cd agent-swarm, and cp .env.docker.example .env. Set API_KEY and a credential for the selected harness in .env, such as CLAUDE_CODE_OAUTH_TOKEN, then run docker compose -f docker-compose.example.yml --env-file .env up -d. The API listens on port 3013, with interactive documentation at http://localhost:3013/docs.
How do you use this agent?
After deployment, create work through a Slack DM or @mention, a GitHub/GitLab issue or PR, email, or the API/CLI. The Lead plans and delegates the work, Workers execute it in containers, and outputs are sent to the relevant destination. Use bunx @desplega.ai/agent-swarm <command> or npx @desplega.ai/agent-swarm <command> to operate the system: lead runs a Lead, worker runs a Worker, and api starts the API and MCP HTTP server. Inspect the API at http://localhost:3013/docs; for local dashboard development, run bun install && bun run dev in apps/ui and open http://localhost:5274.