Open-source async coding agent — delegate tasks, get pull requests.
Anvil is a self-hostable, model-agnostic coding agent that works asynchronously in isolated cloud sandboxes. Inspired by Google's Jules, built with BMAD methodology, powered by open-source tools.
- 🔄 Async execution — Fire tasks, get PRs when done
- 🐳 Isolated sandboxes — Each task runs in its own container
- 🔌 Model-agnostic — Claude, GPT-4, Gemini, Ollama
- 🐙 GitHub native — Issues → PRs, automatic updates
- 👁️ Human-in-the-loop — Approve plans before execution
- 📝 Context-aware — Reads AGENTS.md, understands your codebase
- 🏗️ BMAD architecture — Multi-agent workflows with specialized roles
┌─────────────────────────────────────────────────────────────┐
│ Anvil Core │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Analyst │ │ PM │ │Architect│ │Developer│ ... │
│ └────┬────┘ └────┬────┘ └────┬────┘ └────┬────┘ │
│ └────────────┴────────────┴────────────┘ │
│ │ │
│ ┌──────────▼──────────┐ │
│ │ Task Orchestrator │ │
│ │ (LangGraph) │ │
│ └──────────┬──────────┘ │
│ │ │
│ ┌─────────────────┼─────────────────┐ │
│ ▼ ▼ ▼ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Sandbox │ │ Sandbox │ │ Sandbox │ │
│ │ (Modal) │ │(Daytona)│ │(Docker) │ │
│ └─────────┘ └─────────┘ └─────────┘ │
└─────────────────────────────────────────────────────────────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ GitHub │ │ Slack │ │ Linear │
└─────────┘ └─────────┘ └─────────┘
# Clone the repo
git clone https://github.com/kaicoder03/anvil.git
cd anvil
# Install dependencies
pip install -e .
# Configure (API keys, sandbox provider)
cp .env.example .env
# Edit .env with your settings
# Run the server
anvil serve
# Or use CLI
anvil task "Add unit tests for auth module" --repo owner/repo# anvil.yaml
llm:
provider: anthropic # anthropic, openai, google, ollama
model: claude-sonnet-4-20250514
sandbox:
provider: docker # docker, modal, daytona, runloop
timeout: 3600
github:
auto_pr: true
draft: true
agents:
- analyst
- pm
- architect
- developer
- reviewerAnvil uses the BMAD Method — specialized agents that collaborate:
| Agent | Role |
|---|---|
| Analyst | Understands requirements, gathers context |
| PM | Creates execution plan, manages scope |
| Architect | Designs solution, picks patterns |
| Developer | Writes code, runs tests |
| Reviewer | Reviews changes, suggests improvements |
Each agent is defined as markdown with embedded YAML — easy to customize.
- GitHub — Trigger from issues, auto-open PRs
- Slack — Chat interface, status updates
- Linear — Track tasks, sync status
- CLI — Local development and automation
- LangGraph — Stateful agent orchestration
- Deep Agents — Composable agent framework
- Modal / Daytona — Cloud sandboxes
- LiteLLM — Unified LLM interface
- Core agent loop
- Docker sandbox provider
- GitHub integration
- Modal sandbox provider
- Slack bot
- Linear integration
- Web UI
- Multi-repo support
- Team workflows
See CONTRIBUTING.md for guidelines.
MIT License — see LICENSE for details.
Built with ⚒️ by the community. Inspired by Jules, Open SWE, and OpenHands.