Vision Driven Design
From vision to verified impact โ an AI-native, fully autonomous software development methodology.

Overview
Provide a human vision statement. The AI autonomously researches, audits your codebase, generates specs and plans, implements, and validates โ with bi-directional verification at every junction to ensure nothing is missed or invented.
graph LR
V[1. Vision<br/>Human Input] -->|<-->| S[2. Strategy<br/>AI Research]
S -->|<-->| T[3. Tactics<br/>AI Audit]
T -->|<-->| SP[4. Specs<br/>SDD]
SP -->|<-->| PL[5. Plan]
PL -->|<-->| TK[6. Tasks]
TK -->|<-->| IM[7. Implement]
IM -->|<-->| VS[8. Validate<br/>Impact Verified]
style V fill:#4CAF50,color:#fff
style S fill:#2196F3,color:#fff
style T fill:#FF9800,color:#fff
style SP fill:#9C27B0,color:#fff
style VS fill:#4CAF50,color:#fff
Table of Contents
Quick Start (โค 5 minutes)
Fastest path: no install โ connect an MCP client to the hosted endpoint
https://vdd.simonmak.com/api/mcp (Streamable HTTP); or run the one-line install below.
curl -sSL https://raw.githubusercontent.com/simonmak-ascent/vision-driven-design/main/scripts/install.sh | bash
Then in your project:
/vdd:init
/vdd:vision "your vision here"
/vdd:e2e "your vision here"
The AI handles the rest โ researching, auditing, generating specs, planning, implementing, and validating โ with self-gating at 7 bi-directional verification junctions.
Skill reference โ โ commands, the 8-phase chain, and the quality gates.
How It Works
VDD follows Goldratt's recursive Strategy-Tactic decomposition: every phase is simultaneously the Tactic for its parent and the Strategy for its child.
| Phase | S&T Role | Output |
|---|
| 0. Constitution | (pre-chain) | constitution.md โ Immutable project rules |
| 1. Vision | L1 Strategy: What impact? | vision.md โ Impact model, success metrics |
| 2. Strategy | L1 Tactic โ L2 Strategy | strategy.md โ Research, 12 pillars, risk register |
| 3. Tactics | L2 Tactic โ L3 Strategy | tactics.md โ Codebase audit, 38 action items |
| 4. Specs | L3 Tactic โ L4 Strategy | spec.md โ MoSCoW acceptance criteria |
| 5. Plan | L4 Tactic โ L5 Strategy | plan.md, data-model.md, contracts/ |
| 6. Tasks | L5 Tactic โ L6 Strategy | tasks.md โ Test-first atomic tasks |
| 7. Implement | L6 Tactic โ L7 Strategy | Code โ Per-task commits with full traceability |
| 8. Validate | L7 Tactic โ Did it work? | impact-report.md โ Drift + impact verification |
7 bi-directional gates verify both directions at every junction (108 total checks). Each gate validates 4 S&T assumptions: Necessity, Achievability, Sufficiency, Warnings.
Every code commit traces back to the original vision statement:
V-001 โ S-002 โ T-003 โ SP-004 โ PL-005 โ TK-006 โ commit
The pipeline and its 7 gates
flowchart TB
C["Phase 0 ยท Constitution<br/>constitution.md"] --> V["Phase 1 ยท Vision<br/>vision.md"]
V -.->|G1| S["Phase 2 ยท Strategy<br/>strategy.md"]
S -.->|G2| T["Phase 3 ยท Tactics<br/>tactics.md"]
T -.->|G3| SP["Phase 4 ยท Specs<br/>spec.md"]
SP -.->|G4| PL["Phase 5 ยท Plan<br/>plan.md ยท data-model ยท contracts"]
PL -.->|G5| TK["Phase 6 ยท Tasks<br/>tasks.md"]
TK -.->|G6| I["Phase 7 ยท Implement<br/>code + per-task commits"]
I -.->|G7| VA["Phase 8 ยท Validate<br/>impact-report.md"]
Bi-directional traceability
Each gate checks forward (parent โ children) and backward (children โ parent),
108 checks in total.
flowchart LR
subgraph F["Forward: intent โ code"]
direction LR
V1["Vision V-*"] --> S1["Strategy S-*"] --> T1["Tactics T-*"] --> SP1["Spec SP-*"] --> PL1["Plan PL-*"] --> TK1["Tasks TK-*"] --> C1["Commit"]
end
subgraph B["Backward: code โ intent"]
direction LR
C2["Commit"] --> TK2["Tasks TK-*"] --> PL2["Plan PL-*"] --> SP2["Spec SP-*"] --> T2["Tactics T-*"] --> S2["Strategy S-*"] --> V2["Vision V-*"]
end
Change cascade
flowchart TB
CH["Requirement change<br/>/vdd:amend"] --> FIND["Find the highest affected level"]
FIND --> U1["Update Vision"] --> U2["Update Strategy"] --> U3["Update Tactics"] --> U4["Update Specs"] --> U5["Update Plan"] --> U6["Update Tasks"]
U6 --> REG["Re-run affected gates G1โG7"]
REG --> IMPL["Re-implement only the changed tasks"]
Commands
| Command | Phase | Action |
|---|
/vdd:init | 0 | Generate constitution.md from project context |
/vdd:vision "statement" | 1 | Expand freeform vision โ structured vision.md |
/vdd:strategize | 2 | Load domain primers, spawn research subagents, synthesize strategy.md |
/vdd:tactics | 3 | Audit repo โ gap analysis โ tactics.md |
/vdd:specify <ID | "desc"> | 4 | Generate spec.md (or freeform โ skips V/S/T) |
/vdd:clarify <feature> | 4 | Clarification pass on a spec |
/vdd:plan <feature> | 5 | Generate plan.md, data-model.md, contracts/ |
/vdd:tasks <feature> | 6 | Generate tasks.md |
/vdd:get-next-task <feature> | 7 | Extract next uncompleted task |
/vdd:implement <task-id> | 7 | Execute single task, verify, commit |
/vdd:validate | 8 | Full-chain traceability + drift + impact report |
/vdd:trace | any | Bidirectional traceability matrix |
/vdd:analyze <feature> | any | Cross-artifact consistency analysis |
/vdd:amend "what changed" | any | Cascade requirement change through full chain |
/vdd:detect-environment | any | Report per-phase tool/MCP requirements + available capabilities |
/vdd:e2e "vision statement" | 0โ8 | End-to-end: run full 8-phase chain in one call, writes all 10+ template files |
/vdd:e2e -clone <domain> | 7 | Clone: crawl site (browserless/fetch) into a full dataset + exact UI/UX + rebuilt backend + generated schema + AI tools + deployable dynamic site (vdd/clone-site/) from a domain (https/http/www/bare) |
Installation
git clone https://github.com/simonmak-ascent/vision-driven-design.git \
~/.config/opencode/skills/vision-driven-design/
git clone https://github.com/simonmak-ascent/vision-driven-design.git \
~/.claude/skills/vision-driven-design/
git clone https://github.com/simonmak-ascent/vision-driven-design.git \
.cursor/skills/vision-driven-design/
Local MCP (from source)
To run the MCP server locally (stdio) instead of the hosted endpoint:
git clone https://github.com/simonmak-ascent/vision-driven-design.git
cd vision-driven-design
pnpm install
pnpm -r build
OpenCode (opencode.json):
"vdd": {
"type": "local",
"command": ["node", "<repo>/packages/vdd-mcp/dist/stdio.js"],
"enabled": true
}
Claude Desktop (claude_desktop_config.json):
"vdd": {
"command": "node",
"args": ["<repo>/packages/vdd-mcp/dist/stdio.js"],
"type": "stdio"
}
MCP API
VDD is available as a public MCP server at https://vdd.simonmak.com โ 15 tools, no API key required โ over the MCP Streamable HTTP transport at https://vdd.simonmak.com/api/mcp (also reachable at /mcp). The legacy SSE endpoint is retired: https://vdd.simonmak.com/api/sse now returns an HTTP 308 redirect to /api/mcp.
Agent Configuration
OpenCode โ add to opencode.json:
"vdd": {
"type": "remote",
"url": "https://vdd.simonmak.com/api/mcp",
"timeout": 120000
}
Claude Desktop โ add to claude_desktop_config.json:
"vdd": {
"command": "npx",
"args": ["-y", "@simonmak-ascent/mcp"],
"type": "stdio"
}
Cursor โ add MCP server URL: https://vdd.simonmak.com/api/mcp
Any Streamable HTTP client (Smithery, Claude Code, โฆ) โ MCP server URL: https://vdd.simonmak.com/api/mcp
vdd_init, vdd_vision, vdd_strategize, vdd_tactics, vdd_specify, vdd_clarify, vdd_plan, vdd_tasks, vdd_get_next_task, vdd_implement, vdd_validate, vdd_inspect, vdd_amend, vdd_clone, vdd_detect_environment.
The one-call e2e shortcut is not an MCP tool (it duplicates the phase sequence); use the CLI vdd e2e "vision" instead.
Each tool advertises only the parameters it reads. Shared inputs include statement, projectRoot, actionItemId, feature, taskId, description, and availableTools/capabilities (aliases) plus researchFindings. Filesystem-dependent tools additionally accept artifactFiles (pathโcontent) โ and vdd_tactics accepts codebaseAudit โ for the hosted endpoint.
Hosted vs local (filesystem)
The hosted endpoint (https://vdd.simonmak.com/api/mcp) is stateless and has no filesystem. It returns artifacts and, for filesystem-dependent phases, a delegation envelope for the calling agent to execute locally:
- Artifact-producing phases (
vdd_init, vdd_vision, vdd_strategize, vdd_tactics, vdd_specify, vdd_plan, vdd_tasks, vdd_validate, vdd_clone) return their content with persisted: false and a writeTargets list โ the agent writes them.
- Read phases (
vdd_tactics, vdd_clarify, vdd_get_next_task, vdd_inspect, vdd_validate, vdd_implement) return a delegation envelope when given no content; re-call the same tool with artifactFiles (and codebaseAudit for tactics) to receive the real result.
For direct read/write of a local project, run the local stdio server instead โ npx -y @simonmak-ascent/mcp (see Local MCP). It performs real filesystem I/O and returns mode: "local", persisted: true.
MCP Prompts (3)
start_vdd_project (vision โ validated task list), implement_next_task (one test-first task with traceability) and change_requirement (cascade a change and re-run the gates). Available on the stdio server and the hosted endpoint.
MCP Registry (Glama)
The server is listed on Glama, which builds it from source and publishes a hosted remote endpoint plus a Tool Definition Quality Score and maintenance rating:

Maintainer notes:
-
glama.json (repo root) is Glama's registry file. Its schema consumes exactly one field โ maintainers. Build/transport/description metadata belongs in package.json and this README, not here; Glama ignores it.
-
Glama generates its own container build from the stdio entrypoint (packages/vdd-mcp/dist/stdio.js), wrapped with mcp-proxy. The root Dockerfile is for self-hosting the Streamable HTTP server, not for Glama.
-
After tool-definition changes: sync the repository and run Build & Release in the Glama admin. Tool-level scores refresh on the next sweep; the server-level coherence score re-runs less often.
-
Also published to the Official MCP Registry as io.github.simonmak-ascent/vision-driven-design (manifest: server.json) โ PulseMCP and other directories ingest from there.
-
Listed in the awesome-mcp-servers community list under Developer Tools.
-
Listed on Agent Status โ an outside-in MCP reliability index that probes reach, catalog, and tool calls from real hosts (Cursor, Claude, VS Code, ChatGPT). The submission created the Free dashboard account; the score populates after the first probe.

API Reference
| Method | Description |
|---|
POST /api/mcp | Streamable HTTP โ JSON-RPC initialize, tools/list, tools/call (stateless) |
GET /api/mcp | HTML docs page for browsers; 405 for MCP clients (no server-initiated stream) |
DELETE /api/mcp | 204 โ no session state to terminate |
/api/sse | Retired โ HTTP 308 redirect to /api/mcp |
curl -X POST https://vdd.simonmak.com/api/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
curl -X POST https://vdd.simonmak.com/api/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"vdd_validate","arguments":{"projectRoot":"."}},"id":1}'
The full TypeScript engine (packages/vdd-engine, packages/vdd-mcp, packages/vdd-cli) is included in this repo.
Domains Covered
VDD loads domain-specific research patterns during the Strategy phase based on your vision:
| Domain | What it covers |
|---|
| WebApp | UX, accessibility (WCAG 2.2), performance budgets, framework evaluation |
| Data Storage | Schema design, indexing strategy, data governance, ACID vs eventual |
| ETL | Pipeline architecture, data quality, batch vs streaming |
| Infrastructure | CI/CD, observability, security, scaling, disaster recovery |
| Human Factors | Behavioral economics, cognitive load, habit formation, accessibility cognition |
| Verification Toolchain | Playwright, Browserless, Sentry, CI/CD quality pipeline |
| Safety-Critical | FMEA/FTA, DO-178C/IEC 62304 safety integrity levels |
human-factors.md and verification-toolchain.md are loaded unconditionally for every project.
Best-Practice Benchmark
VDD is benchmarked against NASA SE, CMMI REQM, DO-178C, IEC 62304, DORA, ISO 29148, and GitHub Spec Kit:
47/47 criteria matched (100%), 11 exceeded, 0 gaps.
Standards & compliance evidence โ
Documentation
Repository Structure
โโโ SKILL.md # Entry point โ loaded by OpenCode
โโโ README.md # This file
โโโ AGENTS.md # Instructions for AI agents
โโโ constitution.md # Project constitution (dogfooded)
โโโ CHANGELOG.md # Versioned change history
โโโ CONTRIBUTING.md # Contribution guidelines
โโโ LICENSE # MIT
โโโ index.html # GitHub Pages landing page
โโโ pnpm-workspace.yaml # Workspace config
โโโ package.json # Root package (Vercel + workspace)
โโโ vercel.json # Vercel deployment config
โโโ Dockerfile # Self-host build โ Streamable HTTP MCP server
โโโ glama.json # Glama registry file (maintainers only)
โโโ server.json # Official MCP Registry manifest
โโโ domain-primers/ # 7 domain research patterns
โ โโโ webapp.md
โ โโโ data-storage.md
โ โโโ etl.md
โ โโโ infrastructure.md
โ โโโ human-factors.md # Loaded unconditionally
โ โโโ verification-toolchain.md # Loaded unconditionally
โ โโโ safety-critical.md # FMEA/FTA, DO-178C/IEC 62304
โโโ references/ # 10 authoritative reference docs
โ โโโ INDEX.md # Navigation map
โ โโโ quick-reference.md # 1-page cheat sheet
โ โโโ workflow-phases.md # Phase order (authoritative)
โ โโโ artifact-templates.md # 11 artifact templates (authoritative)
โ โโโ prompt-patterns.md # AI prompts (authoritative)
โ โโโ quality-gates.md # 7 gates + 108 checks (authoritative)
โ โโโ ai-agent-patterns.md # Agent orchestration (authoritative)
โ โโโ anti-patterns.md # 24 failure modes (authoritative)
โ โโโ traceability-matrix.md # RTM format + CI/CD
โ โโโ compliance-evidence.md # Evidence maps
โโโ vdd/ # VDD chain artifacts
โ โโโ vision.md # Vision, impact model, 17 impacts
โ โโโ strategy.md # 12 strategic pillars
โ โโโ tactics.md # 38 action items (all DONE)
โ โโโ impact-report.md # Full-chain traceability + drift
โ โโโ docs/ # 16 guides and references
โ โโโ specs/ # 3 feature specs
โโโ packages/ # TypeScript monorepo
โ โโโ vdd-engine/ # Shared core โ 18 phase functions + meta.ts
โ โโโ vdd-mcp/ # MCP server โ 15 tools, stdio + Streamable HTTP
โ โโโ vdd-cli/ # CLI binary โ 17 subcommands
โโโ api/ # Vercel MCP endpoint
โ โโโ mcp.js # Streamable HTTP MCP endpoint (15 tools)
โ โโโ _vdd-rpc.js # Shared JSON-RPC core + browser docs page (not routed)
โโโ scripts/ # 4 installer/helper scripts
โโโ .github/ # GitHub config
โโโ CODEOWNERS
โโโ ISSUE_TEMPLATE/
โโโ workflows/
Acknowledgements
Built on:
- Goldratt's Strategy-and-Tactic Tree โ recursive decomposition at every phase
- Impact Mapping (Gojko Adzic) โ goal โ actors โ impacts โ deliverables
- GitHub Spec Kit โ spec-driven development with AI agents
- NASA Systems Engineering โ bidirectional traceability and verification chains
- CMMI Requirements Management โ bidirectional traceability of requirements
Use with Context7
Up-to-date Vision Driven Design documentation is indexed on Context7, so coding agents can pull it into context on demand. With the Context7 MCP server or ctx7 CLI installed, name the library in your prompt:
use library /simonmak-ascent/vision-driven-design for API and docs
License
MIT โ see LICENSE.
By Simon Mak.
If this saves you time, a โญ on GitHub helps others find it.