Anvil
Anvil is a Git-native IDE for LangGraph agent graphs built on Prompt Driven Development (PDD) — a methodology that treats prompts, plans, evals, and decisions as versioned engineering artifacts in the repo, not throwaway
Core trick
Runs four parallel Gemini sub-agents that generate LangGraph nodes, golden eval datasets, ADRs, and PRs in one phase.
Description
Anvil is a Git-native IDE for LangGraph agent graphs built on Prompt Driven Development (PDD) — a methodology that treats prompts, plans, evals, and decisions as versioned engineering artifacts in the repo, not throwaway chat. From one sentence (anvil init "build a support triage agent"), Anvil scaffolds a full PDD project: a pdd/ layer with project context, conventions, and a phased plan; typed LangGraph nodes; an eval-driven suite with a 7-case golden dataset (3 happy / 2 edge / 2 fail) plus pytest and an LLM-as-judge — so every node ships with the test that proves it works; Architecture Decision Records capturing the why; and a GitHub PR — all committed to a real repo. It retrofits existing LangGraph projects (anvil init --existing), extends them conversationally (anvil edit), and ships them as a hosted API with a live graph view (anvil serve --web). The inner loop fans out four Gemini 3.5 Flash sub-agents in parallel — NodeForge (node), EvalSmith (golden dataset + judge), DocScribe (ADR), MergeBot (PR) — so every phase produces code, evals, decisions, and review materials together, in the wall-time of one Flash call. Nothing merges without an eval; nothing changes without a recorded decision.
README excerpt
# Anvil
**A Git-native, eval-driven IDE for agent graphs.**
One CLI. One sentence. A complete LangGraph project with engineering discipline at every step.
> Built at the **Google I/O 2026 hackathon**. See [What was built during the hackathon](#what-was-built-during-the-hackathon) for the contribution boundary.
---
## Four modes, one tool
```bash
# 1. Greenfield — scaffold a new project from a description
$ anvil init "Build a customer support agent: triage email, draft reply,
escalate low-confidence cases to humans"
# 2. Brownfield — bring PDD discipline to an existing LangGraph repo
$ cd existing-agent-project
$ anvil init --existing # ← post-hackathon
# 3. Conversational extension — change anything by describing the change
$ anvil edit "Add retry-on-429 to the email_send node:
3 attempts, exponential backoff, jitter"
# 4. Ship it — host the graph as an API with a live chat UI
$ anvil serve --web
> Anvil serving graph on http://127.0.0.1:8000
> Live graph visualization at http://127.0.0.1:8000/
```
Plus two supporting commands:
```bash
$ anvil plan "Add a refund-eligibility node" # PlanScribe + gh issues per phase
$ anvil run --phase 1 # NodeForge → EvalSmith ∥ DocScribe → MergeBot
$ anvil status # read-only project dashboard
```
Each mode produces real artifacts — code, evals, decision records, pull requests — committed to a real git repo, openable i