buildanything 2.0.0 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +9 -1
  3. package/README.md +57 -61
  4. package/agents/a11y-architect.md +2 -0
  5. package/agents/briefing-officer.md +172 -0
  6. package/agents/business-model.md +14 -12
  7. package/agents/code-architect.md +6 -1
  8. package/agents/code-reviewer.md +3 -2
  9. package/agents/code-simplifier.md +12 -4
  10. package/agents/design-brand-guardian.md +19 -0
  11. package/agents/design-critic.md +16 -11
  12. package/agents/design-inclusive-visuals-specialist.md +2 -0
  13. package/agents/design-ui-designer.md +17 -0
  14. package/agents/design-ux-architect.md +15 -0
  15. package/agents/design-ux-researcher.md +102 -7
  16. package/agents/engineering-ai-engineer.md +2 -0
  17. package/agents/engineering-backend-architect.md +2 -0
  18. package/agents/engineering-data-engineer.md +2 -0
  19. package/agents/engineering-devops-automator.md +2 -0
  20. package/agents/engineering-frontend-developer.md +13 -0
  21. package/agents/engineering-mobile-app-builder.md +2 -0
  22. package/agents/engineering-rapid-prototyper.md +15 -2
  23. package/agents/engineering-security-engineer.md +2 -0
  24. package/agents/engineering-senior-developer.md +13 -0
  25. package/agents/engineering-sre.md +2 -0
  26. package/agents/engineering-technical-writer.md +2 -0
  27. package/agents/feature-intel.md +8 -7
  28. package/agents/ios-app-review-guardian.md +2 -0
  29. package/agents/ios-foundation-models-specialist.md +2 -0
  30. package/agents/ios-product-reality-auditor.md +292 -0
  31. package/agents/ios-storekit-specialist.md +2 -0
  32. package/agents/ios-swift-architect.md +1 -0
  33. package/agents/ios-swift-search.md +1 -0
  34. package/agents/ios-swift-ui-design.md +7 -4
  35. package/agents/marketing-app-store-optimizer.md +2 -0
  36. package/agents/planner.md +6 -1
  37. package/agents/pr-test-analyzer.md +3 -2
  38. package/agents/product-feedback-synthesizer.md +62 -0
  39. package/agents/product-owner.md +163 -0
  40. package/agents/product-reality-auditor.md +216 -0
  41. package/agents/product-spec-writer.md +176 -0
  42. package/agents/refactor-cleaner.md +9 -1
  43. package/agents/security-reviewer.md +2 -1
  44. package/agents/silent-failure-hunter.md +2 -1
  45. package/agents/swift-build-resolver.md +2 -0
  46. package/agents/swift-reviewer.md +2 -1
  47. package/agents/tech-feasibility.md +5 -3
  48. package/agents/testing-api-tester.md +2 -0
  49. package/agents/testing-evidence-collector.md +24 -0
  50. package/agents/testing-performance-benchmarker.md +2 -0
  51. package/agents/testing-reality-checker.md +2 -1
  52. package/agents/visual-research.md +7 -5
  53. package/bin/adapters/scribe-tool.ts +4 -2
  54. package/bin/adapters/write-lease-tool.ts +1 -1
  55. package/bin/buildanything-runtime.ts +20 -107
  56. package/bin/graph-index.js +24 -0
  57. package/bin/graph-index.ts +340 -0
  58. package/bin/mcp-servers/graph-mcp.js +26 -0
  59. package/bin/mcp-servers/graph-mcp.ts +481 -0
  60. package/bin/mcp-servers/orchestrator-mcp.js +26 -0
  61. package/bin/mcp-servers/orchestrator-mcp.ts +361 -0
  62. package/bin/setup.js +272 -111
  63. package/commands/build.md +424 -177
  64. package/commands/idea-sweep.md +2 -2
  65. package/commands/setup.md +15 -4
  66. package/commands/ux-review.md +3 -3
  67. package/commands/verify.md +3 -0
  68. package/docs/migration/phase-graph.yaml +573 -157
  69. package/hooks/design-md-lint +4 -0
  70. package/hooks/design-md-lint.ts +295 -0
  71. package/hooks/pre-tool-use.ts +37 -6
  72. package/hooks/record-mode-transitions.ts +63 -6
  73. package/hooks/subagent-start.ts +3 -2
  74. package/package.json +3 -1
  75. package/protocols/agent-prompt-authoring.md +165 -0
  76. package/protocols/architecture-schema.md +10 -3
  77. package/protocols/cleanup.md +4 -0
  78. package/protocols/decision-log.md +8 -4
  79. package/protocols/design-md-authoring.md +520 -0
  80. package/protocols/design-md-spec.md +362 -0
  81. package/protocols/fake-data-detector.md +1 -1
  82. package/protocols/ios-fake-data-detector.md +65 -0
  83. package/protocols/ios-phase-branches.md +128 -43
  84. package/protocols/launch-readiness.md +9 -5
  85. package/protocols/metric-loop.md +1 -1
  86. package/protocols/page-spec-schema.md +234 -0
  87. package/protocols/product-spec-schema.md +354 -0
  88. package/protocols/sprint-tasks-schema.md +53 -0
  89. package/protocols/state-schema.json +38 -3
  90. package/protocols/state-schema.md +32 -2
  91. package/protocols/verify.md +29 -1
  92. package/protocols/web-phase-branches.md +246 -76
  93. package/skills/ios/ios-bootstrap/SKILL.md +1 -1
  94. package/src/graph/ids.ts +86 -0
  95. package/src/graph/index.ts +32 -0
  96. package/src/graph/parser/architecture.ts +603 -0
  97. package/src/graph/parser/component-manifest.ts +268 -0
  98. package/src/graph/parser/decisions-jsonl.ts +407 -0
  99. package/src/graph/parser/design-md-pass2.ts +253 -0
  100. package/src/graph/parser/design-md.ts +477 -0
  101. package/src/graph/parser/page-spec.ts +496 -0
  102. package/src/graph/parser/product-spec.ts +930 -0
  103. package/src/graph/parser/screenshot.ts +342 -0
  104. package/src/graph/parser/sprint-tasks.ts +317 -0
  105. package/src/graph/storage/index.ts +1154 -0
  106. package/src/graph/types.ts +432 -0
  107. package/src/graph/util/dhash.ts +84 -0
  108. package/src/lrr/aggregator.ts +105 -10
  109. package/src/orchestrator/hooks/context-header.ts +34 -10
  110. package/src/orchestrator/hooks/token-accounting.ts +25 -14
  111. package/src/orchestrator/mcp/cycle-counter.ts +2 -1
  112. package/src/orchestrator/mcp/scribe.ts +27 -16
  113. package/src/orchestrator/mcp/write-lease.ts +30 -13
  114. package/src/orchestrator/phase4-shared-context.ts +20 -4
  115. package/protocols/visual-dna.md +0 -185
@@ -12,7 +12,7 @@
12
12
  "name": "buildanything",
13
13
  "source": "./",
14
14
  "description": "Full product build pipeline with 44 specialist agents orchestrated across architecture, implementation, testing, and hardening phases. Includes /build (full factory) and /idea-sweep (parallel research).",
15
- "version": "2.0.0"
15
+ "version": "2.1.2"
16
16
  }
17
17
  ]
18
18
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "buildanything",
3
- "version": "2.0.0",
3
+ "version": "2.1.2",
4
4
  "description": "One command to build an entire product. 44 specialist agents orchestrated into a full engineering pipeline — from idea to shipped, tested, reviewed code.",
5
5
  "author": {
6
6
  "name": "Sujit"
@@ -19,5 +19,13 @@
19
19
  "claudeCodeHostRange": ">=1.5.0 <3.0.0",
20
20
  "sdkVersion": "0.2.114",
21
21
  "maxSupportedSchemaVersion": 2
22
+ },
23
+ "mcpServers": {
24
+ "orchestrator": {
25
+ "command": "${CLAUDE_PLUGIN_ROOT}/bin/mcp-servers/orchestrator-mcp.js"
26
+ },
27
+ "graph": {
28
+ "command": "${CLAUDE_PLUGIN_ROOT}/bin/mcp-servers/graph-mcp.js"
29
+ }
22
30
  }
23
31
  }
package/README.md CHANGED
@@ -2,9 +2,9 @@
2
2
 
3
3
  **One command to build an entire product.**
4
4
 
5
- buildanything is a Claude Code plugin that orchestrates 44 specialist AI agents into a full engineering pipeline — from idea to shipped, tested, reviewed code. You describe what you want to build. buildanything handles research, design, architecture, implementation, behavioral testing, and hardening.
5
+ buildanything is a Claude Code plugin that orchestrates 48 specialist AI agents into a full engineering pipeline — from idea to shipped, tested, reviewed code. You describe what you want to build. buildanything handles research, design, architecture, implementation, behavioral testing, and hardening.
6
6
 
7
- No agent expertise required. No manual coordination. Just `/build`.
7
+ Works for both **web apps** and **iOS/Swift apps**.
8
8
 
9
9
  ## Install
10
10
 
@@ -12,34 +12,42 @@ No agent expertise required. No manual coordination. Just `/build`.
12
12
  npx buildanything
13
13
  ```
14
14
 
15
- This installs the plugin, companion plugins, and [agent-browser](https://github.com/vercel-labs/agent-browser) for behavioral testing.
15
+ This installs the plugin and companion tools (agent-browser for behavioral testing, Playwright for E2E).
16
16
 
17
- **Or manually in Claude Code:**
17
+ For iOS builds, run the iOS setup instead:
18
18
  ```
19
- /plugin marketplace add sujitmeka/buildanything
20
- /plugin install buildanything@buildanything-marketplace
19
+ npx buildanything --ios
21
20
  ```
22
21
 
22
+ This additionally installs XcodeBuildMCP, apple-docs-mcp, and Maestro.
23
+
23
24
  ## Commands
24
25
 
25
26
  ### `/build` — Full Product Pipeline
26
27
 
27
- Takes an idea and builds it through 8 phases with quality gates, metric-driven iteration loops, and behavioral verification:
28
+ Takes an idea and builds it through 8 phases (0–7) with quality gates, three-tier dispatch, per-feature behavioral verification, and a final launch review. iOS builds add a bootstrap phase (-1) for Xcode project + Maestro scaffold.
29
+
30
+ 0. **Discover** — Scans for existing work, detects project type (web vs iOS), checks prerequisites, replays prior-build learnings.
31
+ 1. **Plan** — Interactive brainstorming + 4 parallel research agents (market, tech, user, business) → PRD + product spec (canonical feature inventory: states, transitions, business rules, persona constraints, acceptance criteria) + per-project CLAUDE.md.
32
+ 2. **Architect** — 6-architect team (backend, frontend, data, security, accessibility, performance) cross-checking each other → architecture doc + sprint task DAG.
33
+ 3. **Design** — Competitive research, brand DNA card, component manifest, per-screen wireframes, living `/design-system` route, design critic loop targeting 195/240 across 7 DNA axes + 5 craft dimensions.
34
+ 4. **Build** — Three-tier dispatch: Product Owner sequences features → Briefing Officer per feature decomposes into structured task briefs → implementers query the graph for spec slices and execute. Per-task verify gate after each.
35
+ 5. **Audit** — Three orthogonal layers run in parallel:
36
+ - **Track A (engineering reality)** — 5 parallel auditors: API contract, performance, accessibility, security, brand drift.
37
+ - **Track B (product reality)** — one auditor per feature, runs 7 check classes (screen reachability, state coverage, transition firing, business-rule enforcement, happy path, persona walkthrough, manifest wiring) against the live app.
38
+ - **Cross-cutting** — Playwright E2E for multi-feature journeys, autonomous dogfooding for emergent issues, fake-data detector for hardcoded mocks.
28
39
 
29
- 0. **Context & Pre-Flight** Scans for existing work, checks prerequisites, initializes state.
30
- 1. **Brainstorm & Research** — Interactive brainstorming + 5 parallel research agents (market, tech, user, business, risk). Writes CLAUDE.md as the product brain.
31
- 2. **Architecture & Planning** — 4 parallel architecture agents + sprint planning with user journeys, NFRs, and behavioral acceptance criteria per task.
32
- 3. **Design & Visual Identity** — Competitive research via Playwright, living style guide with every component rendered and interactive, visual QA scoring at 80/100. Anti-AI-template detection.
33
- 4. **Foundation** — Scaffolding, design system from style guide, acceptance test stubs (TDD-style — tests fail until features are built).
34
- 5. **Build** — Per-task: implement → cleanup → metric loop → behavioral smoke test (agent-browser) → 7-check verification. Each task verified before the next starts.
35
- 6. **Harden** — 5 parallel audits (API, performance, accessibility, security, UX quality) → eval harness → metric loop → E2E tests from user journeys → autonomous dogfooding → fake data detector → Reality Checker with fix-and-retest loops.
36
- 7. **Ship** — Requirements coverage report, documentation, learnings capture.
40
+ All findings consolidate at the feedback synthesizer, then route to a fix loop.
41
+ 6. **Launch Review** — 5 chapter judges (engineering quality, security, SRE, accessibility, brand) + aggregator that can route back to earlier phases on BLOCK.
42
+ 7. **Ship** — Documentation, deployment, learnings capture.
37
43
 
38
44
  ```
39
45
  /build a prediction market maker for Polymarket
40
46
  /build docs/plans/my-design.md --autonomous
41
47
  ```
42
48
 
49
+ For iOS builds, the pipeline automatically routes to a Swift-native flow (SwiftUI, Swift 6.2, SwiftData, iOS 26 SDK).
50
+
43
51
  ### `/idea-sweep` — Parallel Research Sweep
44
52
 
45
53
  5 research agents evaluate an idea in parallel. Outputs a decision brief: GO / PIVOT / INVESTIGATE / KILL.
@@ -52,76 +60,64 @@ Takes an idea and builds it through 8 phases with quality gates, metric-driven i
52
60
 
53
61
  | Command | Use case |
54
62
  |---|---|
55
- | `/fix` | "The submit button doesn't work" — scoped bug fixing with agent-browser verification |
56
- | `/ux-review` | "The dashboard feels cramped" — UX audit against the living style guide, mobile checks |
57
- | `/add-feature` | "Add a pause button" — mini build cycle using existing design system and architecture |
63
+ | `/fix` | "The submit button doesn't work" — scoped bug fixing with behavioral verification |
64
+ | `/ux-review` | "The dashboard feels cramped" — UX audit against the design system |
65
+ | `/add-feature` | "Add a pause button" — mini build cycle reusing the locked design system |
58
66
  | `/dogfood` | "Test everything" — autonomous exploratory testing of the running app |
59
- | `/verify` | "Does it all pass?" — quick 7-check health check |
60
- | `/refactor` | "Change the auth to OAuth" — architect plans the change, then incremental execution |
61
-
62
- All commands are argument-driven — they scope themselves to what you describe.
67
+ | `/verify` | "Does it all pass?" — 7-check health check |
68
+ | `/refactor` | "Change auth to OAuth" — architect plans, then incremental execution |
63
69
 
64
70
  ## How It Works
65
71
 
66
- ### Behavioral Verification (agent-browser)
72
+ ### Single Source of Truth via Graph
67
73
 
68
- Every UI task is smoke tested after implementation. [agent-browser](https://github.com/vercel-labs/agent-browser) opens the app, clicks buttons, fills forms, and collects evidence:
74
+ Phase 1 produces a canonical product spec (states, transitions, business rules, persona constraints, acceptance criteria). The plugin indexes it into a per-build graph. Phase 2-5 agents query the graph for typed slices instead of paraphrasing source markdown — closing the gap where product context gets lost between phases.
69
75
 
70
- - **Snapshot diffs** — verifies DOM actually changes when you click something
71
- - **Network inspection** — catches failed API calls and missing endpoints
72
- - **Console errors** — catches uncaught JS exceptions
73
- - **Annotated screenshots** — labeled visual evidence (Claude is multimodal)
74
- - **HAR capture** — full network traffic for fake data analysis
76
+ ### Behavioral Verification
75
77
 
76
- If a button doesn't work, the smoke test catches it immediately not in Phase 6.
78
+ Every UI task is smoke tested after implementation. [agent-browser](https://github.com/vercel-labs/agent-browser) opens the app, clicks buttons, fills forms, and collects evidence: snapshot diffs, network inspection, console errors, annotated screenshots. Track B (Phase 5) extends this to a full per-feature reality check.
77
79
 
78
- ### Living Style Guide
80
+ ### Per-Project Brain
79
81
 
80
- Phase 3 builds a rendered, interactive style guide at `/design-system` with every component in every state. This ships with the product and is referenced at every stage:
82
+ Phase 1 generates a `CLAUDE.md` file in your project root (<200 lines). This becomes auto-loaded context for every agent in subsequent phases keeping product decisions, persona constraints, and architectural notes accessible without re-reading raw research.
81
83
 
82
- - Phase 4: Design system tokens match the style guide
83
- - Phase 5: Implementation agents reference it for UI tasks
84
- - Phase 6: UX audit compares every page against it
84
+ ### Living Design System
85
85
 
86
- ### Feedback Loops
86
+ Phase 3 builds `DESIGN.md` (brand DNA + tokens + component prose) and a rendered `/design-system` route. Implementation agents reference both; the brand guardian audits the built output against the locked DNA card.
87
87
 
88
- Every testing step feeds back into development:
88
+ ### Feedback Loops
89
89
 
90
- - Smoke test fails → fix agent + re-test (max 2 cycles)
91
- - Dogfood finds issuesclassify + fix + re-dogfood (max 3 cycles)
92
- - Fake data detectedfix agent replaces with real API calls (max 2 cycles)
93
- - Reality Checker says NEEDS WORK → classify issues + fix + re-verify + re-check (max 2 cycles)
90
+ - Per-task smoke test fails → fix + re-test (max 2 cycles)
91
+ - Phase 5 findingssynthesizer classifies fix loop re-verify (max 2 cycles)
92
+ - LRR Aggregator says BLOCK routes back to the originating phase for re-work
94
93
 
95
94
  Nothing gets logged and ignored.
96
95
 
97
- ## The 61 Agents
98
-
99
- ### Design (8)
100
- Brand Guardian · Image Prompt Engineer · Inclusive Visuals Specialist · UI Designer · UX Architect · UX Researcher · Visual Storyteller · Whimsy Injector
96
+ ## The 48 Agents
101
97
 
102
- ### Engineering (9)
103
- AI Engineer · Autonomous Optimization Architect · Backend Architect · Data Engineer · DevOps Automator · Frontend Developer · Mobile App Builder · Rapid Prototyper · Security Engineer · Senior Developer · Technical Writer
98
+ ### Design (7)
99
+ Brand Guardian · Design Critic · Inclusive Visuals Specialist · UI Designer · UX Architect · UX Researcher · Visual Research
104
100
 
105
- ### Marketing (8)
106
- App Store Optimizer · Instagram Curator · Reddit Community Builder · Social Media Strategist · TikTok Strategist · Twitter Engager · WeChat Official Account Manager · Xiaohongshu Specialist · Zhihu Strategist
101
+ ### Engineering (11)
102
+ AI Engineer · Backend Architect · Data Engineer · DevOps Automator · Frontend Developer · Mobile App Builder · Rapid Prototyper · Security Engineer · Senior Developer · SRE · Technical Writer
107
103
 
108
- ### Product (2)
109
- Behavioral Nudge Engine · Feedback Synthesizer
104
+ ### iOS (8)
105
+ App Review Guardian · Foundation Models Specialist · StoreKit Specialist · Swift Architect · Swift Search · Swift UI Design · Swift Build Resolver · Swift Reviewer
110
106
 
111
- ### Project Management (1)
112
- Experiment Tracker
107
+ ### Code Quality (7)
108
+ A11y Architect · Code Architect · Code Reviewer · Code Simplifier · Refactor Cleaner · Security Reviewer · Silent Failure Hunter
113
109
 
114
- ### Specialized (4)
115
- Agentic Identity & Trust Architect · Cultural Intelligence Strategist · Developer Advocate · Data Consolidation Agent · Report Distribution Agent · Sales Data Extraction Agent
110
+ ### Testing (5)
111
+ API Tester · Evidence Collector · Performance Benchmarker · PR Test Analyzer · Reality Checker
116
112
 
117
- ### Support (5)
118
- Analytics Reporter · Executive Summary Generator · Finance Tracker · Legal Compliance Checker · Support Responder
113
+ ### Planning & Research (4)
114
+ Business Model · Feature Intel · Planner · Tech Feasibility
119
115
 
120
- ### Testing (7)
121
- Accessibility Auditor · API Tester · Evidence Collector · Performance Benchmarker · Reality Checker · Test Results Analyzer · Tool Evaluator · Workflow Optimizer
116
+ ### Product Pipeline (4)
117
+ Product Spec Writer · Product Owner · Briefing Officer · Product Reality Auditor
122
118
 
123
- ### Research (5)
124
- market-intel · tech-feasibility · user-research · business-model · risk-analysis
119
+ ### Product & Marketing (2)
120
+ App Store Optimizer · Feedback Synthesizer
125
121
 
126
122
  ## License
127
123
 
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: a11y-architect
3
3
  description: Accessibility Architect specializing in WCAG 2.2 compliance for Web and Native platforms. Use PROACTIVELY when designing UI components, establishing design systems, or auditing code for inclusive user experiences.
4
+ model: opus
5
+ effort: xhigh
4
6
  tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob", "Skill"]
5
7
  ---
6
8
 
@@ -0,0 +1,172 @@
1
+ ---
2
+ name: briefing-officer
3
+ description: Feature lead. Decomposes a feature into tasks, picks agents + skills, writes structured execution specs. Does NOT write code or make product decisions.
4
+ emoji: 📋
5
+ vibe: Knows every agent in the roster and what each one is good at.
6
+ model: sonnet
7
+ effort: medium
8
+ ---
9
+
10
+ # Briefing Officer
11
+
12
+ You are a feature lead. One Briefing Officer is dispatched per feature. You receive a feature delegation payload from the Product Owner and produce a feature brief — a file containing per-task execution specs that the orchestrator uses to dispatch execution agents.
13
+
14
+ You think in tasks, agent capabilities, skills, and execution sequencing. You do NOT write code. You do NOT make product decisions — the Product Owner already made those. You do NOT coordinate with other Briefing Officers — the Product Owner handles cross-feature concerns.
15
+
16
+ ## Authoring Standard
17
+
18
+ Your per-task brief blocks become the body of implementer dispatches. Apply `protocols/agent-prompt-authoring.md` when writing them — verbatim quotes with source refs over paraphrase, positive prescriptions over negative, motivation attached to non-obvious constraints.
19
+
20
+ ## Skill Access
21
+
22
+ This agent requires no external skills. It operates from its system prompt + the delegation payload + artifact reads. Agent and skill selection is a synthesis task — matching task requirements to agent capabilities and skill catalogs. No framework knowledge, platform APIs, or design tools needed.
23
+
24
+ ## What You Receive (from orchestrator, pasted into prompt)
25
+
26
+ 1. Feature name + `product_context` from the delegation plan
27
+ 2. Cross-feature contracts relevant to this feature (`provides` / `consumes`)
28
+ 3. Task IDs assigned to this feature
29
+ 4. Page spec refs for this feature's screens
30
+
31
+ ## What You Read
32
+
33
+ ### Primary: graph MCP queries
34
+
35
+ For everything that lives in `product-spec.md` — feature states, transitions, business rules, failure modes, persona constraints, acceptance criteria, screen inventory back-pointers — call the typed graph tools. One call per feature is enough; the result is the structured slice you slot into the brief.
36
+
37
+ 1. `mcp__plugin_buildanything_graph__graph_query_feature(feature_id)` — full structured spec slice for one feature. Returns: feature meta, screens, states + transitions, business rules, failure modes, persona constraints (one per `(feature, persona)` pair — see Multi-Persona below), acceptance criteria, `depends_on` features. Each field carries `source_location` (line ref into product-spec.md) for provenance.
38
+ 2. `mcp__plugin_buildanything_graph__graph_query_screen(screen_id, full?: boolean)` — screen description + owning features. With `full: true` (Slice 3), returns the full structured response: wireframe text, sections, screen states, screen_component_uses (with manifest entry joined inline), key copy, and tokens used. With `full` omitted or false (Slice 1 default), returns the slim inventory row + back-pointer. Use `full: true` for any UI task that touches a screen — it replaces the file read of page-specs/*.md and the manual joining of manifest entries.
39
+ 3. `mcp__plugin_buildanything_graph__graph_query_acceptance(feature_id)` — acceptance criteria + business rules + persona constraints, ready to drop verbatim into the per-task `Acceptance` / `Business rules` / `Persona` fields.
40
+ 4. `mcp__plugin_buildanything_graph__graph_query_dna()` — full 7-axis Brand DNA card (scope, density, character, material, motion, type, copy) plus Do's/Don'ts guidelines, references, and `lint_status`. Build-wide: call once per brief assembly and cache locally; the DNA does not vary per feature.
41
+ 5. `mcp__plugin_buildanything_graph__graph_query_manifest(slot?)` — component manifest entry by slot, or all entries if `slot` is omitted. Each entry carries `library`, `variant`, `source_ref`, and a `hard_gate: bool` flag; `manifest gap` rows additionally carry `fallback_plan`. When `hard_gate: true`, the implementer MUST import the named library variant rather than rebuild it.
42
+ 6. `mcp__plugin_buildanything_graph__graph_query_token(name)` — resolve a token name (e.g. `colors.primary`) to its concrete value (e.g. `#0F172A`). The BO does NOT call this itself — instead, list token names in the per-task brief and let the implementer resolve at code time. Returns `null` when the token is missing (Pass 2 of DESIGN.md not yet authored, or token name unknown).
43
+ 7. `mcp__plugin_buildanything_graph__graph_query_cross_contracts(endpoint)` — providing feature, consumer features, and the verbatim request/response schema + error codes for a shared API endpoint. Use this when assembling the per-task `API` and `Cross-Feature Contracts` fields — it replaces reading `docs/plans/architecture.md` for contract shapes. Call once per endpoint referenced in the delegation payload's `provides`/`consumes` list.
44
+ 8. `mcp__plugin_buildanything_graph__graph_query_decisions(filter?)` — open/triggered/resolved decisions filtered by `status`, `phase`, or `decided_by`. Call with `{ status: "open" }` at brief-assembly time to surface any unresolved decisions that affect this feature. Slot open decisions into the brief's `Feature Context` section so the implementer knows what is still in flux. If no open decisions exist, omit.
45
+
46
+ If any graph tool call fails (tool not found, null/empty payload for a known feature, schema mismatch), STOP and report the error to the orchestrator. Do NOT silently fall back to reading source markdown files. The graph is the single source of truth — a failed graph call means the build pipeline has a broken index step that must be fixed before briefing can proceed.
47
+
48
+ ### File-based reads (not yet in graph)
49
+
50
+ These artifacts are not yet indexed into the graph and are read via your Read tool:
51
+
52
+ 1. `docs/plans/sprint-tasks.md` — task rows for your assigned task IDs (description, dependencies, acceptance criteria)
53
+ 2. `docs/plans/page-specs/[screens].md` — layouts, wireframes, content hierarchy, data sources for this feature's screens (only when `graph_query_screen(full: true)` is not yet available for this screen)
54
+ 3. `docs/plans/architecture.md` — data model entities, auth model relevant to this feature (API contracts are graph-first via `graph_query_cross_contracts`)
55
+
56
+ ## What You Produce
57
+
58
+ `docs/plans/feature-briefs/{feature}.md` — a structured brief the orchestrator parses to dispatch execution agents.
59
+
60
+ ## Cognitive Protocol
61
+
62
+ Follow this sequence. The order is mandatory.
63
+
64
+ **1. ABSORB DELEGATION** — Read the product_context, cross-feature contracts, and task IDs from the delegation payload. This is your scope boundary. Do not expand it.
65
+
66
+ **2. QUERY FEATURE DETAILS** — Pull the structured product-spec slice from the graph. Call `mcp__plugin_buildanything_graph__graph_query_feature(feature_id)` once; if you also need the acceptance roll-up alone (e.g. for a follow-up task), call `mcp__plugin_buildanything_graph__graph_query_acceptance(feature_id)`. For each screen any assigned task touches, call `mcp__plugin_buildanything_graph__graph_query_screen(screen_id, full: true)` to fetch the full slice in one call: wireframe text, sections, screen states, screen_component_uses (with manifest entries joined inline), and key copy. The per-task `Wireframe` field comes from this call's `page_spec.wireframe_text`; if the call returns null or fails, STOP per the rule below. For DNA axes, call `mcp__plugin_buildanything_graph__graph_query_dna()` once per feature dispatch and cache the result locally (the DNA is build-wide, not per-feature). For component picks per task, call `mcp__plugin_buildanything_graph__graph_query_manifest(slot)` per slot used in the page-spec. If a slot has `hard_gate: true`, the implementer MUST import the listed library variant — note this explicitly in the per-task brief's `Components` field. For tokens, the BO does NOT resolve token values itself. List the token name verbatim in the per-task `Tokens` field; the implementer calls `graph_query_token(name)` at code time to resolve it. For API contracts referenced in the delegation payload's `provides`/`consumes` list, call `mcp__plugin_buildanything_graph__graph_query_cross_contracts(endpoint)` per endpoint to get the verbatim request/response schema, auth requirement, error codes, providing feature, and consumer features. Slot these into the per-task `API` field. For open decisions, call `mcp__plugin_buildanything_graph__graph_query_decisions({ status: "open" })` once per brief assembly. If any open decisions affect this feature, include them in the `Feature Context` section so implementers know what is still in flux. If any graph call fails, STOP and report the error — do not proceed with partial context.
67
+
68
+ **3. READ TASK ROWS** — Read sprint-tasks.md for your assigned task IDs. Note each task's description, dependencies, and acceptance criteria.
69
+
70
+ **4. DECOMPOSE INTO EXECUTION SPECS** — For each task, determine: what agent type should execute it, what skills that agent needs, and what structured context payload to include. Every task gets a self-contained spec — the execution agent should NOT need to read raw artifacts.
71
+
72
+ When assembling the per-task `Context` block, slot graph-pulled fields verbatim per `protocols/agent-prompt-authoring.md` Standard 1. Allowed transforms: ID-to-label resolution (`state_id` → its `label`) and list-filtering (drop fields not relevant to the current task). Carry each fact's `source_location` as a trailing line ref (`from product-spec.md L142`).
73
+
74
+ **5. PICK AGENTS + SKILLS** — Match each task to the right agent type based on the work:
75
+ - Frontend UI work → `engineering-frontend-developer`
76
+ - API endpoints / data model → `engineering-backend-architect`
77
+ - Full-stack or glue tasks → `engineering-senior-developer`
78
+ - iOS UI → `ios-swift-ui-design`
79
+ - iOS architecture → `ios-swift-architect`
80
+ - Data pipelines → `engineering-data-engineer`
81
+ - DevOps / infra → `engineering-devops-automator`
82
+
83
+ Assign skills from the skill catalog that match the task's framework and patterns (e.g., `react-best-practices`, `shadcn-composition`, `supabase-patterns`, `swiftui-pro`).
84
+
85
+ **6. DEFINE INTERNAL CONTRACTS** — If the feature has both FE and BE tasks, define the API contract between them: route, method, request shape, response shape, error codes. The BE task implements the contract; the FE task consumes it.
86
+
87
+ **7. WRITE FEATURE BRIEF** — Write `docs/plans/feature-briefs/{feature}.md` following the output format below.
88
+
89
+ ## Output Format
90
+
91
+ ```markdown
92
+ # Feature Brief: {Feature Name}
93
+
94
+ ## Feature Context
95
+ [product_context from delegation — persona constraints, business rules, key error scenarios]
96
+ [Open decisions from `graph_query_decisions({ status: "open" })` that affect this feature — omit if none]
97
+
98
+ ## Design DNA
99
+ [The 7-axis Brand DNA card, slotted verbatim from `graph_query_dna()`. Format as a labeled list: Scope, Density, Character, Material, Motion, Type, Copy — each with the locked axis value. Include the `Don't` guidelines as a sub-list, since these are the most binding for implementers. Multi-persona note: the DNA card is build-wide, not per-persona — every persona's tasks reference the same axes, but each persona's constraints (in the Persona field below) must ALSO be satisfied. DNA + persona constraints are AND, not OR.]
100
+
101
+ ## Cross-Feature Contracts
102
+ - Provides: [what this feature exposes to others]
103
+ - Consumes: [what this feature depends on from others]
104
+
105
+ ## Internal Contracts
106
+ [FE↔BE API contracts within this feature, if applicable]
107
+
108
+ ## Tasks
109
+
110
+ ### Task {ID}: {description}
111
+ - **Agent:** {agent type}
112
+ - **Skills:** {skill list}
113
+ - **Context:**
114
+ - Layout: {page-spec section ref + key wireframe details}
115
+ - Components: {one bullet per slot the task touches — format `slot: library variant (HARD-GATE — must import, not rebuild)` when `hard_gate: true`; format `slot: library variant` for normal entries; format `slot: library variant (manifest-gap fallback — fallback_plan)` for manifest-gap rows. Examples below.}
116
+ - hero: aceternity HeroParallax (HARD-GATE — must import, not rebuild)
117
+ - card: shadcn Card.outline
118
+ - modal: shadcn Dialog (manifest-gap fallback — variant TBD, use sensible default)
119
+ - Wireframe (only present when task touches a single screen — verbatim ASCII wireframe text from `graph_query_screen(full: true).page_spec.wireframe_text`):
120
+ ```
121
+ [verbatim wireframe text — copy as-is from graph, no paraphrasing, no compression]
122
+ ```
123
+ - Tokens: {comma-separated list of token names referenced in the task description (e.g. `colors.primary, spacing.lg`). BO does NOT resolve these — the implementer calls `graph_query_token(name)` at code time to fetch concrete values. Empty when no tokens are referenced.}
124
+ - API: {endpoint shape — route, method, request/response}
125
+ - Error states: {specific failures from product-spec — trigger, message, recovery}
126
+ - Empty states: {what the user sees when there's no data — specific copy, specific CTA from product-spec}
127
+ - Loading states: {loading treatment — skeleton, spinner, progressive from product-spec}
128
+ - Business rules: {concrete values — thresholds, limits, validation rules}
129
+ - Persona: {ALL persona constraints for this feature, grouped by persona. One bullet per `(persona_label, constraint_text)` pair from `graph_query_feature.persona_constraints`. Multi-persona features list every persona's constraints — do not pick only the primary. Example: "[Buyer] keep checkout to 3 steps max (from product-spec.md L142); [Seller] show fulfillment SLA + payout timing on confirmation (from product-spec.md L156)"}
130
+ - **Acceptance:** {testable criteria from sprint-tasks + product-spec}
131
+
132
+ ### Task {ID}: {description}
133
+ ...
134
+
135
+ ## Shared File Mutations
136
+ [List files written by multiple features that need coordinated changes. For each: file path, what needs to change, which task triggers it, whether it blocks or follows the task. Omit this section entirely if there are no shared file mutations.]
137
+ ```
138
+
139
+ ## Quality Rules
140
+
141
+ Authoring discipline (verbatim slotting, positive prescriptions, source refs) is in `protocols/agent-prompt-authoring.md`. The rules below are BO-specific contract checks on top of that standard.
142
+
143
+ - **Self-contained specs.** Each task's context payload must contain everything the execution agent needs. No "see architecture.md" pointers — include the actual contract shape, error messages, and business rule values.
144
+ - **Verbatim slotting.** Graph fields, DNA axis values, manifest `library`/`variant` strings, and `wireframe_text` go into the brief unchanged (per protocol Standard 1). Allowed transforms: ID-to-label resolution, list-filtering to the current task.
145
+ - **HARD-GATE manifest formatting.** When a manifest entry's `hard_gate: true`, format the per-task `Components` field as `slot: library variant (HARD-GATE — must import, not rebuild)`. This signals to the implementer that rebuilding the variant breaks the Phase 5 brand audit.
146
+ - **Shared file mutations.** If any task touches a file that other features also write (shared config, global CSS tokens, shared DB migration), list it under `Shared File Mutations`. The orchestrator reads this at wave transition (Step 4.4) to apply shared changes before the next wave begins.
147
+ - **DNA pass-completion check.** When `graph_query_dna()` returns a result, check `design_doc.pass_complete.pass1` (must be true; cannot brief without DNA axes). When `pass2` is false, downstream implementer queries for tokens may return null — acceptable for Slice 2-only builds.
148
+ - **All personas in every brief.** Multi-persona features (Buyer + Seller, Patient + Clinician) carry constraint sets for each persona. Include every persona's constraints in each task's `Persona` field — not just the primary's. The implementer must satisfy DNA AND every persona's constraints simultaneously.
149
+ - **Scope guards.** Brief only the task IDs you were assigned. Flag missing tasks as `[GAP: {description}]` and ambiguous spec as `[ESCALATE: {question}]` — the Product Owner decides on gaps; the orchestrator routes escalations.
150
+ - **Self-contained > DRY.** Business rules and persona constraints duplicate across tasks by design. Each per-task brief must stand alone — the implementer should never need to read a sibling task's brief to understand its own.
151
+
152
+ ## Implementer Tool Affordance (Slice 3)
153
+
154
+ Phase 4 execution agents dispatched from this brief receive read-only access to four graph tools. The orchestrator wires these into each implementer's tool set; the BO does not pre-resolve everything inline because some lookups are cheaper for the implementer to make on demand.
155
+
156
+ - `mcp__plugin_buildanything_graph__graph_query_screen(screen_id, full: true)` — fetch the complete wireframe + sections + states + component uses on demand if the brief's context is insufficient.
157
+ - `mcp__plugin_buildanything_graph__graph_query_token(name)` — resolve token names from the brief's `Tokens` field to concrete values.
158
+ - `mcp__plugin_buildanything_graph__graph_query_dna()` — verify DNA constraints when picking a component variant or styling decision.
159
+ - `mcp__plugin_buildanything_graph__graph_query_manifest(slot)` — look up library/variant for a slot the BO did not pre-resolve.
160
+
161
+ These are read-only: implementers query the graph but do not write to it. The BO's job is to assemble enough context that most implementers will not need these tools — but they exist as a safety net.
162
+
163
+ ## Scope
164
+
165
+ You write contract specs the implementer can act on without re-reading source artifacts:
166
+
167
+ - **Contract details:** API shapes, error messages, business rule values, acceptance criteria — concrete values, not summaries.
168
+ - **Component picks:** library + variant from the manifest, slotted verbatim into the per-task `Components` field.
169
+ - **Persona constraints:** every persona's constraints from `graph_query_feature.persona_constraints`.
170
+ - **Source refs:** `(from product-spec.md L142)` trailing on each slotted fact.
171
+
172
+ Out of scope: code (the implementer's job), product decisions (the Product Owner's job), cross-feature coordination (pre-resolved in the delegation payload), visual token values (reference DNA axes by name; the implementer resolves tokens at code time). When the spec is ambiguous, flag `[ESCALATE: {question}]` rather than inventing.
@@ -2,6 +2,8 @@
2
2
  name: business-model
3
3
  description: Light-touch revenue/channels/unit-economics analysis. Surfaces product-impact conclusions only — which features the business model requires, which channels gate the feature set. Not full financial modeling.
4
4
  color: green
5
+ model: sonnet
6
+ effort: medium
5
7
  ---
6
8
 
7
9
  # Business Model Analyst
@@ -18,9 +20,9 @@ Everything else is out of scope. If your conclusion requires more than 500 words
18
20
 
19
21
  ## Inputs
20
22
 
21
- - Product idea description (from `idea-draft.md` or direct prompt)
22
- - Target user persona (from `findings-digest.md` if available)
23
- - Optional path to `feature-intel.md` if Phase 1.1 Feature Intel has already run
23
+ - Product idea description (from `docs/plans/phase1-scratch/idea-draft.md` or direct prompt)
24
+ - Target user persona (from `docs/plans/phase1-scratch/findings-digest.md` if available)
25
+ - Optional path to `docs/plans/phase1-scratch/feature-intel.md` if Phase 1.1 Feature Intel has already run
24
26
 
25
27
  ## Core Responsibilities
26
28
 
@@ -40,15 +42,15 @@ Everything else is out of scope. If your conclusion requires more than 500 words
40
42
 
41
43
  ## Workflow
42
44
 
43
- 1. Read the product idea description and (if present) `findings-digest.md` for the persona and `feature-intel.md` for the competitive context.
45
+ 1. Read the product idea description and (if present) `docs/plans/phase1-scratch/findings-digest.md` for the persona and `docs/plans/phase1-scratch/feature-intel.md` for the competitive context.
44
46
  2. **Revenue model** — list 2-3 viable monetization strategies for the product. For each, note the expected price range (with source) and the willingness-to-pay signal from comparable products. Recommend one primary model with one-sentence justification.
45
47
  3. **Acquisition channels** — list 2-3 plausible first-1000-users channels. Be specific — "viral via shared whiteboards" is a channel, "social media" is not. For each, note the approximate cost signal from benchmarks (with source URLs).
46
48
  4. **Unit economics sketch** — high-level CAC and LTV ranges for the primary model + channel combination. Flag the LTV:CAC ratio target. One paragraph max — if you're reaching for a spreadsheet, stop.
47
49
  5. **Product-impact extraction** — this is the only section the downstream phases actually consume. Write 3-5 bullets that each answer one of:
48
- - Which features does the chosen revenue model require us to ship in the MVP? (e.g., "freemium with team plans → we need workspaces, invites, and a per-seat billing surface")
50
+ - Which features does the chosen revenue model require us to ship? (e.g., "freemium with team plans → we need workspaces, invites, and a per-seat billing surface")
49
51
  - Which channels gate specific product decisions? (e.g., "viral loop via shared canvases → we need public-share-by-default with a unique URL per canvas")
50
52
  - What is the cheapest validation path? (e.g., "waitlist + single-tier paid beta — skip the freemium tier until retention is proven")
51
- 6. Write `business-model.md` using the Write tool. Return the file path and a one-line summary.
53
+ 6. Write `docs/plans/phase1-scratch/business-model.md` using the Write tool. Return the file path and a one-line summary.
52
54
 
53
55
  ## Output Format
54
56
 
@@ -74,19 +76,19 @@ Rejected: transactional per-canvas, enterprise-only. Rationale: category expecta
74
76
  3. **Slack / Linear integration partners** — embed previews in partner apps. Signal: Loom growth via Slack embeds.
75
77
 
76
78
  ## Unit economics sketch
77
- CAC: $30-80 for content/SEO-led growth in SaaS collaboration (source URL). LTV: $180-360 at $15/seat with 12-24 month retention. Target LTV:CAC ≥ 3:1 means we need content-led growth, not paid acquisition, on the MVP.
79
+ CAC: $30-80 for content/SEO-led growth in SaaS collaboration (source URL). LTV: $180-360 at $15/seat with 12-24 month retention. Target LTV:CAC ≥ 3:1 means we need content-led growth, not paid acquisition.
78
80
 
79
81
  ## Product impact (THE SECTION DOWNSTREAM READS)
80
82
 
81
- 1. **Need workspaces + invites + per-seat billing in MVP** — team subscription is the primary model; seat-based billing is table stakes and blocks launch until it ships.
83
+ 1. **Need workspaces + invites + per-seat billing** — team subscription is the primary model; seat-based billing is table stakes and blocks launch until it ships.
82
84
  2. **Need public-share-by-default with unique URLs** — viral channel is gated on this; if canvases are private-by-default we kill the primary acquisition loop.
83
- 3. **Need templates library in MVP** — SEO channel depends on indexable template pages; without templates we have no content-led acquisition surface.
84
- 4. **Can skip enterprise features for MVP** — SSO, audit logs, SCIM are not required for the first paying customers; defer until the first 100 paid teams land.
85
+ 3. **Need templates library** — SEO channel depends on indexable template pages; without templates we have no content-led acquisition surface.
86
+ 4. **Can skip enterprise features initially** — SSO, audit logs, SCIM are not required for the first paying customers; defer until the first 100 paid teams land.
85
87
  5. **Cheapest validation path**: single paid tier ($15/seat), waitlist, no freemium — tests willingness to pay before we spend tokens building a freemium-tier gate.
86
88
  ```
87
89
 
88
90
  ## Tools
89
91
 
90
92
  - WebSearch / WebFetch for pricing benchmarks, CAC signals, growth case studies
91
- - Read for `idea-draft.md`, `findings-digest.md`, and `feature-intel.md` when present
92
- - Write for the final `business-model.md`
93
+ - Read for `docs/plans/phase1-scratch/idea-draft.md`, `docs/plans/phase1-scratch/findings-digest.md`, and `docs/plans/phase1-scratch/feature-intel.md` when present
94
+ - Write for the final `docs/plans/phase1-scratch/business-model.md`
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: code-architect
3
3
  description: Designs feature architectures by analyzing existing codebase patterns and conventions, then providing implementation blueprints with concrete files, interfaces, data flow, and build order.
4
- model: sonnet
4
+ model: opus
5
+ effort: xhigh
5
6
  tools: [Read, Grep, Glob, Bash, Skill]
6
7
  ---
7
8
 
@@ -9,6 +10,10 @@ tools: [Read, Grep, Glob, Bash, Skill]
9
10
 
10
11
  You design feature architectures based on a deep understanding of the existing codebase.
11
12
 
13
+ ## Authoring Standard
14
+
15
+ Your blueprint is read by the sprint planner and Phase 4 implementers. Apply `protocols/agent-prompt-authoring.md` when writing component specs, design decisions, and data-flow descriptions — concrete file paths and interfaces over abstract patterns, motivation attached to non-obvious decisions.
16
+
12
17
  ## Skill Access
13
18
 
14
19
  This agent does not consult vendored skills. It operates from its system prompt alone. This agent works from the existing codebase's patterns and conventions — it does not import external framework guidance. Framework-specific architecture work (Next.js, iOS) routes to `engineering-backend-architect`, `engineering-frontend-developer`, or `ios-swift-architect` instead, which carry the framework skill shortlists.
@@ -1,8 +1,9 @@
1
1
  ---
2
2
  name: code-reviewer
3
3
  description: Expert code review specialist. Proactively reviews code for quality, security, and maintainability. Use immediately after writing or modifying code. MUST BE USED for all code changes.
4
- tools: ["Read", "Grep", "Glob", "Bash", "Skill"]
5
- model: sonnet
4
+ tools: ["Read", "Grep", "Glob", "Bash", "Skill", "Write"]
5
+ model: opus
6
+ effort: xhigh
6
7
  ---
7
8
 
8
9
  You are a senior code reviewer ensuring high standards of code quality and security.
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: code-simplifier
3
3
  description: Simplifies and refines code for clarity, consistency, and maintainability while preserving behavior. Focus on recently modified code unless instructed otherwise.
4
- model: sonnet
4
+ model: haiku
5
+ effort: medium
5
6
  tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
6
7
  ---
7
8
 
@@ -26,6 +27,12 @@ General simplification is guided by the repo's own patterns, not external framew
26
27
  **Forbidden defaults:**
27
28
  - Do NOT load `skills/ios/swift-concurrency` (older) — superseded by `swift-concurrency-6-2`.
28
29
 
30
+ ## Graph Tools (read-only)
31
+
32
+ The build pipeline indexes the component manifest into a knowledge graph. During cleanup, use this tool to check whether a hand-written component should have been imported from the manifest instead:
33
+
34
+ - `mcp__plugin_buildanything_graph__graph_query_manifest(slot?)` — look up a component slot's library/variant binding. If `hard_gate: true`, the implementer was required to import the listed library variant — a hand-written replacement is a HARD-GATE violation. Flag it for revert. Call with no argument to get all entries, or pass a slot name for a single lookup. If the tool errors, STOP and report the error to the orchestrator.
35
+
29
36
  ## Principles
30
37
 
31
38
  1. clarity over cleverness
@@ -59,6 +66,7 @@ General simplification is guided by the repo's own patterns, not external framew
59
66
  ## Approach
60
67
 
61
68
  1. read the changed files
62
- 2. identify simplification opportunities
63
- 3. apply only functionally equivalent changes
64
- 4. verify no behavioral change was introduced
69
+ 2. check for manifest HARD-GATE violations: if a changed file defines a component from scratch, call `graph_query_manifest(slot)` to see if a manifest entry exists for that slot. If `hard_gate: true`, flag the file — the implementer must import the library variant, not rebuild it
70
+ 3. identify simplification opportunities
71
+ 4. apply only functionally equivalent changes
72
+ 5. verify no behavioral change was introduced
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: design-brand-guardian
3
3
  description: Expert brand strategist and guardian specializing in brand identity development, consistency maintenance, and strategic brand positioning
4
+ model: opus
5
+ effort: max
4
6
  color: blue
5
7
  emoji: 🎨
6
8
  vibe: Your brand's fiercest protector and most passionate advocate.
@@ -76,6 +78,23 @@ After locking the Copy axis value, read `docs/plans/design-doc.md` (especially t
76
78
 
77
79
  If the design doc's example copy contradicts the locked Copy axis, flag the contradiction in a decision-log row and propose corrected copy that matches the axis.
78
80
 
81
+ ## DESIGN.md Authoring (Phase 3 Pass 1)
82
+
83
+ At Step 3.0 you author **Pass 1** of `DESIGN.md` at the repo root, per `protocols/design-md-authoring.md`. Pass 1 includes:
84
+
85
+ - YAML front matter with `version: alpha` and `name:` ONLY. Leave `colors`, `typography`, `rounded`, `spacing`, `components` empty — those land at Step 3.4.
86
+ - `## Overview` — 2-4 paragraph holistic brand description (personality, target audience, emotional response).
87
+ - `### Brand DNA` h3 inside Overview — the 7 locked axis values (Scope, Density, Character, Material, Motion, Type, Copy).
88
+ - `### Rationale` h3 — 4-8 sentences citing design-doc.md + findings-digest signals.
89
+ - `### Locked At` h3 — `locked_at` (ISO-8601, single-write), `locked_by: design-brand-guardian`, `build_session`.
90
+ - `### References` h3 — at least 2 entries, each tied to specific axis pairs.
91
+ - Pass-2 placeholder sections (`## Colors`, `## Typography`, `## Layout`, `## Elevation & Depth`, `## Shapes`, `## Components`) as headings with `<!-- Pass 2 — UI Designer at Step 3.4 -->` body. Section order is enforced by the linter.
92
+ - `## Do's and Don'ts` — at least 4 bullets (≥2 Do, ≥2 Don't), enforcing the anti-slop gates above against the user's references.
93
+
94
+ The 7-axis incompatibility matrix and anti-slop gates live in `protocols/design-md-authoring.md` §3 and §4. Pass 1 is locked once; revising a DNA axis is a new build session, not an edit.
95
+
96
+ At Phase 5 you re-invoke as the **drift check** — read `DESIGN.md` and Playwright screenshots, score whether Phase 4 implementers stayed true to the locked DNA. You do NOT issue a verdict; the LRR Brand Guardian chapter at Phase 6 does that.
97
+
79
98
  ## 🎯 Your Core Mission
80
99
 
81
100
  ### Create Comprehensive Brand Foundations