Skip to content

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.

Tags

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.
harshal2802/anvil★ 00 forksPythonMITCreated May 23, 2026 · last push May 24, 2026

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

Team