Agent Swarm: Multi-Agent Orchestration Framework for AI Coding Assistants

Multi-Agent Coordination for Development Tasks
Agent Swarm provides a framework for running teams of AI coding agents that work together autonomously. The system uses a lead agent that receives tasks from various sources, breaks them down into subtasks, and delegates them to worker agents running in isolated Docker containers.
Key Architecture and Features
- Lead/Worker coordination – A lead agent delegates and tracks work across multiple workers
- Docker isolation – Each worker runs in its own container with a full development environment
- Integration points – Slack, GitHub, and email integration for creating tasks
- Task lifecycle management – Priority queues, dependencies, pause/resume across deployments
- Compounding memory – Agents learn from every session and improve over time
- Persistent identity – Each agent maintains its own personality, expertise, and working style
- Dashboard UI – Real-time monitoring of agents, tasks, and inter-agent chat
- Service discovery – Workers can expose HTTP services and discover each other
- Scheduled tasks – Cron-based recurring task automation
Quick Start Options
The framework supports multiple deployment approaches:
Option A: Docker Compose (recommended)
git clone https://github.com/desplega-ai/agent-swarm.git
cd agent-swarm
# Configure environment
cp .env.docker.example .env
# Edit .env — set API_KEY and CLAUDE_CODE_OAUTH_TOKEN at minimum
# Start everything
docker compose -f docker-compose.example.yml --env-file .env up -dThe API runs on port 3013.
Option B: Local API + Docker Workers
git clone https://github.com/desplega-ai/agent-swarm.git
cd agent-swarm
bun install
# 1. Configure and start the API server
cp .env.example .env
# Edit .env — set API_KEY
bun run start:httpIn a new terminal, start a worker:
# 2. Configure and run a Docker worker
cp .env.docker.example .env.docker
# Edit .env.docker — set API_KEY (same as above) and CLAUDE_CODE_OAUTH_TOKEN
bun run docker:build:worker
mkdir -p ./logs ./work/shared ./work/worker-1
bun run docker:run:workerOption C: Claude Code as Lead Agent
# After starting the API server (Option B, step 1):
bunx @desplega.ai/agent-swarm setupThis configures Claude Code to connect to the swarm. Start Claude Code and tell it: "Register yourself as the lead agent in the agent-swarm."
How It Works
The system follows this flow: You send a task via Slack DM, GitHub @mention, email, or directly through the API. The lead agent plans by breaking the task down and assigning subtasks to workers. Workers execute in isolated Docker containers with git, Node.js, Python, and other development tools. Progress is tracked in real-time through the dashboard.
This type of multi-agent system is useful for developers who want to automate complex development workflows where tasks need to be broken down and executed in parallel, with each agent specializing in different aspects of the work.
📖 Read the full source: HN AI Agents
👀 See Also

altRAG: Replace Vector DB RAG with 2KB Pointer Files for AI Coding Agents
altRAG is a Python tool that replaces vector database RAG with lightweight pointer files. It scans Markdown/YAML skill files to create a 2KB skeleton file mapping sections to exact line numbers and byte offsets, allowing AI agents to read only needed sections instead of entire files.

Local Voice Control Setup for AI Agents on Apple Silicon
Setup local voice control for AI agents using Parakeet STT and Kokoro TTS on Apple Silicon for fast and cloud-independent interactions.

Approval Boundary Tool for Claude Code Repository Work
A developer built an approval boundary tool that adds a review step before local execution when using Claude Code for repository work. The tool follows a loop: see the plan first, approve once, let the run happen locally, and keep proof afterward.

ClamBot: AI Agent Runs LLM-Generated Code in WASM Sandbox for Security
ClamBot is an AI agent framework that executes all LLM-generated code in a WebAssembly sandbox using QuickJS in Wasmtime, eliminating the need for exec() or subprocess calls. It includes an approval gate for tool calls, persistent script caching as 'clams', and supports multiple LLM providers.