bmad-plus 0.12.0 → 0.12.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 (160) hide show
  1. package/CHANGELOG.md +612 -554
  2. package/README.md +557 -577
  3. package/osint-agent-package/agents/osint-investigator.md +12 -0
  4. package/osint-agent-package/skills/bmad-osint-investigate/osint/SKILL.md +491 -482
  5. package/osint-agent-package/skills/bmad-osint-investigate/osint/assets/dossier-template.md +126 -126
  6. package/osint-agent-package/skills/bmad-osint-investigate/osint/assets/lawful-basis-record.md +48 -48
  7. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/content-extraction.md +100 -100
  8. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/gdpr-osint.md +48 -48
  9. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/platforms.md +130 -130
  10. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/psychoprofile.md +69 -69
  11. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/tools.md +281 -281
  12. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/mcp-client.py +136 -136
  13. package/package.json +104 -91
  14. package/readme-international/README.de.md +596 -589
  15. package/readme-international/README.es.md +613 -606
  16. package/readme-international/README.fr.md +611 -604
  17. package/src/bmad-plus/agents/agent-shadow/SKILL.md +18 -0
  18. package/src/bmad-plus/data/role-triggers.yaml +52 -0
  19. package/src/bmad-plus/module.yaml +283 -283
  20. package/src/bmad-plus/packs/pack-animated/animated-website-agent.md +325 -325
  21. package/src/bmad-plus/packs/pack-animated/templates/animated-website-workflow.md +55 -55
  22. package/src/bmad-plus/packs/pack-backup/backup-agent.md +71 -71
  23. package/src/bmad-plus/packs/pack-backup/templates/backup-workflow.md +51 -51
  24. package/src/bmad-plus/packs/pack-dev-studio/README.md +162 -162
  25. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/analyst-agent.md +73 -73
  26. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/document-project.md +61 -61
  27. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/domain-research.md +95 -95
  28. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/market-research.md +95 -95
  29. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/prfaq.md +134 -134
  30. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/product-brief.md +80 -80
  31. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/tech-writer-agent.md +73 -73
  32. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/technical-research.md +95 -95
  33. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/architect-agent.md +73 -73
  34. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/create-architecture.md +73 -73
  35. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/create-epics-stories.md +92 -92
  36. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/generate-project-context.md +80 -80
  37. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/implementation-readiness.md +90 -90
  38. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-01-init.md +153 -153
  39. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-01b-continue.md +173 -173
  40. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-02-context.md +224 -224
  41. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-03-starter.md +329 -329
  42. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-04-decisions.md +318 -318
  43. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-05-patterns.md +359 -359
  44. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-06-structure.md +379 -379
  45. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-07-validation.md +361 -361
  46. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-08-complete.md +81 -81
  47. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/checkpoint-preview.md +67 -67
  48. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-01-gather-context.md +85 -85
  49. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-02-review.md +35 -35
  50. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-03-triage.md +49 -49
  51. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-04-present.md +131 -131
  52. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review.md +89 -89
  53. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/correct-course.md +300 -300
  54. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/create-story.md +428 -428
  55. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-agent.md +73 -73
  56. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-story-checklist.md +80 -80
  57. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-story.md +484 -484
  58. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/investigate.md +193 -193
  59. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/qa-e2e-tests.md +175 -175
  60. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/quick-dev.md +110 -110
  61. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/retrospective.md +1511 -1511
  62. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/sprint-planning.md +298 -298
  63. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/sprint-status.md +296 -296
  64. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/create-prd.md +29 -29
  65. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/create-ux-design.md +74 -74
  66. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/edit-prd.md +29 -29
  67. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/pm-agent.md +73 -73
  68. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/prd.md +89 -89
  69. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/ux-designer-agent.md +73 -73
  70. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/validate-prd.md +29 -29
  71. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/advanced-elicitation.md +141 -141
  72. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/adversarial-review.md +37 -37
  73. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/bmad-help.md +75 -75
  74. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/brainstorming.md +6 -6
  75. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/customize.md +110 -110
  76. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/distillator.md +176 -176
  77. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/edge-case-hunter.md +67 -67
  78. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/editorial-review-prose.md +86 -86
  79. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/editorial-review-structure.md +179 -179
  80. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/index-docs.md +66 -66
  81. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/party-mode.md +127 -127
  82. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/shard-doc.md +105 -105
  83. package/src/bmad-plus/packs/pack-dev-studio/dev-studio-orchestrator.md +120 -120
  84. package/src/bmad-plus/packs/pack-dev-studio/shared/architecture-decision-template.md +12 -12
  85. package/src/bmad-plus/packs/pack-dev-studio/shared/bwml-spec.md +328 -328
  86. package/src/bmad-plus/packs/pack-dev-studio/shared/module-help.csv +32 -32
  87. package/src/bmad-plus/packs/pack-dev-studio/upstream-sync.yaml +81 -81
  88. package/src/bmad-plus/packs/pack-memory/shared/memory-protocol.md +14 -0
  89. package/src/bmad-plus/packs/pack-seo/SKILL.md +171 -171
  90. package/src/bmad-plus/packs/pack-seo/checklist.md +140 -140
  91. package/src/bmad-plus/packs/pack-seo/pagespeed-playbook.md +320 -320
  92. package/src/bmad-plus/packs/pack-seo/ref/audit-schema.json +187 -187
  93. package/src/bmad-plus/packs/pack-seo/ref/cwv-thresholds.md +87 -87
  94. package/src/bmad-plus/packs/pack-seo/ref/eeat-criteria.md +123 -123
  95. package/src/bmad-plus/packs/pack-seo/ref/geo-signals.md +167 -167
  96. package/src/bmad-plus/packs/pack-seo/ref/hreflang-rules.md +153 -153
  97. package/src/bmad-plus/packs/pack-seo/ref/quality-gates.md +133 -133
  98. package/src/bmad-plus/packs/pack-seo/ref/schema-catalog.md +91 -91
  99. package/src/bmad-plus/packs/pack-seo/ref/schema-templates.json +356 -356
  100. package/src/bmad-plus/packs/pack-seo/requirements.txt +17 -0
  101. package/src/bmad-plus/packs/pack-seo/scripts/seo_apis.py +456 -0
  102. package/src/bmad-plus/packs/pack-seo/scripts/seo_crawl.py +359 -0
  103. package/src/bmad-plus/packs/pack-seo/scripts/seo_fetch.py +304 -0
  104. package/src/bmad-plus/packs/pack-seo/scripts/seo_parse.py +255 -0
  105. package/src/bmad-plus/packs/pack-seo/scripts/seo_report.py +410 -0
  106. package/src/bmad-plus/packs/pack-seo/scripts/seo_screenshot.py +202 -0
  107. package/src/bmad-plus/packs/pack-seo/seo-chief.md +294 -294
  108. package/src/bmad-plus/packs/pack-seo/seo-judge.md +241 -241
  109. package/src/bmad-plus/packs/pack-seo/seo-scout.md +171 -171
  110. package/src/bmad-plus/packs/pack-seo/templates/seo-audit-workflow.md +241 -241
  111. package/src/bmad-plus/packs/pack-shield/README.md +6 -6
  112. package/src/bmad-plus/packs/pack-shield/SKILL.md +2 -2
  113. package/src/bmad-plus/packs/pack-shield/categories/accessibility-esg/csrd-agent.md +11 -11
  114. package/src/bmad-plus/packs/pack-shield/categories/accessibility-esg/section508-agent.md +11 -11
  115. package/src/bmad-plus/packs/pack-shield/categories/accessibility-esg/wcag-agent.md +11 -11
  116. package/src/bmad-plus/packs/pack-shield/categories/ai-governance/eu-ai-act-agent.md +11 -11
  117. package/src/bmad-plus/packs/pack-shield/categories/ai-governance/iso42001-agent.md +11 -11
  118. package/src/bmad-plus/packs/pack-shield/categories/ai-governance/nist-ai-rmf-agent.md +11 -11
  119. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/cis-controls-agent.md +11 -11
  120. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/ism-agent.md +11 -11
  121. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/iso27001-agent.md +11 -11
  122. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/nis2-agent.md +11 -11
  123. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/nist-800-53-agent.md +11 -11
  124. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/nist-csf-agent.md +11 -11
  125. package/src/bmad-plus/packs/pack-shield/categories/defense-export/cmmc-agent.md +11 -11
  126. package/src/bmad-plus/packs/pack-shield/categories/defense-export/ear-agent.md +11 -11
  127. package/src/bmad-plus/packs/pack-shield/categories/defense-export/itar-agent.md +11 -11
  128. package/src/bmad-plus/packs/pack-shield/categories/defense-export/tsa-agent.md +11 -11
  129. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/dora-agent.md +11 -11
  130. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/fedramp-agent.md +11 -11
  131. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/hipaa-agent.md +11 -11
  132. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/pci-dss-agent.md +11 -11
  133. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/soc2-agent.md +11 -11
  134. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/swift-csp-agent.md +11 -11
  135. package/src/bmad-plus/packs/pack-shield/shield-orchestrator.md +1 -1
  136. package/tools/build/check-counts.js +628 -0
  137. package/tools/build/generated-adapters/.codex/AGENTS.md +1 -1
  138. package/tools/build/generated-adapters/.cursor/rules/bmad-plus.mdc +1 -1
  139. package/tools/build/generated-adapters/.opencode/AGENTS.md +1 -1
  140. package/tools/build/generated-adapters/AGENTS.md +1 -1
  141. package/tools/build/generated-adapters/CLAUDE.md +1 -1
  142. package/tools/build/generated-adapters/CONVENTIONS.md +1 -1
  143. package/tools/build/generated-adapters/GEMINI.md +1 -1
  144. package/tools/cli/commands/autoconfig.js +470 -472
  145. package/tools/cli/commands/doctor.js +233 -233
  146. package/tools/cli/commands/install.js +598 -495
  147. package/tools/cli/commands/memory-journal-cmd.js +311 -311
  148. package/tools/cli/commands/memory.js +195 -195
  149. package/tools/cli/commands/scan.js +348 -364
  150. package/tools/cli/commands/uninstall.js +101 -101
  151. package/tools/cli/commands/update.js +134 -134
  152. package/tools/cli/i18n.js +845 -845
  153. package/tools/cli/lib/README-memory-journal.md +125 -125
  154. package/tools/cli/lib/ide-config.js +267 -259
  155. package/tools/cli/lib/memory-init.js +204 -113
  156. package/tools/cli/lib/packs.js +209 -209
  157. package/tools/cli/lib/path-hash.js +39 -0
  158. package/tools/cli/lib/python-provision.js +508 -508
  159. package/tools/cli/lib/stack-detect.js +102 -102
  160. package/tools/cli/lib/validate.js +50 -50
@@ -1,329 +1,329 @@
1
- # Step 3: Starter Template Evaluation
2
-
3
- ## MANDATORY EXECUTION RULES (READ FIRST):
4
-
5
- - 🛑 NEVER generate content without user input
6
- - ✅ ALWAYS treat this as collaborative discovery between architectural peers
7
- - 📋 YOU ARE A FACILITATOR, not a content generator
8
- - 💬 FOCUS on evaluating starter template options with current versions
9
- - 🌐 ALWAYS search the web to verify current versions - NEVER trust hardcoded versions
10
- - ⚠️ ABSOLUTELY NO TIME ESTIMATES - AI development speed has fundamentally changed
11
- - 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete architecture
12
- - 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding
13
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
14
-
15
- ## EXECUTION PROTOCOLS:
16
-
17
- - 🎯 Show your analysis before taking any action
18
- - 🌐 Search the web to verify current versions and options
19
- - ⚠️ Present A/P/C menu after generating starter template analysis
20
- - 💾 ONLY save when user chooses C (Continue)
21
- - 📖 Update frontmatter `stepsCompleted: [1, 2, 3]` before loading next step
22
- - 🚫 FORBIDDEN to load next step until C is selected
23
-
24
- ## COLLABORATION MENUS (A/P/C):
25
-
26
- This step will generate content and present choices:
27
-
28
- - **A (Advanced Elicitation)**: Use discovery protocols to explore unconventional starter options or custom approaches
29
- - **P (Party Mode)**: Bring multiple perspectives to evaluate starter trade-offs for different use cases
30
- - **C (Continue)**: Save the content to the document and proceed to next step
31
-
32
- ## PROTOCOL INTEGRATION:
33
-
34
- - When 'A' selected: Invoke the `bmad-advanced-elicitation` skill
35
- - When 'P' selected: Invoke the `bmad-party-mode` skill
36
- - PROTOCOLS always return to display this step's A/P/C menu after the A or P have completed
37
- - User accepts/rejects protocol changes before proceeding
38
-
39
- ## CONTEXT BOUNDARIES:
40
-
41
- - Project context from step 2 is available and complete
42
- - Project context file from step-01 may contain technical preferences
43
- - No architectural decisions made yet - evaluating foundations
44
- - Focus on technical preferences discovery and starter evaluation
45
- - Consider project requirements and existing preferences when evaluating options
46
-
47
- ## YOUR TASK:
48
-
49
- Discover technical preferences and evaluate starter template options, leveraging existing technical preferences and establishing solid architectural foundations.
50
-
51
- ## STARTER EVALUATION SEQUENCE:
52
-
53
- ### 0. Check Technical Preferences & Context
54
-
55
- **Check Project Context for Existing Technical Preferences:**
56
- "Before we dive into starter templates, let me check if you have any technical preferences already documented.
57
-
58
- {{if_project_context_exists}}
59
- I found some technical rules in your project context file:
60
- {{extracted_technical_preferences_from_project_context}}
61
-
62
- **Project Context Technical Rules Found:**
63
-
64
- - Languages/Frameworks: {{languages_frameworks_from_context}}
65
- - Tools & Libraries: {{tools_from_context}}
66
- - Development Patterns: {{patterns_from_context}}
67
- - Platform Preferences: {{platforms_from_context}}
68
-
69
- {{else}}
70
- No existing technical preferences found in project context file. We'll establish your technical preferences now.
71
- {{/if_project_context}}"
72
-
73
- **Discover User Technical Preferences:**
74
- "Based on your project context, let's discuss your technical preferences:
75
-
76
- {{primary_technology_category}} Preferences:
77
-
78
- - **Languages**: Do you have preferences between TypeScript/JavaScript, Python, Go, Rust, etc.?
79
- - **Frameworks**: Any existing familiarity or preferences (React, Vue, Angular, Next.js, etc.)?
80
- - **Databases**: Any preferences or existing infrastructure (PostgreSQL, MongoDB, MySQL, etc.)?
81
-
82
- **Development Experience:**
83
-
84
- - What's your team's experience level with different technologies?
85
- - Are there any technologies you want to learn vs. what you're comfortable with?
86
-
87
- **Platform/Deployment Preferences:**
88
-
89
- - Cloud provider preferences (AWS, Vercel, Railway, etc.)?
90
- - Container preferences (Docker, Serverless, Traditional)?
91
-
92
- **Integrations:**
93
-
94
- - Any existing systems or APIs you need to integrate with?
95
- - Third-party services you plan to use (payment, authentication, analytics, etc.)?
96
-
97
- These preferences will help me recommend the most suitable starter templates and guide our architectural decisions."
98
-
99
- ### 1. Identify Primary Technology Domain
100
-
101
- Based on project context analysis and technical preferences, identify the primary technology stack:
102
-
103
- - **Web application** → Look for Next.js, Vite, Remix, SvelteKit starters
104
- - **Mobile app** → Look for React Native, Expo, Flutter starters
105
- - **API/Backend** → Look for NestJS, Express, Fastify, Supabase starters
106
- - **CLI tool** → Look for CLI framework starters (oclif, commander, etc.)
107
- - **Full-stack** → Look for T3, RedwoodJS, Blitz, Next.js starters
108
- - **Desktop** → Look for Electron, Tauri starters
109
-
110
- ### 2. UX Requirements Consideration
111
-
112
- If UX specification was loaded, consider UX requirements when selecting starter:
113
-
114
- - **Rich animations** → Framer Motion compatible starter
115
- - **Complex forms** → React Hook Form included starter
116
- - **Real-time features** → Socket.io or WebSocket ready starter
117
- - **Design system** → Storybook-enabled starter
118
- - **Offline capability** → Service worker or PWA configured starter
119
-
120
- ### 3. Research Current Starter Options
121
-
122
- Search the web to find current, maintained starter templates:
123
-
124
- ```
125
- Search the web: "{{primary_technology}} starter template CLI create command latest"
126
- Search the web: "{{primary_technology}} boilerplate generator latest options"
127
- Search the web: "{{primary_technology}} production-ready starter best practices"
128
- ```
129
-
130
- ### 4. Investigate Top Starter Options
131
-
132
- For each promising starter found, investigate details:
133
-
134
- ```
135
- Search the web: "{{starter_name}} default setup technologies included latest"
136
- Search the web: "{{starter_name}} project structure file organization"
137
- Search the web: "{{starter_name}} production deployment capabilities"
138
- Search the web: "{{starter_name}} recent updates maintenance status"
139
- ```
140
-
141
- ### 5. Analyze What Each Starter Provides
142
-
143
- For each viable starter option, document:
144
-
145
- **Technology Decisions Made:**
146
-
147
- - Language/TypeScript configuration
148
- - Styling solution (CSS, Tailwind, Styled Components, etc.)
149
- - Testing framework setup
150
- - Linting/Formatting configuration
151
- - Build tooling and optimization
152
- - Project structure and organization
153
-
154
- **Architectural Patterns Established:**
155
-
156
- - Code organization patterns
157
- - Component structure conventions
158
- - API layering approach
159
- - State management setup
160
- - Routing patterns
161
- - Environment configuration
162
-
163
- **Development Experience Features:**
164
-
165
- - Hot reloading and development server
166
- - TypeScript configuration
167
- - Debugging setup
168
- - Testing infrastructure
169
- - Documentation generation
170
-
171
- ### 6. Present Starter Options
172
-
173
- Based on user skill level and project needs:
174
-
175
- **For Expert Users:**
176
- "Found {{starter_name}} which provides:
177
- {{quick_decision_list_of_key_decisions}}
178
-
179
- This would establish our base architecture with these technical decisions already made. Use it?"
180
-
181
- **For Intermediate Users:**
182
- "I found {{starter_name}}, which is a well-maintained starter for {{project_type}} projects.
183
-
184
- It makes these architectural decisions for us:
185
- {{decision_list_with_explanations}}
186
-
187
- This gives us a solid foundation following current best practices. Should we use it?"
188
-
189
- **For Beginner Users:**
190
- "I found {{starter_name}}, which is like a pre-built foundation for your project.
191
-
192
- Think of it like buying a prefab house frame instead of cutting each board yourself.
193
-
194
- It makes these decisions for us:
195
- {{friendly_explanation_of_decisions}}
196
-
197
- This is a great starting point that follows best practices and saves us from making dozens of small technical choices. Should we use it?"
198
-
199
- ### 7. Get Current CLI Commands
200
-
201
- If user shows interest in a starter, get the exact current commands:
202
-
203
- ```
204
- Search the web: "{{starter_name}} CLI command options flags latest"
205
- Search the web: "{{starter_name}} create new project command examples"
206
- ```
207
-
208
- ### 8. Generate Starter Template Content
209
-
210
- Prepare the content to append to the document:
211
-
212
- #### Content Structure:
213
-
214
- ````markdown
215
- ## Starter Template Evaluation
216
-
217
- ### Primary Technology Domain
218
-
219
- {{identified_domain}} based on project requirements analysis
220
-
221
- ### Starter Options Considered
222
-
223
- {{analysis_of_evaluated_starters}}
224
-
225
- ### Selected Starter: {{starter_name}}
226
-
227
- **Rationale for Selection:**
228
- {{why_this_starter_was_chosen}}
229
-
230
- **Initialization Command:**
231
-
232
- ```bash
233
- {{full_starter_command_with_options}}
234
- ```
235
-
236
- **Architectural Decisions Provided by Starter:**
237
-
238
- **Language & Runtime:**
239
- {{language_typescript_setup}}
240
-
241
- **Styling Solution:**
242
- {{styling_solution_configuration}}
243
-
244
- **Build Tooling:**
245
- {{build_tools_and_optimization}}
246
-
247
- **Testing Framework:**
248
- {{testing_setup_and_configuration}}
249
-
250
- **Code Organization:**
251
- {{project_structure_and_patterns}}
252
-
253
- **Development Experience:**
254
- {{development_tools_and_workflow}}
255
-
256
- **Note:** Project initialization using this command should be the first implementation story.
257
-
258
- ````
259
-
260
- ### 9. Present Content and Menu
261
-
262
- Show the generated content and present choices:
263
-
264
- "I've analyzed starter template options for {{project_type}} projects.
265
-
266
- **Here's what I'll add to the document:**
267
-
268
- [Show the complete markdown content from step 8]
269
-
270
- **What would you like to do?**
271
- [A] Advanced Elicitation - Explore custom approaches or unconventional starters
272
- [P] Party Mode - Evaluate trade-offs from different perspectives
273
- [C] Continue - Save this decision and move to architectural decisions"
274
-
275
- ### 10. Handle Menu Selection
276
-
277
- #### If 'A' (Advanced Elicitation):
278
-
279
- - Invoke the `bmad-advanced-elicitation` skill with current starter analysis
280
- - Process enhanced insights about starter options or custom approaches
281
- - Ask user: "Accept these changes to the starter template evaluation? (y/n)"
282
- - If yes: Update content, then return to A/P/C menu
283
- - If no: Keep original content, then return to A/P/C menu
284
-
285
- #### If 'P' (Party Mode):
286
-
287
- - Invoke the `bmad-party-mode` skill with starter evaluation context
288
- - Process collaborative insights about starter trade-offs
289
- - Ask user: "Accept these changes to the starter template evaluation? (y/n)"
290
- - If yes: Update content, then return to A/P/C menu
291
- - If no: Keep original content, then return to A/P/C menu
292
-
293
- #### If 'C' (Continue):
294
-
295
- - Append the final content to `{planning_artifacts}/architecture.md`
296
- - Update frontmatter: `stepsCompleted: [1, 2, 3]`
297
- - Load `./step-04-decisions.md`
298
-
299
- ## APPEND TO DOCUMENT:
300
-
301
- When user selects 'C', append the content directly to the document using the structure from step 8.
302
-
303
- ## SUCCESS METRICS:
304
-
305
- ✅ Primary technology domain correctly identified from project context
306
- ✅ Current, maintained starter templates researched and evaluated
307
- ✅ All versions verified using web search, not hardcoded
308
- ✅ Architectural implications of starter choice clearly documented
309
- ✅ User provided with clear rationale for starter selection
310
- ✅ A/P/C menu presented and handled correctly
311
- ✅ Content properly appended to document when C selected
312
-
313
- ## FAILURE MODES:
314
-
315
- ❌ Not verifying current versions with web search
316
- ❌ Ignoring UX requirements when evaluating starters
317
- ❌ Not documenting what architectural decisions the starter makes
318
- ❌ Failing to consider maintenance status of starter templates
319
- ❌ Not providing clear rationale for starter selection
320
- ❌ Not presenting A/P/C menu after content generation
321
- ❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions
322
- ❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file
323
- ❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols
324
-
325
- ## NEXT STEP:
326
-
327
- After user selects 'C' and content is saved to document, load `./step-04-decisions.md` to begin making specific architectural decisions.
328
-
329
- Remember: Do NOT proceed to step-04 until user explicitly selects 'C' from the A/P/C menu and content is saved!
1
+ # Step 3: Starter Template Evaluation
2
+
3
+ ## MANDATORY EXECUTION RULES (READ FIRST):
4
+
5
+ - 🛑 NEVER generate content without user input
6
+ - ✅ ALWAYS treat this as collaborative discovery between architectural peers
7
+ - 📋 YOU ARE A FACILITATOR, not a content generator
8
+ - 💬 FOCUS on evaluating starter template options with current versions
9
+ - 🌐 ALWAYS search the web to verify current versions - NEVER trust hardcoded versions
10
+ - ⚠️ ABSOLUTELY NO TIME ESTIMATES - AI development speed has fundamentally changed
11
+ - 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete architecture
12
+ - 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding
13
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
14
+
15
+ ## EXECUTION PROTOCOLS:
16
+
17
+ - 🎯 Show your analysis before taking any action
18
+ - 🌐 Search the web to verify current versions and options
19
+ - ⚠️ Present A/P/C menu after generating starter template analysis
20
+ - 💾 ONLY save when user chooses C (Continue)
21
+ - 📖 Update frontmatter `stepsCompleted: [1, 2, 3]` before loading next step
22
+ - 🚫 FORBIDDEN to load next step until C is selected
23
+
24
+ ## COLLABORATION MENUS (A/P/C):
25
+
26
+ This step will generate content and present choices:
27
+
28
+ - **A (Advanced Elicitation)**: Use discovery protocols to explore unconventional starter options or custom approaches
29
+ - **P (Party Mode)**: Bring multiple perspectives to evaluate starter trade-offs for different use cases
30
+ - **C (Continue)**: Save the content to the document and proceed to next step
31
+
32
+ ## PROTOCOL INTEGRATION:
33
+
34
+ - When 'A' selected: Invoke the `bmad-advanced-elicitation` skill
35
+ - When 'P' selected: Invoke the `bmad-party-mode` skill
36
+ - PROTOCOLS always return to display this step's A/P/C menu after the A or P have completed
37
+ - User accepts/rejects protocol changes before proceeding
38
+
39
+ ## CONTEXT BOUNDARIES:
40
+
41
+ - Project context from step 2 is available and complete
42
+ - Project context file from step-01 may contain technical preferences
43
+ - No architectural decisions made yet - evaluating foundations
44
+ - Focus on technical preferences discovery and starter evaluation
45
+ - Consider project requirements and existing preferences when evaluating options
46
+
47
+ ## YOUR TASK:
48
+
49
+ Discover technical preferences and evaluate starter template options, leveraging existing technical preferences and establishing solid architectural foundations.
50
+
51
+ ## STARTER EVALUATION SEQUENCE:
52
+
53
+ ### 0. Check Technical Preferences & Context
54
+
55
+ **Check Project Context for Existing Technical Preferences:**
56
+ "Before we dive into starter templates, let me check if you have any technical preferences already documented.
57
+
58
+ {{if_project_context_exists}}
59
+ I found some technical rules in your project context file:
60
+ {{extracted_technical_preferences_from_project_context}}
61
+
62
+ **Project Context Technical Rules Found:**
63
+
64
+ - Languages/Frameworks: {{languages_frameworks_from_context}}
65
+ - Tools & Libraries: {{tools_from_context}}
66
+ - Development Patterns: {{patterns_from_context}}
67
+ - Platform Preferences: {{platforms_from_context}}
68
+
69
+ {{else}}
70
+ No existing technical preferences found in project context file. We'll establish your technical preferences now.
71
+ {{/if_project_context}}"
72
+
73
+ **Discover User Technical Preferences:**
74
+ "Based on your project context, let's discuss your technical preferences:
75
+
76
+ {{primary_technology_category}} Preferences:
77
+
78
+ - **Languages**: Do you have preferences between TypeScript/JavaScript, Python, Go, Rust, etc.?
79
+ - **Frameworks**: Any existing familiarity or preferences (React, Vue, Angular, Next.js, etc.)?
80
+ - **Databases**: Any preferences or existing infrastructure (PostgreSQL, MongoDB, MySQL, etc.)?
81
+
82
+ **Development Experience:**
83
+
84
+ - What's your team's experience level with different technologies?
85
+ - Are there any technologies you want to learn vs. what you're comfortable with?
86
+
87
+ **Platform/Deployment Preferences:**
88
+
89
+ - Cloud provider preferences (AWS, Vercel, Railway, etc.)?
90
+ - Container preferences (Docker, Serverless, Traditional)?
91
+
92
+ **Integrations:**
93
+
94
+ - Any existing systems or APIs you need to integrate with?
95
+ - Third-party services you plan to use (payment, authentication, analytics, etc.)?
96
+
97
+ These preferences will help me recommend the most suitable starter templates and guide our architectural decisions."
98
+
99
+ ### 1. Identify Primary Technology Domain
100
+
101
+ Based on project context analysis and technical preferences, identify the primary technology stack:
102
+
103
+ - **Web application** → Look for Next.js, Vite, Remix, SvelteKit starters
104
+ - **Mobile app** → Look for React Native, Expo, Flutter starters
105
+ - **API/Backend** → Look for NestJS, Express, Fastify, Supabase starters
106
+ - **CLI tool** → Look for CLI framework starters (oclif, commander, etc.)
107
+ - **Full-stack** → Look for T3, RedwoodJS, Blitz, Next.js starters
108
+ - **Desktop** → Look for Electron, Tauri starters
109
+
110
+ ### 2. UX Requirements Consideration
111
+
112
+ If UX specification was loaded, consider UX requirements when selecting starter:
113
+
114
+ - **Rich animations** → Framer Motion compatible starter
115
+ - **Complex forms** → React Hook Form included starter
116
+ - **Real-time features** → Socket.io or WebSocket ready starter
117
+ - **Design system** → Storybook-enabled starter
118
+ - **Offline capability** → Service worker or PWA configured starter
119
+
120
+ ### 3. Research Current Starter Options
121
+
122
+ Search the web to find current, maintained starter templates:
123
+
124
+ ```
125
+ Search the web: "{{primary_technology}} starter template CLI create command latest"
126
+ Search the web: "{{primary_technology}} boilerplate generator latest options"
127
+ Search the web: "{{primary_technology}} production-ready starter best practices"
128
+ ```
129
+
130
+ ### 4. Investigate Top Starter Options
131
+
132
+ For each promising starter found, investigate details:
133
+
134
+ ```
135
+ Search the web: "{{starter_name}} default setup technologies included latest"
136
+ Search the web: "{{starter_name}} project structure file organization"
137
+ Search the web: "{{starter_name}} production deployment capabilities"
138
+ Search the web: "{{starter_name}} recent updates maintenance status"
139
+ ```
140
+
141
+ ### 5. Analyze What Each Starter Provides
142
+
143
+ For each viable starter option, document:
144
+
145
+ **Technology Decisions Made:**
146
+
147
+ - Language/TypeScript configuration
148
+ - Styling solution (CSS, Tailwind, Styled Components, etc.)
149
+ - Testing framework setup
150
+ - Linting/Formatting configuration
151
+ - Build tooling and optimization
152
+ - Project structure and organization
153
+
154
+ **Architectural Patterns Established:**
155
+
156
+ - Code organization patterns
157
+ - Component structure conventions
158
+ - API layering approach
159
+ - State management setup
160
+ - Routing patterns
161
+ - Environment configuration
162
+
163
+ **Development Experience Features:**
164
+
165
+ - Hot reloading and development server
166
+ - TypeScript configuration
167
+ - Debugging setup
168
+ - Testing infrastructure
169
+ - Documentation generation
170
+
171
+ ### 6. Present Starter Options
172
+
173
+ Based on user skill level and project needs:
174
+
175
+ **For Expert Users:**
176
+ "Found {{starter_name}} which provides:
177
+ {{quick_decision_list_of_key_decisions}}
178
+
179
+ This would establish our base architecture with these technical decisions already made. Use it?"
180
+
181
+ **For Intermediate Users:**
182
+ "I found {{starter_name}}, which is a well-maintained starter for {{project_type}} projects.
183
+
184
+ It makes these architectural decisions for us:
185
+ {{decision_list_with_explanations}}
186
+
187
+ This gives us a solid foundation following current best practices. Should we use it?"
188
+
189
+ **For Beginner Users:**
190
+ "I found {{starter_name}}, which is like a pre-built foundation for your project.
191
+
192
+ Think of it like buying a prefab house frame instead of cutting each board yourself.
193
+
194
+ It makes these decisions for us:
195
+ {{friendly_explanation_of_decisions}}
196
+
197
+ This is a great starting point that follows best practices and saves us from making dozens of small technical choices. Should we use it?"
198
+
199
+ ### 7. Get Current CLI Commands
200
+
201
+ If user shows interest in a starter, get the exact current commands:
202
+
203
+ ```
204
+ Search the web: "{{starter_name}} CLI command options flags latest"
205
+ Search the web: "{{starter_name}} create new project command examples"
206
+ ```
207
+
208
+ ### 8. Generate Starter Template Content
209
+
210
+ Prepare the content to append to the document:
211
+
212
+ #### Content Structure:
213
+
214
+ ````markdown
215
+ ## Starter Template Evaluation
216
+
217
+ ### Primary Technology Domain
218
+
219
+ {{identified_domain}} based on project requirements analysis
220
+
221
+ ### Starter Options Considered
222
+
223
+ {{analysis_of_evaluated_starters}}
224
+
225
+ ### Selected Starter: {{starter_name}}
226
+
227
+ **Rationale for Selection:**
228
+ {{why_this_starter_was_chosen}}
229
+
230
+ **Initialization Command:**
231
+
232
+ ```bash
233
+ {{full_starter_command_with_options}}
234
+ ```
235
+
236
+ **Architectural Decisions Provided by Starter:**
237
+
238
+ **Language & Runtime:**
239
+ {{language_typescript_setup}}
240
+
241
+ **Styling Solution:**
242
+ {{styling_solution_configuration}}
243
+
244
+ **Build Tooling:**
245
+ {{build_tools_and_optimization}}
246
+
247
+ **Testing Framework:**
248
+ {{testing_setup_and_configuration}}
249
+
250
+ **Code Organization:**
251
+ {{project_structure_and_patterns}}
252
+
253
+ **Development Experience:**
254
+ {{development_tools_and_workflow}}
255
+
256
+ **Note:** Project initialization using this command should be the first implementation story.
257
+
258
+ ````
259
+
260
+ ### 9. Present Content and Menu
261
+
262
+ Show the generated content and present choices:
263
+
264
+ "I've analyzed starter template options for {{project_type}} projects.
265
+
266
+ **Here's what I'll add to the document:**
267
+
268
+ [Show the complete markdown content from step 8]
269
+
270
+ **What would you like to do?**
271
+ [A] Advanced Elicitation - Explore custom approaches or unconventional starters
272
+ [P] Party Mode - Evaluate trade-offs from different perspectives
273
+ [C] Continue - Save this decision and move to architectural decisions"
274
+
275
+ ### 10. Handle Menu Selection
276
+
277
+ #### If 'A' (Advanced Elicitation):
278
+
279
+ - Invoke the `bmad-advanced-elicitation` skill with current starter analysis
280
+ - Process enhanced insights about starter options or custom approaches
281
+ - Ask user: "Accept these changes to the starter template evaluation? (y/n)"
282
+ - If yes: Update content, then return to A/P/C menu
283
+ - If no: Keep original content, then return to A/P/C menu
284
+
285
+ #### If 'P' (Party Mode):
286
+
287
+ - Invoke the `bmad-party-mode` skill with starter evaluation context
288
+ - Process collaborative insights about starter trade-offs
289
+ - Ask user: "Accept these changes to the starter template evaluation? (y/n)"
290
+ - If yes: Update content, then return to A/P/C menu
291
+ - If no: Keep original content, then return to A/P/C menu
292
+
293
+ #### If 'C' (Continue):
294
+
295
+ - Append the final content to `{planning_artifacts}/architecture.md`
296
+ - Update frontmatter: `stepsCompleted: [1, 2, 3]`
297
+ - Load `./step-04-decisions.md`
298
+
299
+ ## APPEND TO DOCUMENT:
300
+
301
+ When user selects 'C', append the content directly to the document using the structure from step 8.
302
+
303
+ ## SUCCESS METRICS:
304
+
305
+ ✅ Primary technology domain correctly identified from project context
306
+ ✅ Current, maintained starter templates researched and evaluated
307
+ ✅ All versions verified using web search, not hardcoded
308
+ ✅ Architectural implications of starter choice clearly documented
309
+ ✅ User provided with clear rationale for starter selection
310
+ ✅ A/P/C menu presented and handled correctly
311
+ ✅ Content properly appended to document when C selected
312
+
313
+ ## FAILURE MODES:
314
+
315
+ ❌ Not verifying current versions with web search
316
+ ❌ Ignoring UX requirements when evaluating starters
317
+ ❌ Not documenting what architectural decisions the starter makes
318
+ ❌ Failing to consider maintenance status of starter templates
319
+ ❌ Not providing clear rationale for starter selection
320
+ ❌ Not presenting A/P/C menu after content generation
321
+ ❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions
322
+ ❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file
323
+ ❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols
324
+
325
+ ## NEXT STEP:
326
+
327
+ After user selects 'C' and content is saved to document, load `./step-04-decisions.md` to begin making specific architectural decisions.
328
+
329
+ Remember: Do NOT proceed to step-04 until user explicitly selects 'C' from the A/P/C menu and content is saved!