Devswarm
High-performance MCP server, code graph engine & evolutionary algorithm platform in Zig. 33 tools: GitHub project management, agent swarm orchestration, iterative review-fix loops, blast radius analysis, and code navigation via Model Context Protocol.
Ask AI about Devswarm
Powered by Claude Β· Grounded in docs
I know everything about Devswarm. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
DevSwarm
Your AI coding assistant, now with a team.
Drop one MCP server into Codex, Amp, or Claude Code and get 37 tools for spawning parallel agents, running task pipelines, and doing multi-step code work β without leaving your existing workflow.
Quick Start Β· Features Β· All 37 Tools Β· How It Works Β· Contributing
The Problem
You're already using Codex, Amp, or Claude Code. It writes code, fixes bugs, answers questions. But it's still one agent doing one thing at a time.
You: "Find all the memory leaks in this codebase and fix them"
Orchestrator decomposes the task
β
ββββββΌβββββ
βΌ βΌ βΌ
[W1] [W2] [W3] β parallel agents, each owns a subsystem
β β β
ββββββΌβββββ
βΌ
Synthesizer β one clean report back to you
DevSwarm is an MCP server that gives your AI assistant the ability to orchestrate itself β spawning sub-agents, running parallel workloads, and chaining multi-step task pipelines. No new UI. No new workflow.
β‘ Quick Start
Option 1: Download a binary (recommended)
Grab the latest release for your platform from GitHub Releases.
Option 2: Build from source
git clone https://github.com/justrach/codedb.git
cd codedb
zig build # builds zig-out/bin/devswarm
zig build test # run all tests
Requirements: Zig 0.15.x, codex and/or claude CLI on PATH, Git
Connect to your AI assistant
Claude Code
Add to ~/.claude.json:
{
"mcpServers": {
"devswarm": {
"command": "/path/to/devswarm",
"args": ["--mcp"],
"env": { "REPO_PATH": "/path/to/your/repo" }
}
}
}
Then run /mcp to verify β you'll see 37 tools added to your assistant.
Codex
Add to ~/.codex/config.toml:
[mcp_servers.devswarm]
command = "/path/to/devswarm"
args = ["--mcp"]
env = { REPO_PATH = "/path/to/your/repo" }
Amp
Add to your Amp MCP config:
{
"mcpServers": {
"devswarm": {
"command": "/path/to/devswarm",
"args": ["--mcp"],
"env": { "REPO_PATH": "/path/to/your/repo" }
}
}
}
π What You Can Do
Swarms β parallel agents on big tasks
run_swarm("Audit the entire auth system for security issues", max_agents=5)
An orchestrator breaks the task into sub-tasks. Workers run in parallel. A synthesizer combines everything. You get one answer instead of five tabs.
Task Chains β multi-step pipelines
run_task("Fix the race condition in src/queue.zig", preset="reviewer_fixer")
Built-in presets chain agents together automatically:
| Preset | Pipeline |
|---|---|
finder_fixer | find the issue β fix it |
reviewer_fixer | review β fix reported issues |
explore_report | deep exploration β structured report |
architect_build | design β implement |
Review-Fix Loops β iterate until clean
review_fix_loop("Check for memory leaks", max_iterations=3)
Runs reviewer β fixer β reviewer again, until the reviewer says NO_ISSUES_FOUND or hits the iteration cap.
Single Agents with Role + Model Routing
run_agent("Explain the PPR algorithm", role="explorer", mode="deep")
Each agent gets the right model automatically:
| Role | Model | Does |
|---|---|---|
finder | Sonnet | Search and locate |
reviewer | Sonnet | Review for correctness |
fixer | Sonnet | Apply fixes (writable) |
explorer | Sonnet | Deep codebase exploration |
architect | Opus | System design decisions |
orchestrator | Opus | Decomposes swarm tasks |
synthesizer | Sonnet | Combines agent outputs |
monitor | Haiku | Lightweight checks |
| Mode | Use when |
|---|---|
smart | Most tasks |
rush | Quick answers |
deep | Hard problems, architecture |
free | Minimize cost |
π§ Full Tool List (37 tools)
Agents
run_agent Β· run_swarm Β· run_task Β· review_fix_loop Β· run_reviewer Β· run_explorer Β· run_zig_infra
Planning
decompose_feature Β· get_project_state Β· get_next_task Β· prioritize_issues
Issues
create_issue Β· update_issue Β· close_issue Β· get_issue Β· create_issues_batch Β· close_issues_batch Β· link_issues
Issue-filing note: create_issue and create_issues_batch now enforce the issue template implied by CONTRIBUTING.md and the agent issue-discovery standard. Issue bodies must include: one-sentence problem, exact repro, observed result, expected result, nearby passing checks, acceptance criteria, and non-goals.
create_issue(parent_issue=...) is context-only: it appends Parent issue: #N to the body. Use link_issues for explicit dependency links.
Git
create_branch Β· get_current_branch Β· commit_with_context Β· push_branch Β· recently_changed Β· git_history_for
Pull Requests
create_pr Β· get_pr_status Β· list_open_prs Β· merge_pr Β· get_pr_diff Β· review_pr_impact
Code Intelligence
blast_radius Β· relevant_context Β· symbol_at Β· find_callers Β· find_callees Β· find_dependents
Repo
set_repo
βοΈ How It Works
DevSwarm is a provider-agnostic runtime. When you call run_agent, it:
- Resolves β picks backend (Claude or Codex), model tier, system prompt, and tool preamble based on role + mode + what's available on your PATH
- Dispatches β spawns the agent on the right backend, falls back automatically if one isn't available
- Returns β streams output back through MCP
System prompts are assembled dynamically from agency rules, role instructions, mode guidance, and auto-detected tool availability (zig tools β ripgrep β grep). No hardcoded prompts.
Telemetry
devswarm collects anonymous usage telemetry to help improve the project. This is enabled by default.
What's collected
- Agent roles used (e.g. "finder", "reviewer", "fixer")
- Model names (e.g. "claude-sonnet-4-6")
- Token counts (input/output per worker)
- Wall time and estimated cost
- Worker count and parallelism metrics
What's NEVER collected
- Your code, file contents, or diffs
- Prompts, task descriptions, or agent outputs
- Repository names, file paths, or branch names
- Any personally identifiable information
How to opt out
Edit .devswarm/config.toml:
[telemetry]
enabled = false
Or set the environment variable:
export DEVSWARM_TELEMETRY=false
You can opt out at any time. The telemetry preference is set during onboarding and stored in .devswarm/config.toml.
Contributing
Contributions are welcome. See CONTRIBUTING.md for guidelines before opening a PR.
License
MIT β see LICENSE
Full changelog: README-changelog.md
