bmad-method 5.0.0-beta.2 → 5.0.1

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 (131) hide show
  1. package/.github/ISSUE_TEMPLATE/bug_report.md +3 -3
  2. package/.github/ISSUE_TEMPLATE/feature_request.md +3 -3
  3. package/.github/workflows/discord.yaml +11 -2
  4. package/.github/workflows/format-check.yaml +42 -0
  5. package/.github/workflows/manual-release.yaml +173 -0
  6. package/.husky/pre-commit +3 -0
  7. package/.vscode/settings.json +26 -1
  8. package/CHANGELOG.md +0 -11
  9. package/README.md +2 -0
  10. package/bmad-core/agent-teams/team-all.yaml +1 -1
  11. package/bmad-core/agents/bmad-orchestrator.md +1 -1
  12. package/bmad-core/agents/dev.md +4 -4
  13. package/bmad-core/data/bmad-kb.md +1 -1
  14. package/bmad-core/data/test-levels-framework.md +12 -12
  15. package/bmad-core/tasks/facilitate-brainstorming-session.md +1 -1
  16. package/bmad-core/tasks/nfr-assess.md +10 -10
  17. package/bmad-core/tasks/qa-gate.md +23 -23
  18. package/bmad-core/tasks/review-story.md +18 -18
  19. package/bmad-core/tasks/risk-profile.md +25 -25
  20. package/bmad-core/tasks/test-design.md +9 -9
  21. package/bmad-core/tasks/trace-requirements.md +21 -21
  22. package/bmad-core/templates/architecture-tmpl.yaml +49 -49
  23. package/bmad-core/templates/brainstorming-output-tmpl.yaml +5 -5
  24. package/bmad-core/templates/brownfield-architecture-tmpl.yaml +31 -31
  25. package/bmad-core/templates/brownfield-prd-tmpl.yaml +13 -13
  26. package/bmad-core/templates/competitor-analysis-tmpl.yaml +19 -6
  27. package/bmad-core/templates/front-end-architecture-tmpl.yaml +21 -9
  28. package/bmad-core/templates/front-end-spec-tmpl.yaml +24 -24
  29. package/bmad-core/templates/fullstack-architecture-tmpl.yaml +122 -104
  30. package/bmad-core/templates/market-research-tmpl.yaml +2 -2
  31. package/bmad-core/templates/prd-tmpl.yaml +9 -9
  32. package/bmad-core/templates/project-brief-tmpl.yaml +4 -4
  33. package/bmad-core/templates/qa-gate-tmpl.yaml +9 -9
  34. package/bmad-core/templates/story-tmpl.yaml +12 -12
  35. package/bmad-core/workflows/brownfield-fullstack.yaml +9 -9
  36. package/bmad-core/workflows/brownfield-service.yaml +1 -1
  37. package/bmad-core/workflows/brownfield-ui.yaml +1 -1
  38. package/bmad-core/workflows/greenfield-fullstack.yaml +1 -1
  39. package/bmad-core/workflows/greenfield-service.yaml +1 -1
  40. package/bmad-core/workflows/greenfield-ui.yaml +1 -1
  41. package/common/utils/bmad-doc-template.md +5 -5
  42. package/dist/agents/analyst.txt +28 -15
  43. package/dist/agents/architect.txt +220 -190
  44. package/dist/agents/bmad-master.txt +298 -255
  45. package/dist/agents/bmad-orchestrator.txt +1 -1
  46. package/dist/agents/pm.txt +20 -20
  47. package/dist/agents/po.txt +11 -11
  48. package/dist/agents/qa.txt +275 -618
  49. package/dist/agents/sm.txt +11 -11
  50. package/dist/agents/ux-expert.txt +23 -23
  51. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +109 -109
  52. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +75 -77
  53. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +41 -41
  54. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +483 -474
  55. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +1 -1
  56. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +149 -149
  57. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +20 -20
  58. package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +371 -358
  59. package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +25 -25
  60. package/dist/teams/team-all.txt +581 -881
  61. package/dist/teams/team-fullstack.txt +316 -273
  62. package/dist/teams/team-ide-minimal.txt +276 -619
  63. package/dist/teams/team-no-ui.txt +281 -238
  64. package/docs/versioning-and-releases.md +114 -44
  65. package/eslint.config.mjs +119 -0
  66. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.4 Deployment Configuration/1.4.2 - cloudbuild.yaml +26 -26
  67. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +4 -4
  68. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +1 -1
  69. package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +26 -28
  70. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +50 -50
  71. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +23 -23
  72. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +24 -24
  73. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +42 -42
  74. package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +65 -65
  75. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +5 -5
  76. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +1 -1
  77. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +3 -3
  78. package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +1 -1
  79. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +23 -23
  80. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +63 -63
  81. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +20 -20
  82. package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +65 -65
  83. package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +5 -5
  84. package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +1 -1
  85. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +20 -20
  86. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +7 -7
  87. package/package.json +62 -39
  88. package/prettier.config.mjs +32 -0
  89. package/release_notes.md +30 -0
  90. package/tools/bmad-npx-wrapper.js +10 -10
  91. package/tools/builders/web-builder.js +124 -130
  92. package/tools/bump-all-versions.js +42 -33
  93. package/tools/bump-expansion-version.js +23 -16
  94. package/tools/cli.js +10 -12
  95. package/tools/flattener/aggregate.js +10 -10
  96. package/tools/flattener/binary.js +44 -17
  97. package/tools/flattener/discovery.js +19 -18
  98. package/tools/flattener/files.js +6 -6
  99. package/tools/flattener/ignoreRules.js +125 -125
  100. package/tools/flattener/main.js +201 -304
  101. package/tools/flattener/projectRoot.js +75 -73
  102. package/tools/flattener/prompts.js +9 -9
  103. package/tools/flattener/stats.helpers.js +131 -67
  104. package/tools/flattener/stats.js +3 -3
  105. package/tools/flattener/test-matrix.js +201 -193
  106. package/tools/flattener/xml.js +33 -31
  107. package/tools/installer/bin/bmad.js +130 -89
  108. package/tools/installer/config/ide-agent-config.yaml +1 -1
  109. package/tools/installer/config/install.config.yaml +2 -2
  110. package/tools/installer/lib/config-loader.js +46 -42
  111. package/tools/installer/lib/file-manager.js +91 -113
  112. package/tools/installer/lib/ide-base-setup.js +57 -56
  113. package/tools/installer/lib/ide-setup.js +375 -343
  114. package/tools/installer/lib/installer.js +875 -714
  115. package/tools/installer/lib/memory-profiler.js +54 -53
  116. package/tools/installer/lib/module-manager.js +19 -15
  117. package/tools/installer/lib/resource-locator.js +26 -28
  118. package/tools/installer/package.json +19 -19
  119. package/tools/lib/dependency-resolver.js +26 -30
  120. package/tools/lib/yaml-utils.js +7 -7
  121. package/tools/preview-release-notes.js +66 -0
  122. package/tools/shared/bannerArt.js +3 -3
  123. package/tools/sync-installer-version.js +7 -9
  124. package/tools/update-expansion-version.js +14 -15
  125. package/tools/upgraders/v3-to-v4-upgrader.js +203 -294
  126. package/tools/version-bump.js +41 -26
  127. package/tools/yaml-format.js +56 -43
  128. package/.github/workflows/promote-to-stable.yml +0 -144
  129. package/.github/workflows/release.yaml +0 -60
  130. package/.releaserc.json +0 -21
  131. package/tools/semantic-release-sync-installer.js +0 -30
@@ -248,7 +248,7 @@ Choose a number (0-8) or 9 to proceed:
248
248
  ==================== START: .bmad-core/tasks/facilitate-brainstorming-session.md ====================
249
249
  ---
250
250
  docOutputLocation: docs/brainstorming-session-results.md
251
- template: ".bmad-core/templates/brainstorming-output-tmpl.yaml"
251
+ template: '.bmad-core/templates/brainstorming-output-tmpl.yaml'
252
252
  ---
253
253
 
254
254
  # Facilitate Brainstorming Session Task
@@ -2146,20 +2146,20 @@ sections:
2146
2146
  - id: intro-content
2147
2147
  content: |
2148
2148
  This document outlines the overall project architecture for {{project_name}}, including backend systems, shared services, and non-UI specific concerns. Its primary goal is to serve as the guiding architectural blueprint for AI-driven development, ensuring consistency and adherence to chosen patterns and technologies.
2149
-
2149
+
2150
2150
  **Relationship to Frontend Architecture:**
2151
2151
  If the project includes a significant user interface, a separate Frontend Architecture Document will detail the frontend-specific design and MUST be used in conjunction with this document. Core technology stack choices documented herein (see "Tech Stack") are definitive for the entire project, including any frontend components.
2152
2152
  - id: starter-template
2153
2153
  title: Starter Template or Existing Project
2154
2154
  instruction: |
2155
2155
  Before proceeding further with architecture design, check if the project is based on a starter template or existing codebase:
2156
-
2156
+
2157
2157
  1. Review the PRD and brainstorming brief for any mentions of:
2158
2158
  - Starter templates (e.g., Create React App, Next.js, Vue CLI, Angular CLI, etc.)
2159
2159
  - Existing projects or codebases being used as a foundation
2160
2160
  - Boilerplate projects or scaffolding tools
2161
2161
  - Previous projects to be cloned or adapted
2162
-
2162
+
2163
2163
  2. If a starter template or existing project is mentioned:
2164
2164
  - Ask the user to provide access via one of these methods:
2165
2165
  - Link to the starter template documentation
@@ -2172,16 +2172,16 @@ sections:
2172
2172
  - Existing architectural patterns and conventions
2173
2173
  - Any limitations or constraints imposed by the starter
2174
2174
  - Use this analysis to inform and align your architecture decisions
2175
-
2175
+
2176
2176
  3. If no starter template is mentioned but this is a greenfield project:
2177
2177
  - Suggest appropriate starter templates based on the tech stack preferences
2178
2178
  - Explain the benefits (faster setup, best practices, community support)
2179
2179
  - Let the user decide whether to use one
2180
-
2180
+
2181
2181
  4. If the user confirms no starter template will be used:
2182
2182
  - Proceed with architecture design from scratch
2183
2183
  - Note that manual setup will be required for all tooling and configuration
2184
-
2184
+
2185
2185
  Document the decision here before proceeding with the architecture design. If none, just say N/A
2186
2186
  elicit: true
2187
2187
  - id: changelog
@@ -2209,7 +2209,7 @@ sections:
2209
2209
  title: High Level Overview
2210
2210
  instruction: |
2211
2211
  Based on the PRD's Technical Assumptions section, describe:
2212
-
2212
+
2213
2213
  1. The main architectural style (e.g., Monolith, Microservices, Serverless, Event-Driven)
2214
2214
  2. Repository structure decision from PRD (Monorepo/Polyrepo)
2215
2215
  3. Service architecture decision from PRD
@@ -2226,17 +2226,17 @@ sections:
2226
2226
  - Data flow directions
2227
2227
  - External integrations
2228
2228
  - User entry points
2229
-
2229
+
2230
2230
  - id: architectural-patterns
2231
2231
  title: Architectural and Design Patterns
2232
2232
  instruction: |
2233
2233
  List the key high-level patterns that will guide the architecture. For each pattern:
2234
-
2234
+
2235
2235
  1. Present 2-3 viable options if multiple exist
2236
2236
  2. Provide your recommendation with clear rationale
2237
2237
  3. Get user confirmation before finalizing
2238
2238
  4. These patterns should align with the PRD's technical assumptions and project goals
2239
-
2239
+
2240
2240
  Common patterns to consider:
2241
2241
  - Architectural style patterns (Serverless, Event-Driven, Microservices, CQRS, Hexagonal)
2242
2242
  - Code organization patterns (Dependency Injection, Repository, Module, Factory)
@@ -2252,23 +2252,23 @@ sections:
2252
2252
  title: Tech Stack
2253
2253
  instruction: |
2254
2254
  This is the DEFINITIVE technology selection section. Work with the user to make specific choices:
2255
-
2255
+
2256
2256
  1. Review PRD technical assumptions and any preferences from .bmad-core/data/technical-preferences.yaml or an attached technical-preferences
2257
2257
  2. For each category, present 2-3 viable options with pros/cons
2258
2258
  3. Make a clear recommendation based on project needs
2259
2259
  4. Get explicit user approval for each selection
2260
2260
  5. Document exact versions (avoid "latest" - pin specific versions)
2261
2261
  6. This table is the single source of truth - all other docs must reference these choices
2262
-
2262
+
2263
2263
  Key decisions to finalize - before displaying the table, ensure you are aware of or ask the user about - let the user know if they are not sure on any that you can also provide suggestions with rationale:
2264
-
2264
+
2265
2265
  - Starter templates (if any)
2266
2266
  - Languages and runtimes with exact versions
2267
2267
  - Frameworks and libraries / packages
2268
2268
  - Cloud provider and key services choices
2269
2269
  - Database and storage solutions - if unclear suggest sql or nosql or other types depending on the project and depending on cloud provider offer a suggestion
2270
2270
  - Development tools
2271
-
2271
+
2272
2272
  Upon render of the table, ensure the user is aware of the importance of this sections choices, should also look for gaps or disagreements with anything, ask for any clarifications if something is unclear why its in the list, and also right away elicit feedback - this statement and the options should be rendered and then prompt right all before allowing user input.
2273
2273
  elicit: true
2274
2274
  sections:
@@ -2292,13 +2292,13 @@ sections:
2292
2292
  title: Data Models
2293
2293
  instruction: |
2294
2294
  Define the core data models/entities:
2295
-
2295
+
2296
2296
  1. Review PRD requirements and identify key business entities
2297
2297
  2. For each model, explain its purpose and relationships
2298
2298
  3. Include key attributes and data types
2299
2299
  4. Show relationships between models
2300
2300
  5. Discuss design decisions with user
2301
-
2301
+
2302
2302
  Create a clear conceptual model before moving to database schema.
2303
2303
  elicit: true
2304
2304
  repeatable: true
@@ -2307,11 +2307,11 @@ sections:
2307
2307
  title: "{{model_name}}"
2308
2308
  template: |
2309
2309
  **Purpose:** {{model_purpose}}
2310
-
2310
+
2311
2311
  **Key Attributes:**
2312
2312
  - {{attribute_1}}: {{type_1}} - {{description_1}}
2313
2313
  - {{attribute_2}}: {{type_2}} - {{description_2}}
2314
-
2314
+
2315
2315
  **Relationships:**
2316
2316
  - {{relationship_1}}
2317
2317
  - {{relationship_2}}
@@ -2320,7 +2320,7 @@ sections:
2320
2320
  title: Components
2321
2321
  instruction: |
2322
2322
  Based on the architectural patterns, tech stack, and data models from above:
2323
-
2323
+
2324
2324
  1. Identify major logical components/services and their responsibilities
2325
2325
  2. Consider the repository structure (monorepo/polyrepo) from PRD
2326
2326
  3. Define clear boundaries and interfaces between components
@@ -2329,7 +2329,7 @@ sections:
2329
2329
  - Key interfaces/APIs exposed
2330
2330
  - Dependencies on other components
2331
2331
  - Technology specifics based on tech stack choices
2332
-
2332
+
2333
2333
  5. Create component diagrams where helpful
2334
2334
  elicit: true
2335
2335
  sections:
@@ -2338,13 +2338,13 @@ sections:
2338
2338
  title: "{{component_name}}"
2339
2339
  template: |
2340
2340
  **Responsibility:** {{component_description}}
2341
-
2341
+
2342
2342
  **Key Interfaces:**
2343
2343
  - {{interface_1}}
2344
2344
  - {{interface_2}}
2345
-
2345
+
2346
2346
  **Dependencies:** {{dependencies}}
2347
-
2347
+
2348
2348
  **Technology Stack:** {{component_tech_details}}
2349
2349
  - id: component-diagrams
2350
2350
  title: Component Diagrams
@@ -2361,13 +2361,13 @@ sections:
2361
2361
  condition: Project requires external API integrations
2362
2362
  instruction: |
2363
2363
  For each external service integration:
2364
-
2364
+
2365
2365
  1. Identify APIs needed based on PRD requirements and component design
2366
2366
  2. If documentation URLs are unknown, ask user for specifics
2367
2367
  3. Document authentication methods and security considerations
2368
2368
  4. List specific endpoints that will be used
2369
2369
  5. Note any rate limits or usage constraints
2370
-
2370
+
2371
2371
  If no external APIs are needed, state this explicitly and skip to next section.
2372
2372
  elicit: true
2373
2373
  repeatable: true
@@ -2380,10 +2380,10 @@ sections:
2380
2380
  - **Base URL(s):** {{api_base_url}}
2381
2381
  - **Authentication:** {{auth_method}}
2382
2382
  - **Rate Limits:** {{rate_limits}}
2383
-
2383
+
2384
2384
  **Key Endpoints Used:**
2385
2385
  - `{{method}} {{endpoint_path}}` - {{endpoint_purpose}}
2386
-
2386
+
2387
2387
  **Integration Notes:** {{integration_considerations}}
2388
2388
 
2389
2389
  - id: core-workflows
@@ -2392,13 +2392,13 @@ sections:
2392
2392
  mermaid_type: sequence
2393
2393
  instruction: |
2394
2394
  Illustrate key system workflows using sequence diagrams:
2395
-
2395
+
2396
2396
  1. Identify critical user journeys from PRD
2397
2397
  2. Show component interactions including external APIs
2398
2398
  3. Include error handling paths
2399
2399
  4. Document async operations
2400
2400
  5. Create both high-level and detailed diagrams as needed
2401
-
2401
+
2402
2402
  Focus on workflows that clarify architecture decisions or complex interactions.
2403
2403
  elicit: true
2404
2404
 
@@ -2409,13 +2409,13 @@ sections:
2409
2409
  language: yaml
2410
2410
  instruction: |
2411
2411
  If the project includes a REST API:
2412
-
2412
+
2413
2413
  1. Create an OpenAPI 3.0 specification
2414
2414
  2. Include all endpoints from epics/stories
2415
2415
  3. Define request/response schemas based on data models
2416
2416
  4. Document authentication requirements
2417
2417
  5. Include example requests/responses
2418
-
2418
+
2419
2419
  Use YAML format for better readability. If no REST API, skip this section.
2420
2420
  elicit: true
2421
2421
  template: |
@@ -2432,13 +2432,13 @@ sections:
2432
2432
  title: Database Schema
2433
2433
  instruction: |
2434
2434
  Transform the conceptual data models into concrete database schemas:
2435
-
2435
+
2436
2436
  1. Use the database type(s) selected in Tech Stack
2437
2437
  2. Create schema definitions using appropriate notation
2438
2438
  3. Include indexes, constraints, and relationships
2439
2439
  4. Consider performance and scalability
2440
2440
  5. For NoSQL, show document structures
2441
-
2441
+
2442
2442
  Present schema in format appropriate to database type (SQL DDL, JSON schema, etc.)
2443
2443
  elicit: true
2444
2444
 
@@ -2448,14 +2448,14 @@ sections:
2448
2448
  language: plaintext
2449
2449
  instruction: |
2450
2450
  Create a project folder structure that reflects:
2451
-
2451
+
2452
2452
  1. The chosen repository structure (monorepo/polyrepo)
2453
2453
  2. The service architecture (monolith/microservices/serverless)
2454
2454
  3. The selected tech stack and languages
2455
2455
  4. Component organization from above
2456
2456
  5. Best practices for the chosen frameworks
2457
2457
  6. Clear separation of concerns
2458
-
2458
+
2459
2459
  Adapt the structure based on project needs. For monorepos, show service separation. For serverless, show function organization. Include language-specific conventions.
2460
2460
  elicit: true
2461
2461
  examples:
@@ -2473,13 +2473,13 @@ sections:
2473
2473
  title: Infrastructure and Deployment
2474
2474
  instruction: |
2475
2475
  Define the deployment architecture and practices:
2476
-
2476
+
2477
2477
  1. Use IaC tool selected in Tech Stack
2478
2478
  2. Choose deployment strategy appropriate for the architecture
2479
2479
  3. Define environments and promotion flow
2480
2480
  4. Establish rollback procedures
2481
2481
  5. Consider security, monitoring, and cost optimization
2482
-
2482
+
2483
2483
  Get user input on deployment preferences and CI/CD tool choices.
2484
2484
  elicit: true
2485
2485
  sections:
@@ -2515,13 +2515,13 @@ sections:
2515
2515
  title: Error Handling Strategy
2516
2516
  instruction: |
2517
2517
  Define comprehensive error handling approach:
2518
-
2518
+
2519
2519
  1. Choose appropriate patterns for the language/framework from Tech Stack
2520
2520
  2. Define logging standards and tools
2521
2521
  3. Establish error categories and handling rules
2522
2522
  4. Consider observability and debugging needs
2523
2523
  5. Ensure security (no sensitive data in logs)
2524
-
2524
+
2525
2525
  This section guides both AI and human developers in consistent error handling.
2526
2526
  elicit: true
2527
2527
  sections:
@@ -2568,13 +2568,13 @@ sections:
2568
2568
  title: Coding Standards
2569
2569
  instruction: |
2570
2570
  These standards are MANDATORY for AI agents. Work with user to define ONLY the critical rules needed to prevent bad code. Explain that:
2571
-
2571
+
2572
2572
  1. This section directly controls AI developer behavior
2573
2573
  2. Keep it minimal - assume AI knows general best practices
2574
2574
  3. Focus on project-specific conventions and gotchas
2575
2575
  4. Overly detailed standards bloat context and slow development
2576
2576
  5. Standards will be extracted to separate file for dev agent use
2577
-
2577
+
2578
2578
  For each standard, get explicit user confirmation it's necessary.
2579
2579
  elicit: true
2580
2580
  sections:
@@ -2596,7 +2596,7 @@ sections:
2596
2596
  - "Never use console.log in production code - use logger"
2597
2597
  - "All API responses must use ApiResponse wrapper type"
2598
2598
  - "Database queries must use repository pattern, never direct ORM"
2599
-
2599
+
2600
2600
  Avoid obvious rules like "use SOLID principles" or "write clean code"
2601
2601
  repeatable: true
2602
2602
  template: "- **{{rule_name}}:** {{rule_description}}"
@@ -2614,14 +2614,14 @@ sections:
2614
2614
  title: Test Strategy and Standards
2615
2615
  instruction: |
2616
2616
  Work with user to define comprehensive test strategy:
2617
-
2617
+
2618
2618
  1. Use test frameworks from Tech Stack
2619
2619
  2. Decide on TDD vs test-after approach
2620
2620
  3. Define test organization and naming
2621
2621
  4. Establish coverage goals
2622
2622
  5. Determine integration test infrastructure
2623
2623
  6. Plan for test data and external dependencies
2624
-
2624
+
2625
2625
  Note: Basic info goes in Coding Standards for dev agent. This detailed section is for QA agent and team reference.
2626
2626
  elicit: true
2627
2627
  sections:
@@ -2642,7 +2642,7 @@ sections:
2642
2642
  - **Location:** {{unit_test_location}}
2643
2643
  - **Mocking Library:** {{mocking_library}}
2644
2644
  - **Coverage Requirement:** {{unit_coverage}}
2645
-
2645
+
2646
2646
  **AI Agent Requirements:**
2647
2647
  - Generate tests for all public methods
2648
2648
  - Cover edge cases and error conditions
@@ -2684,7 +2684,7 @@ sections:
2684
2684
  title: Security
2685
2685
  instruction: |
2686
2686
  Define MANDATORY security requirements for AI and human developers:
2687
-
2687
+
2688
2688
  1. Focus on implementation-specific rules
2689
2689
  2. Reference security tools from Tech Stack
2690
2690
  3. Define clear patterns for common scenarios
@@ -2753,16 +2753,16 @@ sections:
2753
2753
  title: Next Steps
2754
2754
  instruction: |
2755
2755
  After completing the architecture:
2756
-
2756
+
2757
2757
  1. If project has UI components:
2758
2758
  - Use "Frontend Architecture Mode"
2759
2759
  - Provide this document as input
2760
-
2760
+
2761
2761
  2. For all projects:
2762
2762
  - Review with Product Owner
2763
2763
  - Begin story implementation with Dev agent
2764
2764
  - Set up infrastructure with DevOps agent
2765
-
2765
+
2766
2766
  3. Include specific prompts for next agents if needed
2767
2767
  sections:
2768
2768
  - id: architect-prompt
@@ -2795,40 +2795,40 @@ sections:
2795
2795
  title: Introduction
2796
2796
  instruction: |
2797
2797
  IMPORTANT - SCOPE AND ASSESSMENT REQUIRED:
2798
-
2798
+
2799
2799
  This architecture document is for SIGNIFICANT enhancements to existing projects that require comprehensive architectural planning. Before proceeding:
2800
-
2800
+
2801
2801
  1. **Verify Complexity**: Confirm this enhancement requires architectural planning. For simple additions, recommend: "For simpler changes that don't require architectural planning, consider using the brownfield-create-epic or brownfield-create-story task with the Product Owner instead."
2802
-
2802
+
2803
2803
  2. **REQUIRED INPUTS**:
2804
2804
  - Completed brownfield-prd.md
2805
2805
  - Existing project technical documentation (from docs folder or user-provided)
2806
2806
  - Access to existing project structure (IDE or uploaded files)
2807
-
2807
+
2808
2808
  3. **DEEP ANALYSIS MANDATE**: You MUST conduct thorough analysis of the existing codebase, architecture patterns, and technical constraints before making ANY architectural recommendations. Every suggestion must be based on actual project analysis, not assumptions.
2809
-
2809
+
2810
2810
  4. **CONTINUOUS VALIDATION**: Throughout this process, explicitly validate your understanding with the user. For every architectural decision, confirm: "Based on my analysis of your existing system, I recommend [decision] because [evidence from actual project]. Does this align with your system's reality?"
2811
-
2811
+
2812
2812
  If any required inputs are missing, request them before proceeding.
2813
2813
  elicit: true
2814
2814
  sections:
2815
2815
  - id: intro-content
2816
2816
  content: |
2817
2817
  This document outlines the architectural approach for enhancing {{project_name}} with {{enhancement_description}}. Its primary goal is to serve as the guiding architectural blueprint for AI-driven development of new features while ensuring seamless integration with the existing system.
2818
-
2818
+
2819
2819
  **Relationship to Existing Architecture:**
2820
2820
  This document supplements existing project architecture by defining how new components will integrate with current systems. Where conflicts arise between new and existing patterns, this document provides guidance on maintaining consistency while implementing enhancements.
2821
2821
  - id: existing-project-analysis
2822
2822
  title: Existing Project Analysis
2823
2823
  instruction: |
2824
2824
  Analyze the existing project structure and architecture:
2825
-
2825
+
2826
2826
  1. Review existing documentation in docs folder
2827
2827
  2. Examine current technology stack and versions
2828
2828
  3. Identify existing architectural patterns and conventions
2829
2829
  4. Note current deployment and infrastructure setup
2830
2830
  5. Document any constraints or limitations
2831
-
2831
+
2832
2832
  CRITICAL: After your analysis, explicitly validate your findings: "Based on my analysis of your project, I've identified the following about your existing system: [key findings]. Please confirm these observations are accurate before I proceed with architectural recommendations."
2833
2833
  elicit: true
2834
2834
  sections:
@@ -2857,12 +2857,12 @@ sections:
2857
2857
  title: Enhancement Scope and Integration Strategy
2858
2858
  instruction: |
2859
2859
  Define how the enhancement will integrate with the existing system:
2860
-
2860
+
2861
2861
  1. Review the brownfield PRD enhancement scope
2862
2862
  2. Identify integration points with existing code
2863
2863
  3. Define boundaries between new and existing functionality
2864
2864
  4. Establish compatibility requirements
2865
-
2865
+
2866
2866
  VALIDATION CHECKPOINT: Before presenting the integration strategy, confirm: "Based on my analysis, the integration approach I'm proposing takes into account [specific existing system characteristics]. These integration points and boundaries respect your current architecture patterns. Is this assessment accurate?"
2867
2867
  elicit: true
2868
2868
  sections:
@@ -2891,7 +2891,7 @@ sections:
2891
2891
  title: Tech Stack Alignment
2892
2892
  instruction: |
2893
2893
  Ensure new components align with existing technology choices:
2894
-
2894
+
2895
2895
  1. Use existing technology stack as the foundation
2896
2896
  2. Only introduce new technologies if absolutely necessary
2897
2897
  3. Justify any new additions with clear rationale
@@ -2914,7 +2914,7 @@ sections:
2914
2914
  title: Data Models and Schema Changes
2915
2915
  instruction: |
2916
2916
  Define new data models and how they integrate with existing schema:
2917
-
2917
+
2918
2918
  1. Identify new entities required for the enhancement
2919
2919
  2. Define relationships with existing data models
2920
2920
  3. Plan database schema changes (additions, modifications)
@@ -2930,11 +2930,11 @@ sections:
2930
2930
  template: |
2931
2931
  **Purpose:** {{model_purpose}}
2932
2932
  **Integration:** {{integration_with_existing}}
2933
-
2933
+
2934
2934
  **Key Attributes:**
2935
2935
  - {{attribute_1}}: {{type_1}} - {{description_1}}
2936
2936
  - {{attribute_2}}: {{type_2}} - {{description_2}}
2937
-
2937
+
2938
2938
  **Relationships:**
2939
2939
  - **With Existing:** {{existing_relationships}}
2940
2940
  - **With New:** {{new_relationships}}
@@ -2946,7 +2946,7 @@ sections:
2946
2946
  - **Modified Tables:** {{modified_tables_list}}
2947
2947
  - **New Indexes:** {{new_indexes_list}}
2948
2948
  - **Migration Strategy:** {{migration_approach}}
2949
-
2949
+
2950
2950
  **Backward Compatibility:**
2951
2951
  - {{compatibility_measure_1}}
2952
2952
  - {{compatibility_measure_2}}
@@ -2955,12 +2955,12 @@ sections:
2955
2955
  title: Component Architecture
2956
2956
  instruction: |
2957
2957
  Define new components and their integration with existing architecture:
2958
-
2958
+
2959
2959
  1. Identify new components required for the enhancement
2960
2960
  2. Define interfaces with existing components
2961
2961
  3. Establish clear boundaries and responsibilities
2962
2962
  4. Plan integration points and data flow
2963
-
2963
+
2964
2964
  MANDATORY VALIDATION: Before presenting component architecture, confirm: "The new components I'm proposing follow the existing architectural patterns I identified in your codebase: [specific patterns]. The integration interfaces respect your current component structure and communication patterns. Does this match your project's reality?"
2965
2965
  elicit: true
2966
2966
  sections:
@@ -2973,15 +2973,15 @@ sections:
2973
2973
  template: |
2974
2974
  **Responsibility:** {{component_description}}
2975
2975
  **Integration Points:** {{integration_points}}
2976
-
2976
+
2977
2977
  **Key Interfaces:**
2978
2978
  - {{interface_1}}
2979
2979
  - {{interface_2}}
2980
-
2980
+
2981
2981
  **Dependencies:**
2982
2982
  - **Existing Components:** {{existing_dependencies}}
2983
2983
  - **New Components:** {{new_dependencies}}
2984
-
2984
+
2985
2985
  **Technology Stack:** {{component_tech_details}}
2986
2986
  - id: interaction-diagram
2987
2987
  title: Component Interaction Diagram
@@ -2994,7 +2994,7 @@ sections:
2994
2994
  condition: Enhancement requires API changes
2995
2995
  instruction: |
2996
2996
  Define new API endpoints and integration with existing APIs:
2997
-
2997
+
2998
2998
  1. Plan new API endpoints required for the enhancement
2999
2999
  2. Ensure consistency with existing API patterns
3000
3000
  3. Define authentication and authorization integration
@@ -3044,17 +3044,17 @@ sections:
3044
3044
  - **Base URL:** {{api_base_url}}
3045
3045
  - **Authentication:** {{auth_method}}
3046
3046
  - **Integration Method:** {{integration_approach}}
3047
-
3047
+
3048
3048
  **Key Endpoints Used:**
3049
3049
  - `{{method}} {{endpoint_path}}` - {{endpoint_purpose}}
3050
-
3050
+
3051
3051
  **Error Handling:** {{error_handling_strategy}}
3052
3052
 
3053
3053
  - id: source-tree-integration
3054
3054
  title: Source Tree Integration
3055
3055
  instruction: |
3056
3056
  Define how new code will integrate with existing project structure:
3057
-
3057
+
3058
3058
  1. Follow existing project organization patterns
3059
3059
  2. Identify where new files/folders will be placed
3060
3060
  3. Ensure consistency with existing naming conventions
@@ -3093,7 +3093,7 @@ sections:
3093
3093
  title: Infrastructure and Deployment Integration
3094
3094
  instruction: |
3095
3095
  Define how the enhancement will be deployed alongside existing infrastructure:
3096
-
3096
+
3097
3097
  1. Use existing deployment pipeline and infrastructure
3098
3098
  2. Identify any infrastructure changes needed
3099
3099
  3. Plan deployment strategy to minimize risk
@@ -3123,7 +3123,7 @@ sections:
3123
3123
  title: Coding Standards and Conventions
3124
3124
  instruction: |
3125
3125
  Ensure new code follows existing project conventions:
3126
-
3126
+
3127
3127
  1. Document existing coding standards from project analysis
3128
3128
  2. Identify any enhancement-specific requirements
3129
3129
  3. Ensure consistency with existing codebase patterns
@@ -3154,7 +3154,7 @@ sections:
3154
3154
  title: Testing Strategy
3155
3155
  instruction: |
3156
3156
  Define testing approach for the enhancement:
3157
-
3157
+
3158
3158
  1. Integrate with existing test suite
3159
3159
  2. Ensure existing functionality remains intact
3160
3160
  3. Plan for testing new features
@@ -3194,7 +3194,7 @@ sections:
3194
3194
  title: Security Integration
3195
3195
  instruction: |
3196
3196
  Ensure security consistency with existing system:
3197
-
3197
+
3198
3198
  1. Follow existing security patterns and tools
3199
3199
  2. Ensure new features don't introduce vulnerabilities
3200
3200
  3. Maintain existing security posture
@@ -3229,7 +3229,7 @@ sections:
3229
3229
  title: Next Steps
3230
3230
  instruction: |
3231
3231
  After completing the brownfield architecture:
3232
-
3232
+
3233
3233
  1. Review integration points with existing system
3234
3234
  2. Begin story implementation with Dev agent
3235
3235
  3. Set up deployment pipeline integration
@@ -3274,19 +3274,19 @@ sections:
3274
3274
  title: Intro Project Analysis and Context
3275
3275
  instruction: |
3276
3276
  IMPORTANT - SCOPE ASSESSMENT REQUIRED:
3277
-
3277
+
3278
3278
  This PRD is for SIGNIFICANT enhancements to existing projects that require comprehensive planning and multiple stories. Before proceeding:
3279
-
3279
+
3280
3280
  1. **Assess Enhancement Complexity**: If this is a simple feature addition or bug fix that could be completed in 1-2 focused development sessions, STOP and recommend: "For simpler changes, consider using the brownfield-create-epic or brownfield-create-story task with the Product Owner instead. This full PRD process is designed for substantial enhancements that require architectural planning and multiple coordinated stories."
3281
-
3281
+
3282
3282
  2. **Project Context**: Determine if we're working in an IDE with the project already loaded or if the user needs to provide project information. If project files are available, analyze existing documentation in the docs folder. If insufficient documentation exists, recommend running the document-project task first.
3283
-
3283
+
3284
3284
  3. **Deep Assessment Requirement**: You MUST thoroughly analyze the existing project structure, patterns, and constraints before making ANY suggestions. Every recommendation must be grounded in actual project analysis, not assumptions.
3285
-
3285
+
3286
3286
  Gather comprehensive information about the existing project. This section must be completed before proceeding with requirements.
3287
-
3287
+
3288
3288
  CRITICAL: Throughout this analysis, explicitly confirm your understanding with the user. For every assumption you make about the existing project, ask: "Based on my analysis, I understand that [assumption]. Is this correct?"
3289
-
3289
+
3290
3290
  Do not proceed with any recommendations until the user has validated your understanding of the existing system.
3291
3291
  sections:
3292
3292
  - id: existing-project-overview
@@ -3312,7 +3312,7 @@ sections:
3312
3312
  - Note: "Document-project analysis available - using existing technical documentation"
3313
3313
  - List key documents created by document-project
3314
3314
  - Skip the missing documentation check below
3315
-
3315
+
3316
3316
  Otherwise, check for existing documentation:
3317
3317
  sections:
3318
3318
  - id: available-docs
@@ -3436,7 +3436,7 @@ sections:
3436
3436
  If document-project output available:
3437
3437
  - Extract from "Actual Tech Stack" table in High Level Architecture section
3438
3438
  - Include version numbers and any noted constraints
3439
-
3439
+
3440
3440
  Otherwise, document the current technology stack:
3441
3441
  template: |
3442
3442
  **Languages**: {{languages}}
@@ -3475,7 +3475,7 @@ sections:
3475
3475
  - Reference "Technical Debt and Known Issues" section
3476
3476
  - Include "Workarounds and Gotchas" that might impact enhancement
3477
3477
  - Note any identified constraints from "Critical Technical Debt"
3478
-
3478
+
3479
3479
  Build risk assessment incorporating existing known issues:
3480
3480
  template: |
3481
3481
  **Technical Risks**: {{technical_risks}}
@@ -3498,7 +3498,7 @@ sections:
3498
3498
  title: "Epic 1: {{enhancement_title}}"
3499
3499
  instruction: |
3500
3500
  Comprehensive epic that delivers the brownfield enhancement while maintaining existing functionality
3501
-
3501
+
3502
3502
  CRITICAL STORY SEQUENCING FOR BROWNFIELD:
3503
3503
  - Stories must ensure existing functionality remains intact
3504
3504
  - Each story should include verification that existing features still work
@@ -3511,7 +3511,7 @@ sections:
3511
3511
  - Each story must deliver value while maintaining system integrity
3512
3512
  template: |
3513
3513
  **Epic Goal**: {{epic_goal}}
3514
-
3514
+
3515
3515
  **Integration Requirements**: {{integration_requirements}}
3516
3516
  sections:
3517
3517
  - id: story
@@ -3617,7 +3617,7 @@ sections:
3617
3617
  title: Competitor Prioritization Matrix
3618
3618
  instruction: |
3619
3619
  Help categorize competitors by market share and strategic threat level
3620
-
3620
+
3621
3621
  Create a 2x2 matrix:
3622
3622
  - Priority 1 (Core Competitors): High Market Share + High Threat
3623
3623
  - Priority 2 (Emerging Threats): Low Market Share + High Threat
@@ -3682,7 +3682,14 @@ sections:
3682
3682
  title: Feature Comparison Matrix
3683
3683
  instruction: Create a detailed comparison table of key features across competitors
3684
3684
  type: table
3685
- columns: ["Feature Category", "{{your_company}}", "{{competitor_1}}", "{{competitor_2}}", "{{competitor_3}}"]
3685
+ columns:
3686
+ [
3687
+ "Feature Category",
3688
+ "{{your_company}}",
3689
+ "{{competitor_1}}",
3690
+ "{{competitor_2}}",
3691
+ "{{competitor_3}}",
3692
+ ]
3686
3693
  rows:
3687
3694
  - category: "Core Functionality"
3688
3695
  items:
@@ -3694,7 +3701,13 @@ sections:
3694
3701
  - ["Onboarding Time", "{{time}}", "{{time}}", "{{time}}", "{{time}}"]
3695
3702
  - category: "Integration & Ecosystem"
3696
3703
  items:
3697
- - ["API Availability", "{{availability}}", "{{availability}}", "{{availability}}", "{{availability}}"]
3704
+ - [
3705
+ "API Availability",
3706
+ "{{availability}}",
3707
+ "{{availability}}",
3708
+ "{{availability}}",
3709
+ "{{availability}}",
3710
+ ]
3698
3711
  - ["Third-party Integrations", "{{number}}", "{{number}}", "{{number}}", "{{number}}"]
3699
3712
  - category: "Pricing & Plans"
3700
3713
  items:
@@ -3721,7 +3734,7 @@ sections:
3721
3734
  title: Positioning Map
3722
3735
  instruction: |
3723
3736
  Describe competitor positions on key dimensions
3724
-
3737
+
3725
3738
  Create a positioning description using 2 key dimensions relevant to the market, such as:
3726
3739
  - Price vs. Features
3727
3740
  - Ease of Use vs. Power
@@ -3756,7 +3769,7 @@ sections:
3756
3769
  title: Blue Ocean Opportunities
3757
3770
  instruction: |
3758
3771
  Identify uncontested market spaces
3759
-
3772
+
3760
3773
  List opportunities to create new market space:
3761
3774
  - Underserved segments
3762
3775
  - Unaddressed use cases
@@ -3853,16 +3866,16 @@ sections:
3853
3866
  title: Template and Framework Selection
3854
3867
  instruction: |
3855
3868
  Review provided documents including PRD, UX-UI Specification, and main Architecture Document. Focus on extracting technical implementation details needed for AI frontend tools and developer agents. Ask the user for any of these documents if you are unable to locate and were not provided.
3856
-
3869
+
3857
3870
  Before proceeding with frontend architecture design, check if the project is using a frontend starter template or existing codebase:
3858
-
3871
+
3859
3872
  1. Review the PRD, main architecture document, and brainstorming brief for mentions of:
3860
3873
  - Frontend starter templates (e.g., Create React App, Next.js, Vite, Vue CLI, Angular CLI, etc.)
3861
3874
  - UI kit or component library starters
3862
3875
  - Existing frontend projects being used as a foundation
3863
3876
  - Admin dashboard templates or other specialized starters
3864
3877
  - Design system implementations
3865
-
3878
+
3866
3879
  2. If a frontend starter template or existing project is mentioned:
3867
3880
  - Ask the user to provide access via one of these methods:
3868
3881
  - Link to the starter template documentation
@@ -3878,7 +3891,7 @@ sections:
3878
3891
  - Testing setup and patterns
3879
3892
  - Build and development scripts
3880
3893
  - Use this analysis to ensure your frontend architecture aligns with the starter's patterns
3881
-
3894
+
3882
3895
  3. If no frontend starter is mentioned but this is a new UI, ensure we know what the ui language and framework is:
3883
3896
  - Based on the framework choice, suggest appropriate starters:
3884
3897
  - React: Create React App, Next.js, Vite + React
@@ -3886,11 +3899,11 @@ sections:
3886
3899
  - Angular: Angular CLI
3887
3900
  - Or suggest popular UI templates if applicable
3888
3901
  - Explain benefits specific to frontend development
3889
-
3902
+
3890
3903
  4. If the user confirms no starter template will be used:
3891
3904
  - Note that all tooling, bundling, and configuration will need manual setup
3892
3905
  - Proceed with frontend architecture from scratch
3893
-
3906
+
3894
3907
  Document the starter template decision and any constraints it imposes before proceeding.
3895
3908
  sections:
3896
3909
  - id: changelog
@@ -3912,12 +3925,24 @@ sections:
3912
3925
  rows:
3913
3926
  - ["Framework", "{{framework}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3914
3927
  - ["UI Library", "{{ui_library}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3915
- - ["State Management", "{{state_management}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3928
+ - [
3929
+ "State Management",
3930
+ "{{state_management}}",
3931
+ "{{version}}",
3932
+ "{{purpose}}",
3933
+ "{{why_chosen}}",
3934
+ ]
3916
3935
  - ["Routing", "{{routing_library}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3917
3936
  - ["Build Tool", "{{build_tool}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3918
3937
  - ["Styling", "{{styling_solution}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3919
3938
  - ["Testing", "{{test_framework}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3920
- - ["Component Library", "{{component_lib}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3939
+ - [
3940
+ "Component Library",
3941
+ "{{component_lib}}",
3942
+ "{{version}}",
3943
+ "{{purpose}}",
3944
+ "{{why_chosen}}",
3945
+ ]
3921
3946
  - ["Form Handling", "{{form_library}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3922
3947
  - ["Animation", "{{animation_lib}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
3923
3948
  - ["Dev Tools", "{{dev_tools}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
@@ -4062,7 +4087,7 @@ sections:
4062
4087
  title: Introduction
4063
4088
  instruction: |
4064
4089
  Review provided documents including Project Brief, PRD, and any user research to gather context. Focus on understanding user needs, pain points, and desired outcomes before beginning the specification.
4065
-
4090
+
4066
4091
  Establish the document's purpose and scope. Keep the content below but ensure project name is properly substituted.
4067
4092
  content: |
4068
4093
  This document defines the user experience goals, information architecture, user flows, and visual design specifications for {{project_name}}'s user interface. It serves as the foundation for visual design and frontend development, ensuring a cohesive and user-centered experience.
@@ -4071,7 +4096,7 @@ sections:
4071
4096
  title: Overall UX Goals & Principles
4072
4097
  instruction: |
4073
4098
  Work with the user to establish and document the following. If not already defined, facilitate a discussion to determine:
4074
-
4099
+
4075
4100
  1. Target User Personas - elicit details or confirm existing ones from PRD
4076
4101
  2. Key Usability Goals - understand what success looks like for users
4077
4102
  3. Core Design Principles - establish 3-5 guiding principles
@@ -4112,7 +4137,7 @@ sections:
4112
4137
  title: Information Architecture (IA)
4113
4138
  instruction: |
4114
4139
  Collaborate with the user to create a comprehensive information architecture:
4115
-
4140
+
4116
4141
  1. Build a Site Map or Screen Inventory showing all major areas
4117
4142
  2. Define the Navigation Structure (primary, secondary, breadcrumbs)
4118
4143
  3. Use Mermaid diagrams for visual representation
@@ -4142,22 +4167,22 @@ sections:
4142
4167
  title: Navigation Structure
4143
4168
  template: |
4144
4169
  **Primary Navigation:** {{primary_nav_description}}
4145
-
4170
+
4146
4171
  **Secondary Navigation:** {{secondary_nav_description}}
4147
-
4172
+
4148
4173
  **Breadcrumb Strategy:** {{breadcrumb_strategy}}
4149
4174
 
4150
4175
  - id: user-flows
4151
4176
  title: User Flows
4152
4177
  instruction: |
4153
4178
  For each critical user task identified in the PRD:
4154
-
4179
+
4155
4180
  1. Define the user's goal clearly
4156
4181
  2. Map out all steps including decision points
4157
4182
  3. Consider edge cases and error states
4158
4183
  4. Use Mermaid flow diagrams for clarity
4159
4184
  5. Link to external tools (Figma/Miro) if detailed flows exist there
4160
-
4185
+
4161
4186
  Create subsections for each major flow.
4162
4187
  elicit: true
4163
4188
  repeatable: true
@@ -4166,9 +4191,9 @@ sections:
4166
4191
  title: "{{flow_name}}"
4167
4192
  template: |
4168
4193
  **User Goal:** {{flow_goal}}
4169
-
4194
+
4170
4195
  **Entry Points:** {{entry_points}}
4171
-
4196
+
4172
4197
  **Success Criteria:** {{success_criteria}}
4173
4198
  sections:
4174
4199
  - id: flow-diagram
@@ -4199,14 +4224,14 @@ sections:
4199
4224
  title: "{{screen_name}}"
4200
4225
  template: |
4201
4226
  **Purpose:** {{screen_purpose}}
4202
-
4227
+
4203
4228
  **Key Elements:**
4204
4229
  - {{element_1}}
4205
4230
  - {{element_2}}
4206
4231
  - {{element_3}}
4207
-
4232
+
4208
4233
  **Interaction Notes:** {{interaction_notes}}
4209
-
4234
+
4210
4235
  **Design File Reference:** {{specific_frame_link}}
4211
4236
 
4212
4237
  - id: component-library
@@ -4225,11 +4250,11 @@ sections:
4225
4250
  title: "{{component_name}}"
4226
4251
  template: |
4227
4252
  **Purpose:** {{component_purpose}}
4228
-
4253
+
4229
4254
  **Variants:** {{component_variants}}
4230
-
4255
+
4231
4256
  **States:** {{component_states}}
4232
-
4257
+
4233
4258
  **Usage Guidelines:** {{usage_guidelines}}
4234
4259
 
4235
4260
  - id: branding-style
@@ -4275,13 +4300,13 @@ sections:
4275
4300
  title: Iconography
4276
4301
  template: |
4277
4302
  **Icon Library:** {{icon_library}}
4278
-
4303
+
4279
4304
  **Usage Guidelines:** {{icon_guidelines}}
4280
4305
  - id: spacing-layout
4281
4306
  title: Spacing & Layout
4282
4307
  template: |
4283
4308
  **Grid System:** {{grid_system}}
4284
-
4309
+
4285
4310
  **Spacing Scale:** {{spacing_scale}}
4286
4311
 
4287
4312
  - id: accessibility
@@ -4299,12 +4324,12 @@ sections:
4299
4324
  - Color contrast ratios: {{contrast_requirements}}
4300
4325
  - Focus indicators: {{focus_requirements}}
4301
4326
  - Text sizing: {{text_requirements}}
4302
-
4327
+
4303
4328
  **Interaction:**
4304
4329
  - Keyboard navigation: {{keyboard_requirements}}
4305
4330
  - Screen reader support: {{screen_reader_requirements}}
4306
4331
  - Touch targets: {{touch_requirements}}
4307
-
4332
+
4308
4333
  **Content:**
4309
4334
  - Alternative text: {{alt_text_requirements}}
4310
4335
  - Heading structure: {{heading_requirements}}
@@ -4331,11 +4356,11 @@ sections:
4331
4356
  title: Adaptation Patterns
4332
4357
  template: |
4333
4358
  **Layout Changes:** {{layout_adaptations}}
4334
-
4359
+
4335
4360
  **Navigation Changes:** {{nav_adaptations}}
4336
-
4361
+
4337
4362
  **Content Priority:** {{content_adaptations}}
4338
-
4363
+
4339
4364
  **Interaction Changes:** {{interaction_adaptations}}
4340
4365
 
4341
4366
  - id: animation
@@ -4369,7 +4394,7 @@ sections:
4369
4394
  title: Next Steps
4370
4395
  instruction: |
4371
4396
  After completing the UI/UX specification:
4372
-
4397
+
4373
4398
  1. Recommend review with stakeholders
4374
4399
  2. Suggest creating/updating visual designs in design tool
4375
4400
  3. Prepare for handoff to Design Architect for frontend architecture
@@ -4417,33 +4442,33 @@ sections:
4417
4442
  elicit: true
4418
4443
  content: |
4419
4444
  This document outlines the complete fullstack architecture for {{project_name}}, including backend systems, frontend implementation, and their integration. It serves as the single source of truth for AI-driven development, ensuring consistency across the entire technology stack.
4420
-
4445
+
4421
4446
  This unified approach combines what would traditionally be separate backend and frontend architecture documents, streamlining the development process for modern fullstack applications where these concerns are increasingly intertwined.
4422
4447
  sections:
4423
4448
  - id: starter-template
4424
4449
  title: Starter Template or Existing Project
4425
4450
  instruction: |
4426
4451
  Before proceeding with architecture design, check if the project is based on any starter templates or existing codebases:
4427
-
4452
+
4428
4453
  1. Review the PRD and other documents for mentions of:
4429
4454
  - Fullstack starter templates (e.g., T3 Stack, MEAN/MERN starters, Django + React templates)
4430
4455
  - Monorepo templates (e.g., Nx, Turborepo starters)
4431
4456
  - Platform-specific starters (e.g., Vercel templates, AWS Amplify starters)
4432
4457
  - Existing projects being extended or cloned
4433
-
4458
+
4434
4459
  2. If starter templates or existing projects are mentioned:
4435
4460
  - Ask the user to provide access (links, repos, or files)
4436
4461
  - Analyze to understand pre-configured choices and constraints
4437
4462
  - Note any architectural decisions already made
4438
4463
  - Identify what can be modified vs what must be retained
4439
-
4464
+
4440
4465
  3. If no starter is mentioned but this is greenfield:
4441
4466
  - Suggest appropriate fullstack starters based on tech preferences
4442
4467
  - Consider platform-specific options (Vercel, AWS, etc.)
4443
4468
  - Let user decide whether to use one
4444
-
4469
+
4445
4470
  4. Document the decision and any constraints it imposes
4446
-
4471
+
4447
4472
  If none, state "N/A - Greenfield project"
4448
4473
  - id: changelog
4449
4474
  title: Change Log
@@ -4469,17 +4494,17 @@ sections:
4469
4494
  title: Platform and Infrastructure Choice
4470
4495
  instruction: |
4471
4496
  Based on PRD requirements and technical assumptions, make a platform recommendation:
4472
-
4497
+
4473
4498
  1. Consider common patterns (not an exhaustive list, use your own best judgement and search the web as needed for emerging trends):
4474
4499
  - **Vercel + Supabase**: For rapid development with Next.js, built-in auth/storage
4475
4500
  - **AWS Full Stack**: For enterprise scale with Lambda, API Gateway, S3, Cognito
4476
4501
  - **Azure**: For .NET ecosystems or enterprise Microsoft environments
4477
4502
  - **Google Cloud**: For ML/AI heavy applications or Google ecosystem integration
4478
-
4503
+
4479
4504
  2. Present 2-3 viable options with clear pros/cons
4480
4505
  3. Make a recommendation with rationale
4481
4506
  4. Get explicit user confirmation
4482
-
4507
+
4483
4508
  Document the choice and key services that will be used.
4484
4509
  template: |
4485
4510
  **Platform:** {{selected_platform}}
@@ -4489,7 +4514,7 @@ sections:
4489
4514
  title: Repository Structure
4490
4515
  instruction: |
4491
4516
  Define the repository approach based on PRD requirements and platform choice, explain your rationale or ask questions to the user if unsure:
4492
-
4517
+
4493
4518
  1. For modern fullstack apps, monorepo is often preferred
4494
4519
  2. Consider tooling (Nx, Turborepo, Lerna, npm workspaces)
4495
4520
  3. Define package/app boundaries
@@ -4511,7 +4536,7 @@ sections:
4511
4536
  - Databases and storage
4512
4537
  - External integrations
4513
4538
  - CDN and caching layers
4514
-
4539
+
4515
4540
  Use appropriate diagram type for clarity.
4516
4541
  - id: architectural-patterns
4517
4542
  title: Architectural Patterns
@@ -4521,7 +4546,7 @@ sections:
4521
4546
  - Frontend patterns (e.g., Component-based, State management)
4522
4547
  - Backend patterns (e.g., Repository, CQRS, Event-driven)
4523
4548
  - Integration patterns (e.g., BFF, API Gateway)
4524
-
4549
+
4525
4550
  For each pattern, provide recommendation and rationale.
4526
4551
  repeatable: true
4527
4552
  template: "- **{{pattern_name}}:** {{pattern_description}} - _Rationale:_ {{rationale}}"
@@ -4535,7 +4560,7 @@ sections:
4535
4560
  title: Tech Stack
4536
4561
  instruction: |
4537
4562
  This is the DEFINITIVE technology selection for the entire project. Work with user to finalize all choices. This table is the single source of truth - all development must use these exact versions.
4538
-
4563
+
4539
4564
  Key areas to cover:
4540
4565
  - Frontend and backend languages/frameworks
4541
4566
  - Databases and caching
@@ -4544,7 +4569,7 @@ sections:
4544
4569
  - Testing tools for both frontend and backend
4545
4570
  - Build and deployment tools
4546
4571
  - Monitoring and logging
4547
-
4572
+
4548
4573
  Upon render, elicit feedback immediately.
4549
4574
  elicit: true
4550
4575
  sections:
@@ -4554,11 +4579,29 @@ sections:
4554
4579
  columns: [Category, Technology, Version, Purpose, Rationale]
4555
4580
  rows:
4556
4581
  - ["Frontend Language", "{{fe_language}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
4557
- - ["Frontend Framework", "{{fe_framework}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
4558
- - ["UI Component Library", "{{ui_library}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
4582
+ - [
4583
+ "Frontend Framework",
4584
+ "{{fe_framework}}",
4585
+ "{{version}}",
4586
+ "{{purpose}}",
4587
+ "{{why_chosen}}",
4588
+ ]
4589
+ - [
4590
+ "UI Component Library",
4591
+ "{{ui_library}}",
4592
+ "{{version}}",
4593
+ "{{purpose}}",
4594
+ "{{why_chosen}}",
4595
+ ]
4559
4596
  - ["State Management", "{{state_mgmt}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
4560
4597
  - ["Backend Language", "{{be_language}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
4561
- - ["Backend Framework", "{{be_framework}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
4598
+ - [
4599
+ "Backend Framework",
4600
+ "{{be_framework}}",
4601
+ "{{version}}",
4602
+ "{{purpose}}",
4603
+ "{{why_chosen}}",
4604
+ ]
4562
4605
  - ["API Style", "{{api_style}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
4563
4606
  - ["Database", "{{database}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
4564
4607
  - ["Cache", "{{cache}}", "{{version}}", "{{purpose}}", "{{why_chosen}}"]
@@ -4579,14 +4622,14 @@ sections:
4579
4622
  title: Data Models
4580
4623
  instruction: |
4581
4624
  Define the core data models/entities that will be shared between frontend and backend:
4582
-
4625
+
4583
4626
  1. Review PRD requirements and identify key business entities
4584
4627
  2. For each model, explain its purpose and relationships
4585
4628
  3. Include key attributes and data types
4586
4629
  4. Show relationships between models
4587
4630
  5. Create TypeScript interfaces that can be shared
4588
4631
  6. Discuss design decisions with user
4589
-
4632
+
4590
4633
  Create a clear conceptual model before moving to database schema.
4591
4634
  elicit: true
4592
4635
  repeatable: true
@@ -4595,7 +4638,7 @@ sections:
4595
4638
  title: "{{model_name}}"
4596
4639
  template: |
4597
4640
  **Purpose:** {{model_purpose}}
4598
-
4641
+
4599
4642
  **Key Attributes:**
4600
4643
  - {{attribute_1}}: {{type_1}} - {{description_1}}
4601
4644
  - {{attribute_2}}: {{type_2}} - {{description_2}}
@@ -4614,7 +4657,7 @@ sections:
4614
4657
  title: API Specification
4615
4658
  instruction: |
4616
4659
  Based on the chosen API style from Tech Stack:
4617
-
4660
+
4618
4661
  1. If REST API, create an OpenAPI 3.0 specification
4619
4662
  2. If GraphQL, provide the GraphQL schema
4620
4663
  3. If tRPC, show router definitions
@@ -4622,7 +4665,7 @@ sections:
4622
4665
  5. Define request/response schemas based on data models
4623
4666
  6. Document authentication requirements
4624
4667
  7. Include example requests/responses
4625
-
4668
+
4626
4669
  Use appropriate format for the chosen API style. If no API (e.g., static site), skip this section.
4627
4670
  elicit: true
4628
4671
  sections:
@@ -4657,7 +4700,7 @@ sections:
4657
4700
  title: Components
4658
4701
  instruction: |
4659
4702
  Based on the architectural patterns, tech stack, and data models from above:
4660
-
4703
+
4661
4704
  1. Identify major logical components/services across the fullstack
4662
4705
  2. Consider both frontend and backend components
4663
4706
  3. Define clear boundaries and interfaces between components
@@ -4666,7 +4709,7 @@ sections:
4666
4709
  - Key interfaces/APIs exposed
4667
4710
  - Dependencies on other components
4668
4711
  - Technology specifics based on tech stack choices
4669
-
4712
+
4670
4713
  5. Create component diagrams where helpful
4671
4714
  elicit: true
4672
4715
  sections:
@@ -4675,13 +4718,13 @@ sections:
4675
4718
  title: "{{component_name}}"
4676
4719
  template: |
4677
4720
  **Responsibility:** {{component_description}}
4678
-
4721
+
4679
4722
  **Key Interfaces:**
4680
4723
  - {{interface_1}}
4681
4724
  - {{interface_2}}
4682
-
4725
+
4683
4726
  **Dependencies:** {{dependencies}}
4684
-
4727
+
4685
4728
  **Technology Stack:** {{component_tech_details}}
4686
4729
  - id: component-diagrams
4687
4730
  title: Component Diagrams
@@ -4698,13 +4741,13 @@ sections:
4698
4741
  condition: Project requires external API integrations
4699
4742
  instruction: |
4700
4743
  For each external service integration:
4701
-
4744
+
4702
4745
  1. Identify APIs needed based on PRD requirements and component design
4703
4746
  2. If documentation URLs are unknown, ask user for specifics
4704
4747
  3. Document authentication methods and security considerations
4705
4748
  4. List specific endpoints that will be used
4706
4749
  5. Note any rate limits or usage constraints
4707
-
4750
+
4708
4751
  If no external APIs are needed, state this explicitly and skip to next section.
4709
4752
  elicit: true
4710
4753
  repeatable: true
@@ -4717,10 +4760,10 @@ sections:
4717
4760
  - **Base URL(s):** {{api_base_url}}
4718
4761
  - **Authentication:** {{auth_method}}
4719
4762
  - **Rate Limits:** {{rate_limits}}
4720
-
4763
+
4721
4764
  **Key Endpoints Used:**
4722
4765
  - `{{method}} {{endpoint_path}}` - {{endpoint_purpose}}
4723
-
4766
+
4724
4767
  **Integration Notes:** {{integration_considerations}}
4725
4768
 
4726
4769
  - id: core-workflows
@@ -4729,14 +4772,14 @@ sections:
4729
4772
  mermaid_type: sequence
4730
4773
  instruction: |
4731
4774
  Illustrate key system workflows using sequence diagrams:
4732
-
4775
+
4733
4776
  1. Identify critical user journeys from PRD
4734
4777
  2. Show component interactions including external APIs
4735
4778
  3. Include both frontend and backend flows
4736
4779
  4. Include error handling paths
4737
4780
  5. Document async operations
4738
4781
  6. Create both high-level and detailed diagrams as needed
4739
-
4782
+
4740
4783
  Focus on workflows that clarify architecture decisions or complex interactions.
4741
4784
  elicit: true
4742
4785
 
@@ -4744,13 +4787,13 @@ sections:
4744
4787
  title: Database Schema
4745
4788
  instruction: |
4746
4789
  Transform the conceptual data models into concrete database schemas:
4747
-
4790
+
4748
4791
  1. Use the database type(s) selected in Tech Stack
4749
4792
  2. Create schema definitions using appropriate notation
4750
4793
  3. Include indexes, constraints, and relationships
4751
4794
  4. Consider performance and scalability
4752
4795
  5. For NoSQL, show document structures
4753
-
4796
+
4754
4797
  Present schema in format appropriate to database type (SQL DDL, JSON schema, etc.)
4755
4798
  elicit: true
4756
4799
 
@@ -4886,60 +4929,60 @@ sections:
4886
4929
  type: code
4887
4930
  language: plaintext
4888
4931
  examples:
4889
- - |
4890
- {{project-name}}/
4891
- ├── .github/ # CI/CD workflows
4892
- │ └── workflows/
4893
- │ ├── ci.yaml
4894
- │ └── deploy.yaml
4895
- ├── apps/ # Application packages
4896
- │ ├── web/ # Frontend application
4897
- │ │ ├── src/
4898
- │ │ │ ├── components/ # UI components
4899
- │ │ │ ├── pages/ # Page components/routes
4900
- │ │ │ ├── hooks/ # Custom React hooks
4901
- │ │ │ ├── services/ # API client services
4902
- │ │ │ ├── stores/ # State management
4903
- │ │ │ ├── styles/ # Global styles/themes
4904
- │ │ │ └── utils/ # Frontend utilities
4905
- │ │ ├── public/ # Static assets
4906
- │ │ ├── tests/ # Frontend tests
4907
- │ │ └── package.json
4908
- │ └── api/ # Backend application
4909
- │ ├── src/
4910
- │ │ ├── routes/ # API routes/controllers
4911
- │ │ ├── services/ # Business logic
4912
- │ │ ├── models/ # Data models
4913
- │ │ ├── middleware/ # Express/API middleware
4914
- │ │ ├── utils/ # Backend utilities
4915
- │ │ └── {{serverless_or_server_entry}}
4916
- │ ├── tests/ # Backend tests
4917
- │ └── package.json
4918
- ├── packages/ # Shared packages
4919
- │ ├── shared/ # Shared types/utilities
4920
- │ │ ├── src/
4921
- │ │ │ ├── types/ # TypeScript interfaces
4922
- │ │ │ ├── constants/ # Shared constants
4923
- │ │ │ └── utils/ # Shared utilities
4924
- │ │ └── package.json
4925
- │ ├── ui/ # Shared UI components
4926
- │ │ ├── src/
4927
- │ │ └── package.json
4928
- │ └── config/ # Shared configuration
4929
- │ ├── eslint/
4930
- │ ├── typescript/
4931
- │ └── jest/
4932
- ├── infrastructure/ # IaC definitions
4933
- │ └── {{iac_structure}}
4934
- ├── scripts/ # Build/deploy scripts
4935
- ├── docs/ # Documentation
4936
- │ ├── prd.md
4937
- │ ├── front-end-spec.md
4938
- │ └── fullstack-architecture.md
4939
- ├── .env.example # Environment template
4940
- ├── package.json # Root package.json
4941
- ├── {{monorepo_config}} # Monorepo configuration
4942
- └── README.md
4932
+ - |
4933
+ {{project-name}}/
4934
+ ├── .github/ # CI/CD workflows
4935
+ │ └── workflows/
4936
+ │ ├── ci.yaml
4937
+ │ └── deploy.yaml
4938
+ ├── apps/ # Application packages
4939
+ │ ├── web/ # Frontend application
4940
+ │ │ ├── src/
4941
+ │ │ │ ├── components/ # UI components
4942
+ │ │ │ ├── pages/ # Page components/routes
4943
+ │ │ │ ├── hooks/ # Custom React hooks
4944
+ │ │ │ ├── services/ # API client services
4945
+ │ │ │ ├── stores/ # State management
4946
+ │ │ │ ├── styles/ # Global styles/themes
4947
+ │ │ │ └── utils/ # Frontend utilities
4948
+ │ │ ├── public/ # Static assets
4949
+ │ │ ├── tests/ # Frontend tests
4950
+ │ │ └── package.json
4951
+ │ └── api/ # Backend application
4952
+ │ ├── src/
4953
+ │ │ ├── routes/ # API routes/controllers
4954
+ │ │ ├── services/ # Business logic
4955
+ │ │ ├── models/ # Data models
4956
+ │ │ ├── middleware/ # Express/API middleware
4957
+ │ │ ├── utils/ # Backend utilities
4958
+ │ │ └── {{serverless_or_server_entry}}
4959
+ │ ├── tests/ # Backend tests
4960
+ │ └── package.json
4961
+ ├── packages/ # Shared packages
4962
+ │ ├── shared/ # Shared types/utilities
4963
+ │ │ ├── src/
4964
+ │ │ │ ├── types/ # TypeScript interfaces
4965
+ │ │ │ ├── constants/ # Shared constants
4966
+ │ │ │ └── utils/ # Shared utilities
4967
+ │ │ └── package.json
4968
+ │ ├── ui/ # Shared UI components
4969
+ │ │ ├── src/
4970
+ │ │ └── package.json
4971
+ │ └── config/ # Shared configuration
4972
+ │ ├── eslint/
4973
+ │ ├── typescript/
4974
+ │ └── jest/
4975
+ ├── infrastructure/ # IaC definitions
4976
+ │ └── {{iac_structure}}
4977
+ ├── scripts/ # Build/deploy scripts
4978
+ ├── docs/ # Documentation
4979
+ │ ├── prd.md
4980
+ │ ├── front-end-spec.md
4981
+ │ └── fullstack-architecture.md
4982
+ ├── .env.example # Environment template
4983
+ ├── package.json # Root package.json
4984
+ ├── {{monorepo_config}} # Monorepo configuration
4985
+ └── README.md
4943
4986
 
4944
4987
  - id: development-workflow
4945
4988
  title: Development Workflow
@@ -4966,13 +5009,13 @@ sections:
4966
5009
  template: |
4967
5010
  # Start all services
4968
5011
  {{start_all_command}}
4969
-
5012
+
4970
5013
  # Start frontend only
4971
5014
  {{start_frontend_command}}
4972
-
5015
+
4973
5016
  # Start backend only
4974
5017
  {{start_backend_command}}
4975
-
5018
+
4976
5019
  # Run tests
4977
5020
  {{test_commands}}
4978
5021
  - id: environment-config
@@ -4985,10 +5028,10 @@ sections:
4985
5028
  template: |
4986
5029
  # Frontend (.env.local)
4987
5030
  {{frontend_env_vars}}
4988
-
5031
+
4989
5032
  # Backend (.env)
4990
5033
  {{backend_env_vars}}
4991
-
5034
+
4992
5035
  # Shared
4993
5036
  {{shared_env_vars}}
4994
5037
 
@@ -5005,7 +5048,7 @@ sections:
5005
5048
  - **Build Command:** {{frontend_build_command}}
5006
5049
  - **Output Directory:** {{frontend_output_dir}}
5007
5050
  - **CDN/Edge:** {{cdn_strategy}}
5008
-
5051
+
5009
5052
  **Backend Deployment:**
5010
5053
  - **Platform:** {{backend_deploy_platform}}
5011
5054
  - **Build Command:** {{backend_build_command}}
@@ -5036,12 +5079,12 @@ sections:
5036
5079
  - CSP Headers: {{csp_policy}}
5037
5080
  - XSS Prevention: {{xss_strategy}}
5038
5081
  - Secure Storage: {{storage_strategy}}
5039
-
5082
+
5040
5083
  **Backend Security:**
5041
5084
  - Input Validation: {{validation_approach}}
5042
5085
  - Rate Limiting: {{rate_limit_config}}
5043
5086
  - CORS Policy: {{cors_config}}
5044
-
5087
+
5045
5088
  **Authentication Security:**
5046
5089
  - Token Storage: {{token_strategy}}
5047
5090
  - Session Management: {{session_approach}}
@@ -5053,7 +5096,7 @@ sections:
5053
5096
  - Bundle Size Target: {{bundle_size}}
5054
5097
  - Loading Strategy: {{loading_approach}}
5055
5098
  - Caching Strategy: {{fe_cache_strategy}}
5056
-
5099
+
5057
5100
  **Backend Performance:**
5058
5101
  - Response Time Target: {{response_target}}
5059
5102
  - Database Optimization: {{db_optimization}}
@@ -5069,10 +5112,10 @@ sections:
5069
5112
  type: code
5070
5113
  language: text
5071
5114
  template: |
5072
- E2E Tests
5073
- / \
5074
- Integration Tests
5075
- / \
5115
+ E2E Tests
5116
+ / \
5117
+ Integration Tests
5118
+ / \
5076
5119
  Frontend Unit Backend Unit
5077
5120
  - id: test-organization
5078
5121
  title: Test Organization
@@ -5191,7 +5234,7 @@ sections:
5191
5234
  - JavaScript errors
5192
5235
  - API response times
5193
5236
  - User interactions
5194
-
5237
+
5195
5238
  **Backend Metrics:**
5196
5239
  - Request rate
5197
5240
  - Error rate
@@ -5336,7 +5379,7 @@ sections:
5336
5379
  instruction: Map the end-to-end customer experience for primary segments
5337
5380
  template: |
5338
5381
  For primary customer segment:
5339
-
5382
+
5340
5383
  1. **Awareness:** {{discovery_process}}
5341
5384
  2. **Consideration:** {{evaluation_criteria}}
5342
5385
  3. **Purchase:** {{decision_triggers}}
@@ -5517,7 +5560,7 @@ sections:
5517
5560
  condition: PRD has UX/UI requirements
5518
5561
  instruction: |
5519
5562
  Capture high-level UI/UX vision to guide Design Architect and to inform story creation. Steps:
5520
-
5563
+
5521
5564
  1. Pre-fill all subsections with educated guesses based on project context
5522
5565
  2. Present the complete rendered section to user
5523
5566
  3. Clearly let the user know where assumptions were made
@@ -5559,7 +5602,7 @@ sections:
5559
5602
  title: Technical Assumptions
5560
5603
  instruction: |
5561
5604
  Gather technical decisions that will guide the Architect. Steps:
5562
-
5605
+
5563
5606
  1. Check if .bmad-core/data/technical-preferences.yaml or an attached technical-preferences file exists - use it to pre-populate choices
5564
5607
  2. Ask user about: languages, frameworks, starter templates, libraries, APIs, deployment targets
5565
5608
  3. For unknowns, offer guidance based on project goals and MVP scope
@@ -5587,9 +5630,9 @@ sections:
5587
5630
  title: Epic List
5588
5631
  instruction: |
5589
5632
  Present a high-level list of all epics for user approval. Each epic should have a title and a short (1 sentence) goal statement. This allows the user to review the overall structure before diving into details.
5590
-
5633
+
5591
5634
  CRITICAL: Epics MUST be logically sequential following agile best practices:
5592
-
5635
+
5593
5636
  - Each epic should deliver a significant, end-to-end, fully deployable increment of testable functionality
5594
5637
  - Epic 1 must establish foundational project infrastructure (app setup, Git, CI/CD, core services) unless we are adding new functionality to an existing app, while also delivering an initial piece of functionality, even as simple as a health-check route or display of a simple canary page - remember this when we produce the stories for the first epic!
5595
5638
  - Each subsequent epic builds upon previous epics' functionality delivering major blocks of functionality that provide tangible value to users or business when deployed
@@ -5608,11 +5651,11 @@ sections:
5608
5651
  repeatable: true
5609
5652
  instruction: |
5610
5653
  After the epic list is approved, present each epic with all its stories and acceptance criteria as a complete review unit.
5611
-
5654
+
5612
5655
  For each epic provide expanded goal (2-3 sentences describing the objective and value all the stories will achieve).
5613
-
5656
+
5614
5657
  CRITICAL STORY SEQUENCING REQUIREMENTS:
5615
-
5658
+
5616
5659
  - Stories within each epic MUST be logically sequential
5617
5660
  - Each story should be a "vertical slice" delivering complete functionality aside from early enabler stories for project foundation
5618
5661
  - No story should depend on work from a later story or epic
@@ -5640,7 +5683,7 @@ sections:
5640
5683
  repeatable: true
5641
5684
  instruction: |
5642
5685
  Define clear, comprehensive, and testable acceptance criteria that:
5643
-
5686
+
5644
5687
  - Precisely define what "done" means from a functional perspective
5645
5688
  - Are unambiguous and serve as basis for verification
5646
5689
  - Include any critical non-functional requirements from the PRD
@@ -5694,12 +5737,12 @@ sections:
5694
5737
  - id: introduction
5695
5738
  instruction: |
5696
5739
  This template guides creation of a comprehensive Project Brief that serves as the foundational input for product development.
5697
-
5740
+
5698
5741
  Start by asking the user which mode they prefer:
5699
-
5742
+
5700
5743
  1. **Interactive Mode** - Work through each section collaboratively
5701
5744
  2. **YOLO Mode** - Generate complete draft for review and refinement
5702
-
5745
+
5703
5746
  Before beginning, understand what inputs are available (brainstorming results, market research, competitive analysis, initial ideas) and gather project context.
5704
5747
 
5705
5748
  - id: executive-summary
@@ -5902,7 +5945,7 @@ workflow:
5902
5945
  elicitation: advanced-elicitation
5903
5946
 
5904
5947
  agent_config:
5905
- editable_sections:
5948
+ editable_sections:
5906
5949
  - Status
5907
5950
  - Story
5908
5951
  - Acceptance Criteria
@@ -5919,7 +5962,7 @@ sections:
5919
5962
  instruction: Select the current status of the story
5920
5963
  owner: scrum-master
5921
5964
  editors: [scrum-master, dev-agent]
5922
-
5965
+
5923
5966
  - id: story
5924
5967
  title: Story
5925
5968
  type: template-text
@@ -5931,7 +5974,7 @@ sections:
5931
5974
  elicit: true
5932
5975
  owner: scrum-master
5933
5976
  editors: [scrum-master]
5934
-
5977
+
5935
5978
  - id: acceptance-criteria
5936
5979
  title: Acceptance Criteria
5937
5980
  type: numbered-list
@@ -5939,7 +5982,7 @@ sections:
5939
5982
  elicit: true
5940
5983
  owner: scrum-master
5941
5984
  editors: [scrum-master]
5942
-
5985
+
5943
5986
  - id: tasks-subtasks
5944
5987
  title: Tasks / Subtasks
5945
5988
  type: bullet-list
@@ -5956,7 +5999,7 @@ sections:
5956
5999
  elicit: true
5957
6000
  owner: scrum-master
5958
6001
  editors: [scrum-master, dev-agent]
5959
-
6002
+
5960
6003
  - id: dev-notes
5961
6004
  title: Dev Notes
5962
6005
  instruction: |
@@ -5980,7 +6023,7 @@ sections:
5980
6023
  elicit: true
5981
6024
  owner: scrum-master
5982
6025
  editors: [scrum-master]
5983
-
6026
+
5984
6027
  - id: change-log
5985
6028
  title: Change Log
5986
6029
  type: table
@@ -5988,7 +6031,7 @@ sections:
5988
6031
  instruction: Track changes made to this story document
5989
6032
  owner: scrum-master
5990
6033
  editors: [scrum-master, dev-agent, qa-agent]
5991
-
6034
+
5992
6035
  - id: dev-agent-record
5993
6036
  title: Dev Agent Record
5994
6037
  instruction: This section is populated by the development agent during implementation
@@ -6001,25 +6044,25 @@ sections:
6001
6044
  instruction: Record the specific AI agent model and version used for development
6002
6045
  owner: dev-agent
6003
6046
  editors: [dev-agent]
6004
-
6047
+
6005
6048
  - id: debug-log-references
6006
6049
  title: Debug Log References
6007
6050
  instruction: Reference any debug logs or traces generated during development
6008
6051
  owner: dev-agent
6009
6052
  editors: [dev-agent]
6010
-
6053
+
6011
6054
  - id: completion-notes
6012
6055
  title: Completion Notes List
6013
6056
  instruction: Notes about the completion of tasks and any issues encountered
6014
6057
  owner: dev-agent
6015
6058
  editors: [dev-agent]
6016
-
6059
+
6017
6060
  - id: file-list
6018
6061
  title: File List
6019
6062
  instruction: List all files created, modified, or affected during story implementation
6020
6063
  owner: dev-agent
6021
6064
  editors: [dev-agent]
6022
-
6065
+
6023
6066
  - id: qa-results
6024
6067
  title: QA Results
6025
6068
  instruction: Results from QA Agent QA review of the completed story implementation
@@ -8015,7 +8058,7 @@ You are the "Vibe CEO" - thinking like a CEO with unlimited resources and a sing
8015
8058
 
8016
8059
  - **Claude Code**: `/agent-name` (e.g., `/bmad-master`)
8017
8060
  - **Cursor**: `@agent-name` (e.g., `@bmad-master`)
8018
- - **Windsurf**: `@agent-name` (e.g., `@bmad-master`)
8061
+ - **Windsurf**: `/agent-name` (e.g., `/bmad-master`)
8019
8062
  - **Trae**: `@agent-name` (e.g., `@bmad-master`)
8020
8063
  - **Roo Code**: Select mode from mode selector (e.g., `bmad-master`)
8021
8064
  - **GitHub Copilot**: Open the Chat view (`⌃⌘I` on Mac, `Ctrl+Alt+I` on Windows/Linux) and select **Agent** from the chat mode selector.