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,318 +1,318 @@
1
- # Step 4: Core Architectural Decisions
2
-
3
- ## MANDATORY EXECUTION RULES (READ FIRST):
4
-
5
- - 🛑 NEVER generate content without user input
6
-
7
- - 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions
8
- - 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding
9
- - ✅ ALWAYS treat this as collaborative discovery between architectural peers
10
- - 📋 YOU ARE A FACILITATOR, not a content generator
11
- - 💬 FOCUS on making critical architectural decisions collaboratively
12
- - 🌐 ALWAYS search the web to verify current technology versions
13
- - ⚠️ ABSOLUTELY NO TIME ESTIMATES - AI development speed has fundamentally changed
14
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
15
-
16
- ## EXECUTION PROTOCOLS:
17
-
18
- - 🎯 Show your analysis before taking any action
19
- - 🌐 Search the web to verify technology versions and options
20
- - ⚠️ Present A/P/C menu after each major decision category
21
- - 💾 ONLY save when user chooses C (Continue)
22
- - 📖 Update frontmatter `stepsCompleted: [1, 2, 3, 4]` before loading next step
23
- - 🚫 FORBIDDEN to load next step until C is selected
24
-
25
- ## COLLABORATION MENUS (A/P/C):
26
-
27
- This step will generate content and present choices for each decision category:
28
-
29
- - **A (Advanced Elicitation)**: Use discovery protocols to explore innovative approaches to specific decisions
30
- - **P (Party Mode)**: Bring multiple perspectives to evaluate decision trade-offs
31
- - **C (Continue)**: Save the current decisions and proceed to next decision category
32
-
33
- ## PROTOCOL INTEGRATION:
34
-
35
- - When 'A' selected: Invoke the `bmad-advanced-elicitation` skill
36
- - When 'P' selected: Invoke the `bmad-party-mode` skill
37
- - PROTOCOLS always return to display this step's A/P/C menu after the A or P have completed
38
- - User accepts/rejects protocol changes before proceeding
39
-
40
- ## CONTEXT BOUNDARIES:
41
-
42
- - Project context from step 2 is available
43
- - Starter template choice from step 3 is available
44
- - Project context file may contain technical preferences and rules
45
- - Technical preferences discovered in step 3 are available
46
- - Focus on decisions not already made by starter template or existing preferences
47
- - Collaborative decision making, not recommendations
48
-
49
- ## YOUR TASK:
50
-
51
- Facilitate collaborative architectural decision making, leveraging existing technical preferences and starter template decisions, focusing on remaining choices critical to the project's success.
52
-
53
- ## DECISION MAKING SEQUENCE:
54
-
55
- ### 1. Load Decision Framework & Check Existing Preferences
56
-
57
- **Review Technical Preferences from Step 3:**
58
- "Based on our technical preferences discussion in step 3, let's build on those foundations:
59
-
60
- **Your Technical Preferences:**
61
- {{user_technical_preferences_from_step_3}}
62
-
63
- **Starter Template Decisions:**
64
- {{starter_template_decisions}}
65
-
66
- **Project Context Technical Rules:**
67
- {{project_context_technical_rules}}"
68
-
69
- **Identify Remaining Decisions:**
70
- Based on technical preferences, starter template choice, and project context, identify remaining critical decisions:
71
-
72
- **Already Decided (Don't re-decide these):**
73
-
74
- - {{starter_template_decisions}}
75
- - {{user_technology_preferences}}
76
- - {{project_context_technical_rules}}
77
-
78
- **Critical Decisions:** Must be decided before implementation can proceed
79
- **Important Decisions:** Shape the architecture significantly
80
- **Nice-to-Have:** Can be deferred if needed
81
-
82
- ### 2. Decision Categories by Priority
83
-
84
- #### Category 1: Data Architecture
85
-
86
- - Database choice (if not determined by starter)
87
- - Data modeling approach
88
- - Data validation strategy
89
- - Migration approach
90
- - Caching strategy
91
-
92
- #### Category 2: Authentication & Security
93
-
94
- - Authentication method
95
- - Authorization patterns
96
- - Security middleware
97
- - Data encryption approach
98
- - API security strategy
99
-
100
- #### Category 3: API & Communication
101
-
102
- - API design patterns (REST, GraphQL, etc.)
103
- - API documentation approach
104
- - Error handling standards
105
- - Rate limiting strategy
106
- - Communication between services
107
-
108
- #### Category 4: Frontend Architecture (if applicable)
109
-
110
- - State management approach
111
- - Component architecture
112
- - Routing strategy
113
- - Performance optimization
114
- - Bundle optimization
115
-
116
- #### Category 5: Infrastructure & Deployment
117
-
118
- - Hosting strategy
119
- - CI/CD pipeline approach
120
- - Environment configuration
121
- - Monitoring and logging
122
- - Scaling strategy
123
-
124
- ### 3. Facilitate Each Decision Category
125
-
126
- For each category, facilitate collaborative decision making:
127
-
128
- **Present the Decision:**
129
- Based on user skill level and project context:
130
-
131
- **Expert Mode:**
132
- "{{Decision_Category}}: {{Specific_Decision}}
133
-
134
- Options: {{concise_option_list_with_tradeoffs}}
135
-
136
- What's your preference for this decision?"
137
-
138
- **Intermediate Mode:**
139
- "Next decision: {{Human_Friendly_Category}}
140
-
141
- We need to choose {{Specific_Decision}}.
142
-
143
- Common options:
144
- {{option_list_with_brief_explanations}}
145
-
146
- For your project, I'd lean toward {{recommendation}} because {{reason}}. What are your thoughts?"
147
-
148
- **Beginner Mode:**
149
- "Let's talk about {{Human_Friendly_Category}}.
150
-
151
- {{Educational_Context_About_Why_This_Matters}}
152
-
153
- Think of it like {{real_world_analogy}}.
154
-
155
- Your main options:
156
- {{friendly_options_with_pros_cons}}
157
-
158
- My suggestion: {{recommendation}}
159
- This is good for you because {{beginner_friendly_reason}}.
160
-
161
- What feels right to you?"
162
-
163
- **Verify Technology Versions:**
164
- If decision involves specific technology:
165
-
166
- ```
167
- Search the web: "{{technology}} latest stable version"
168
- Search the web: "{{technology}} current LTS version"
169
- Search the web: "{{technology}} production readiness"
170
- ```
171
-
172
- **Get User Input:**
173
- "What's your preference? (or 'explain more' for details)"
174
-
175
- **Handle User Response:**
176
-
177
- - If user wants more info: Provide deeper explanation
178
- - If user has preference: Discuss implications and record decision
179
- - If user wants alternatives: Explore other options
180
-
181
- **Record the Decision:**
182
-
183
- - Category: {{category}}
184
- - Decision: {{user_choice}}
185
- - Version: {{verified_version_if_applicable}}
186
- - Rationale: {{user_reasoning_or_default}}
187
- - Affects: {{components_or_epics}}
188
- - Provided by Starter: {{yes_if_from_starter}}
189
-
190
- ### 4. Check for Cascading Implications
191
-
192
- After each major decision, identify related decisions:
193
-
194
- "This choice means we'll also need to decide:
195
-
196
- - {{related_decision_1}}
197
- - {{related_decision_2}}"
198
-
199
- ### 5. Generate Decisions Content
200
-
201
- After facilitating all decision categories, prepare the content to append:
202
-
203
- #### Content Structure:
204
-
205
- ```markdown
206
- ## Core Architectural Decisions
207
-
208
- ### Decision Priority Analysis
209
-
210
- **Critical Decisions (Block Implementation):**
211
- {{critical_decisions_made}}
212
-
213
- **Important Decisions (Shape Architecture):**
214
- {{important_decisions_made}}
215
-
216
- **Deferred Decisions (Post-MVP):**
217
- {{decisions_deferred_with_rationale}}
218
-
219
- ### Data Architecture
220
-
221
- {{data_related_decisions_with_versions_and_rationale}}
222
-
223
- ### Authentication & Security
224
-
225
- {{security_related_decisions_with_versions_and_rationale}}
226
-
227
- ### API & Communication Patterns
228
-
229
- {{api_related_decisions_with_versions_and_rationale}}
230
-
231
- ### Frontend Architecture
232
-
233
- {{frontend_related_decisions_with_versions_and_rationale}}
234
-
235
- ### Infrastructure & Deployment
236
-
237
- {{infrastructure_related_decisions_with_versions_and_rationale}}
238
-
239
- ### Decision Impact Analysis
240
-
241
- **Implementation Sequence:**
242
- {{ordered_list_of_decisions_for_implementation}}
243
-
244
- **Cross-Component Dependencies:**
245
- {{how_decisions_affect_each_other}}
246
- ```
247
-
248
- ### 6. Present Content and Menu
249
-
250
- Show the generated decisions content and present choices:
251
-
252
- "I've documented all the core architectural decisions we've made together.
253
-
254
- **Here's what I'll add to the document:**
255
-
256
- [Show the complete markdown content from step 5]
257
-
258
- **What would you like to do?**
259
- [A] Advanced Elicitation - Explore innovative approaches to any specific decisions
260
- [P] Party Mode - Review decisions from multiple perspectives
261
- [C] Continue - Save these decisions and move to implementation patterns"
262
-
263
- ### 7. Handle Menu Selection
264
-
265
- #### If 'A' (Advanced Elicitation):
266
-
267
- - Invoke the `bmad-advanced-elicitation` skill with specific decision categories
268
- - Process enhanced insights about particular decisions
269
- - Ask user: "Accept these enhancements to the architectural decisions? (y/n)"
270
- - If yes: Update content, then return to A/P/C menu
271
- - If no: Keep original content, then return to A/P/C menu
272
-
273
- #### If 'P' (Party Mode):
274
-
275
- - Invoke the `bmad-party-mode` skill with architectural decisions context
276
- - Process collaborative insights about decision trade-offs
277
- - Ask user: "Accept these changes to the architectural decisions? (y/n)"
278
- - If yes: Update content, then return to A/P/C menu
279
- - If no: Keep original content, then return to A/P/C menu
280
-
281
- #### If 'C' (Continue):
282
-
283
- - Append the final content to `{planning_artifacts}/architecture.md`
284
- - Update frontmatter: `stepsCompleted: [1, 2, 3, 4]`
285
- - Load `./step-05-patterns.md`
286
-
287
- ## APPEND TO DOCUMENT:
288
-
289
- When user selects 'C', append the content directly to the document using the structure from step 5.
290
-
291
- ## SUCCESS METRICS:
292
-
293
- ✅ All critical architectural decisions made collaboratively
294
- ✅ Technology versions verified using web search
295
- ✅ Decision rationale clearly documented
296
- ✅ Cascading implications identified and addressed
297
- ✅ User provided appropriate level of explanation for skill level
298
- ✅ A/P/C menu presented and handled correctly for each category
299
- ✅ Content properly appended to document when C selected
300
-
301
- ## FAILURE MODES:
302
-
303
- ❌ Making recommendations instead of facilitating decisions
304
- ❌ Not verifying technology versions with web search
305
- ❌ Missing cascading implications between decisions
306
- ❌ Not adapting explanations to user skill level
307
- ❌ Forgetting to document decisions made by starter template
308
- ❌ Not presenting A/P/C menu after content generation
309
-
310
- ❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions
311
- ❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file
312
- ❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols
313
-
314
- ## NEXT STEP:
315
-
316
- After user selects 'C' and content is saved to document, load `./step-05-patterns.md` to define implementation patterns that ensure consistency across AI agents.
317
-
318
- Remember: Do NOT proceed to step-05 until user explicitly selects 'C' from the A/P/C menu and content is saved!
1
+ # Step 4: Core Architectural Decisions
2
+
3
+ ## MANDATORY EXECUTION RULES (READ FIRST):
4
+
5
+ - 🛑 NEVER generate content without user input
6
+
7
+ - 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions
8
+ - 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding
9
+ - ✅ ALWAYS treat this as collaborative discovery between architectural peers
10
+ - 📋 YOU ARE A FACILITATOR, not a content generator
11
+ - 💬 FOCUS on making critical architectural decisions collaboratively
12
+ - 🌐 ALWAYS search the web to verify current technology versions
13
+ - ⚠️ ABSOLUTELY NO TIME ESTIMATES - AI development speed has fundamentally changed
14
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
15
+
16
+ ## EXECUTION PROTOCOLS:
17
+
18
+ - 🎯 Show your analysis before taking any action
19
+ - 🌐 Search the web to verify technology versions and options
20
+ - ⚠️ Present A/P/C menu after each major decision category
21
+ - 💾 ONLY save when user chooses C (Continue)
22
+ - 📖 Update frontmatter `stepsCompleted: [1, 2, 3, 4]` before loading next step
23
+ - 🚫 FORBIDDEN to load next step until C is selected
24
+
25
+ ## COLLABORATION MENUS (A/P/C):
26
+
27
+ This step will generate content and present choices for each decision category:
28
+
29
+ - **A (Advanced Elicitation)**: Use discovery protocols to explore innovative approaches to specific decisions
30
+ - **P (Party Mode)**: Bring multiple perspectives to evaluate decision trade-offs
31
+ - **C (Continue)**: Save the current decisions and proceed to next decision category
32
+
33
+ ## PROTOCOL INTEGRATION:
34
+
35
+ - When 'A' selected: Invoke the `bmad-advanced-elicitation` skill
36
+ - When 'P' selected: Invoke the `bmad-party-mode` skill
37
+ - PROTOCOLS always return to display this step's A/P/C menu after the A or P have completed
38
+ - User accepts/rejects protocol changes before proceeding
39
+
40
+ ## CONTEXT BOUNDARIES:
41
+
42
+ - Project context from step 2 is available
43
+ - Starter template choice from step 3 is available
44
+ - Project context file may contain technical preferences and rules
45
+ - Technical preferences discovered in step 3 are available
46
+ - Focus on decisions not already made by starter template or existing preferences
47
+ - Collaborative decision making, not recommendations
48
+
49
+ ## YOUR TASK:
50
+
51
+ Facilitate collaborative architectural decision making, leveraging existing technical preferences and starter template decisions, focusing on remaining choices critical to the project's success.
52
+
53
+ ## DECISION MAKING SEQUENCE:
54
+
55
+ ### 1. Load Decision Framework & Check Existing Preferences
56
+
57
+ **Review Technical Preferences from Step 3:**
58
+ "Based on our technical preferences discussion in step 3, let's build on those foundations:
59
+
60
+ **Your Technical Preferences:**
61
+ {{user_technical_preferences_from_step_3}}
62
+
63
+ **Starter Template Decisions:**
64
+ {{starter_template_decisions}}
65
+
66
+ **Project Context Technical Rules:**
67
+ {{project_context_technical_rules}}"
68
+
69
+ **Identify Remaining Decisions:**
70
+ Based on technical preferences, starter template choice, and project context, identify remaining critical decisions:
71
+
72
+ **Already Decided (Don't re-decide these):**
73
+
74
+ - {{starter_template_decisions}}
75
+ - {{user_technology_preferences}}
76
+ - {{project_context_technical_rules}}
77
+
78
+ **Critical Decisions:** Must be decided before implementation can proceed
79
+ **Important Decisions:** Shape the architecture significantly
80
+ **Nice-to-Have:** Can be deferred if needed
81
+
82
+ ### 2. Decision Categories by Priority
83
+
84
+ #### Category 1: Data Architecture
85
+
86
+ - Database choice (if not determined by starter)
87
+ - Data modeling approach
88
+ - Data validation strategy
89
+ - Migration approach
90
+ - Caching strategy
91
+
92
+ #### Category 2: Authentication & Security
93
+
94
+ - Authentication method
95
+ - Authorization patterns
96
+ - Security middleware
97
+ - Data encryption approach
98
+ - API security strategy
99
+
100
+ #### Category 3: API & Communication
101
+
102
+ - API design patterns (REST, GraphQL, etc.)
103
+ - API documentation approach
104
+ - Error handling standards
105
+ - Rate limiting strategy
106
+ - Communication between services
107
+
108
+ #### Category 4: Frontend Architecture (if applicable)
109
+
110
+ - State management approach
111
+ - Component architecture
112
+ - Routing strategy
113
+ - Performance optimization
114
+ - Bundle optimization
115
+
116
+ #### Category 5: Infrastructure & Deployment
117
+
118
+ - Hosting strategy
119
+ - CI/CD pipeline approach
120
+ - Environment configuration
121
+ - Monitoring and logging
122
+ - Scaling strategy
123
+
124
+ ### 3. Facilitate Each Decision Category
125
+
126
+ For each category, facilitate collaborative decision making:
127
+
128
+ **Present the Decision:**
129
+ Based on user skill level and project context:
130
+
131
+ **Expert Mode:**
132
+ "{{Decision_Category}}: {{Specific_Decision}}
133
+
134
+ Options: {{concise_option_list_with_tradeoffs}}
135
+
136
+ What's your preference for this decision?"
137
+
138
+ **Intermediate Mode:**
139
+ "Next decision: {{Human_Friendly_Category}}
140
+
141
+ We need to choose {{Specific_Decision}}.
142
+
143
+ Common options:
144
+ {{option_list_with_brief_explanations}}
145
+
146
+ For your project, I'd lean toward {{recommendation}} because {{reason}}. What are your thoughts?"
147
+
148
+ **Beginner Mode:**
149
+ "Let's talk about {{Human_Friendly_Category}}.
150
+
151
+ {{Educational_Context_About_Why_This_Matters}}
152
+
153
+ Think of it like {{real_world_analogy}}.
154
+
155
+ Your main options:
156
+ {{friendly_options_with_pros_cons}}
157
+
158
+ My suggestion: {{recommendation}}
159
+ This is good for you because {{beginner_friendly_reason}}.
160
+
161
+ What feels right to you?"
162
+
163
+ **Verify Technology Versions:**
164
+ If decision involves specific technology:
165
+
166
+ ```
167
+ Search the web: "{{technology}} latest stable version"
168
+ Search the web: "{{technology}} current LTS version"
169
+ Search the web: "{{technology}} production readiness"
170
+ ```
171
+
172
+ **Get User Input:**
173
+ "What's your preference? (or 'explain more' for details)"
174
+
175
+ **Handle User Response:**
176
+
177
+ - If user wants more info: Provide deeper explanation
178
+ - If user has preference: Discuss implications and record decision
179
+ - If user wants alternatives: Explore other options
180
+
181
+ **Record the Decision:**
182
+
183
+ - Category: {{category}}
184
+ - Decision: {{user_choice}}
185
+ - Version: {{verified_version_if_applicable}}
186
+ - Rationale: {{user_reasoning_or_default}}
187
+ - Affects: {{components_or_epics}}
188
+ - Provided by Starter: {{yes_if_from_starter}}
189
+
190
+ ### 4. Check for Cascading Implications
191
+
192
+ After each major decision, identify related decisions:
193
+
194
+ "This choice means we'll also need to decide:
195
+
196
+ - {{related_decision_1}}
197
+ - {{related_decision_2}}"
198
+
199
+ ### 5. Generate Decisions Content
200
+
201
+ After facilitating all decision categories, prepare the content to append:
202
+
203
+ #### Content Structure:
204
+
205
+ ```markdown
206
+ ## Core Architectural Decisions
207
+
208
+ ### Decision Priority Analysis
209
+
210
+ **Critical Decisions (Block Implementation):**
211
+ {{critical_decisions_made}}
212
+
213
+ **Important Decisions (Shape Architecture):**
214
+ {{important_decisions_made}}
215
+
216
+ **Deferred Decisions (Post-MVP):**
217
+ {{decisions_deferred_with_rationale}}
218
+
219
+ ### Data Architecture
220
+
221
+ {{data_related_decisions_with_versions_and_rationale}}
222
+
223
+ ### Authentication & Security
224
+
225
+ {{security_related_decisions_with_versions_and_rationale}}
226
+
227
+ ### API & Communication Patterns
228
+
229
+ {{api_related_decisions_with_versions_and_rationale}}
230
+
231
+ ### Frontend Architecture
232
+
233
+ {{frontend_related_decisions_with_versions_and_rationale}}
234
+
235
+ ### Infrastructure & Deployment
236
+
237
+ {{infrastructure_related_decisions_with_versions_and_rationale}}
238
+
239
+ ### Decision Impact Analysis
240
+
241
+ **Implementation Sequence:**
242
+ {{ordered_list_of_decisions_for_implementation}}
243
+
244
+ **Cross-Component Dependencies:**
245
+ {{how_decisions_affect_each_other}}
246
+ ```
247
+
248
+ ### 6. Present Content and Menu
249
+
250
+ Show the generated decisions content and present choices:
251
+
252
+ "I've documented all the core architectural decisions we've made together.
253
+
254
+ **Here's what I'll add to the document:**
255
+
256
+ [Show the complete markdown content from step 5]
257
+
258
+ **What would you like to do?**
259
+ [A] Advanced Elicitation - Explore innovative approaches to any specific decisions
260
+ [P] Party Mode - Review decisions from multiple perspectives
261
+ [C] Continue - Save these decisions and move to implementation patterns"
262
+
263
+ ### 7. Handle Menu Selection
264
+
265
+ #### If 'A' (Advanced Elicitation):
266
+
267
+ - Invoke the `bmad-advanced-elicitation` skill with specific decision categories
268
+ - Process enhanced insights about particular decisions
269
+ - Ask user: "Accept these enhancements to the architectural decisions? (y/n)"
270
+ - If yes: Update content, then return to A/P/C menu
271
+ - If no: Keep original content, then return to A/P/C menu
272
+
273
+ #### If 'P' (Party Mode):
274
+
275
+ - Invoke the `bmad-party-mode` skill with architectural decisions context
276
+ - Process collaborative insights about decision trade-offs
277
+ - Ask user: "Accept these changes to the architectural decisions? (y/n)"
278
+ - If yes: Update content, then return to A/P/C menu
279
+ - If no: Keep original content, then return to A/P/C menu
280
+
281
+ #### If 'C' (Continue):
282
+
283
+ - Append the final content to `{planning_artifacts}/architecture.md`
284
+ - Update frontmatter: `stepsCompleted: [1, 2, 3, 4]`
285
+ - Load `./step-05-patterns.md`
286
+
287
+ ## APPEND TO DOCUMENT:
288
+
289
+ When user selects 'C', append the content directly to the document using the structure from step 5.
290
+
291
+ ## SUCCESS METRICS:
292
+
293
+ ✅ All critical architectural decisions made collaboratively
294
+ ✅ Technology versions verified using web search
295
+ ✅ Decision rationale clearly documented
296
+ ✅ Cascading implications identified and addressed
297
+ ✅ User provided appropriate level of explanation for skill level
298
+ ✅ A/P/C menu presented and handled correctly for each category
299
+ ✅ Content properly appended to document when C selected
300
+
301
+ ## FAILURE MODES:
302
+
303
+ ❌ Making recommendations instead of facilitating decisions
304
+ ❌ Not verifying technology versions with web search
305
+ ❌ Missing cascading implications between decisions
306
+ ❌ Not adapting explanations to user skill level
307
+ ❌ Forgetting to document decisions made by starter template
308
+ ❌ Not presenting A/P/C menu after content generation
309
+
310
+ ❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions
311
+ ❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file
312
+ ❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols
313
+
314
+ ## NEXT STEP:
315
+
316
+ After user selects 'C' and content is saved to document, load `./step-05-patterns.md` to define implementation patterns that ensure consistency across AI agents.
317
+
318
+ Remember: Do NOT proceed to step-05 until user explicitly selects 'C' from the A/P/C menu and content is saved!