bmad-method 4.37.0-beta.6 ā 5.0.0-beta.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.
- package/.github/workflows/promote-to-stable.yml +144 -0
- package/CHANGELOG.md +27 -2
- package/bmad-core/agents/analyst.md +1 -1
- package/bmad-core/agents/architect.md +2 -3
- package/bmad-core/agents/bmad-master.md +0 -1
- package/bmad-core/agents/bmad-orchestrator.md +9 -10
- package/bmad-core/agents/dev.md +9 -10
- package/bmad-core/agents/po.md +1 -1
- package/bmad-core/agents/qa.md +38 -19
- package/bmad-core/agents/sm.md +1 -1
- package/bmad-core/agents/ux-expert.md +1 -1
- package/bmad-core/checklists/architect-checklist.md +0 -5
- package/bmad-core/checklists/pm-checklist.md +0 -5
- package/bmad-core/checklists/po-master-checklist.md +0 -9
- package/bmad-core/checklists/story-dod-checklist.md +0 -7
- package/bmad-core/checklists/story-draft-checklist.md +0 -3
- package/bmad-core/data/bmad-kb.md +5 -2
- package/bmad-core/data/elicitation-methods.md +20 -0
- package/bmad-core/data/test-levels-framework.md +146 -0
- package/bmad-core/data/test-priorities-matrix.md +172 -0
- package/bmad-core/tasks/create-brownfield-story.md +11 -3
- package/bmad-core/tasks/create-deep-research-prompt.md +0 -11
- package/bmad-core/tasks/document-project.md +15 -13
- package/bmad-core/tasks/facilitate-brainstorming-session.md +1 -1
- package/bmad-core/tasks/index-docs.md +0 -6
- package/bmad-core/tasks/kb-mode-interaction.md +3 -3
- package/bmad-core/tasks/nfr-assess.md +343 -0
- package/bmad-core/tasks/qa-gate.md +159 -0
- package/bmad-core/tasks/review-story.md +243 -74
- package/bmad-core/tasks/risk-profile.md +353 -0
- package/bmad-core/tasks/shard-doc.md +0 -2
- package/bmad-core/tasks/test-design.md +174 -0
- package/bmad-core/tasks/trace-requirements.md +264 -0
- package/bmad-core/templates/qa-gate-tmpl.yaml +102 -0
- package/common/tasks/execute-checklist.md +0 -7
- package/dist/agents/analyst.txt +20 -26
- package/dist/agents/architect.txt +14 -35
- package/dist/agents/bmad-master.txt +40 -70
- package/dist/agents/bmad-orchestrator.txt +28 -5
- package/dist/agents/dev.txt +0 -14
- package/dist/agents/pm.txt +0 -25
- package/dist/agents/po.txt +0 -18
- package/dist/agents/qa.txt +2079 -135
- package/dist/agents/sm.txt +0 -10
- package/dist/agents/ux-expert.txt +0 -7
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +0 -37
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +3 -12
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +0 -7
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +44 -90
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +14 -49
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +0 -46
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +0 -15
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +0 -17
- package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +38 -142
- package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +0 -2
- package/dist/teams/team-all.txt +2181 -261
- package/dist/teams/team-fullstack.txt +43 -57
- package/dist/teams/team-ide-minimal.txt +2064 -125
- package/dist/teams/team-no-ui.txt +43 -57
- package/docs/enhanced-ide-development-workflow.md +220 -15
- package/docs/user-guide.md +271 -18
- package/docs/working-in-the-brownfield.md +265 -32
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/README.md +14 -14
- package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -4
- package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +3 -5
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -1
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -18
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +0 -5
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +0 -8
- package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +0 -7
- package/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -4
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -1
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +0 -10
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -18
- package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +0 -3
- package/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -1
- package/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -1
- package/package.json +1 -1
- package/tools/installer/bin/bmad.js +33 -32
- package/tools/installer/config/install.config.yaml +11 -1
- package/tools/installer/lib/file-manager.js +1 -1
- package/tools/installer/lib/ide-base-setup.js +1 -1
- package/tools/installer/lib/ide-setup.js +197 -83
- package/tools/installer/lib/installer.js +3 -3
- package/tools/installer/package.json +1 -1
|
@@ -355,34 +355,29 @@ Ask the user if they want to work through the checklist:
|
|
|
355
355
|
Generate a comprehensive validation report that includes:
|
|
356
356
|
|
|
357
357
|
1. Executive Summary
|
|
358
|
-
|
|
359
358
|
- Overall game architecture readiness (High/Medium/Low)
|
|
360
359
|
- Critical risks for game development
|
|
361
360
|
- Key strengths of the game architecture
|
|
362
361
|
- Unity-specific assessment
|
|
363
362
|
|
|
364
363
|
2. Game Systems Analysis
|
|
365
|
-
|
|
366
364
|
- Pass rate for each major system section
|
|
367
365
|
- Most concerning gaps in game architecture
|
|
368
366
|
- Systems requiring immediate attention
|
|
369
367
|
- Unity integration completeness
|
|
370
368
|
|
|
371
369
|
3. Performance Risk Assessment
|
|
372
|
-
|
|
373
370
|
- Top 5 performance risks for the game
|
|
374
371
|
- Mobile platform specific concerns
|
|
375
372
|
- Frame rate stability risks
|
|
376
373
|
- Memory usage concerns
|
|
377
374
|
|
|
378
375
|
4. Implementation Recommendations
|
|
379
|
-
|
|
380
376
|
- Must-fix items before development
|
|
381
377
|
- Unity-specific improvements needed
|
|
382
378
|
- Game development workflow enhancements
|
|
383
379
|
|
|
384
380
|
5. AI Agent Implementation Readiness
|
|
385
|
-
|
|
386
381
|
- Game-specific concerns for AI implementation
|
|
387
382
|
- Unity component complexity assessment
|
|
388
383
|
- Areas needing additional clarification
|
|
@@ -25,7 +25,6 @@ The goal is quality delivery, not just checking boxes.]]
|
|
|
25
25
|
1. **Requirements Met:**
|
|
26
26
|
|
|
27
27
|
[[LLM: Be specific - list each requirement and whether it's complete. Include game-specific requirements from GDD]]
|
|
28
|
-
|
|
29
28
|
- [ ] All functional requirements specified in the story are implemented.
|
|
30
29
|
- [ ] All acceptance criteria defined in the story are met.
|
|
31
30
|
- [ ] Game Design Document (GDD) requirements referenced in the story are implemented.
|
|
@@ -34,7 +33,6 @@ The goal is quality delivery, not just checking boxes.]]
|
|
|
34
33
|
2. **Coding Standards & Project Structure:**
|
|
35
34
|
|
|
36
35
|
[[LLM: Code quality matters for maintainability. Check Unity-specific patterns and C# standards]]
|
|
37
|
-
|
|
38
36
|
- [ ] All new/modified code strictly adheres to `Operational Guidelines`.
|
|
39
37
|
- [ ] All new/modified code aligns with `Project Structure` (Scripts/, Prefabs/, Scenes/, etc.).
|
|
40
38
|
- [ ] Adherence to `Tech Stack` for Unity version and packages used.
|
|
@@ -48,7 +46,6 @@ The goal is quality delivery, not just checking boxes.]]
|
|
|
48
46
|
3. **Testing:**
|
|
49
47
|
|
|
50
48
|
[[LLM: Testing proves your code works. Include Unity-specific testing with NUnit and manual testing]]
|
|
51
|
-
|
|
52
49
|
- [ ] All required unit tests (NUnit) as per the story and testing strategy are implemented.
|
|
53
50
|
- [ ] All required integration tests (if applicable) are implemented.
|
|
54
51
|
- [ ] Manual testing performed in Unity Editor for all game functionality.
|
|
@@ -60,7 +57,6 @@ The goal is quality delivery, not just checking boxes.]]
|
|
|
60
57
|
4. **Functionality & Verification:**
|
|
61
58
|
|
|
62
59
|
[[LLM: Did you actually run and test your code in Unity? Be specific about game mechanics tested]]
|
|
63
|
-
|
|
64
60
|
- [ ] Functionality has been manually verified in Unity Editor and play mode.
|
|
65
61
|
- [ ] Game mechanics work as specified in the GDD.
|
|
66
62
|
- [ ] Player controls and input handling work correctly.
|
|
@@ -73,7 +69,6 @@ The goal is quality delivery, not just checking boxes.]]
|
|
|
73
69
|
5. **Story Administration:**
|
|
74
70
|
|
|
75
71
|
[[LLM: Documentation helps the next developer. Include Unity-specific implementation notes]]
|
|
76
|
-
|
|
77
72
|
- [ ] All tasks within the story file are marked as complete.
|
|
78
73
|
- [ ] Any clarifications or decisions made during development are documented.
|
|
79
74
|
- [ ] Unity-specific implementation details documented (scene changes, prefab modifications).
|
|
@@ -83,7 +78,6 @@ The goal is quality delivery, not just checking boxes.]]
|
|
|
83
78
|
6. **Dependencies, Build & Configuration:**
|
|
84
79
|
|
|
85
80
|
[[LLM: Build issues block everyone. Ensure Unity project builds for all target platforms]]
|
|
86
|
-
|
|
87
81
|
- [ ] Unity project builds successfully without errors.
|
|
88
82
|
- [ ] Project builds for all target platforms (desktop/mobile as specified).
|
|
89
83
|
- [ ] Any new Unity packages or Asset Store items were pre-approved OR approved by user.
|
|
@@ -95,7 +89,6 @@ The goal is quality delivery, not just checking boxes.]]
|
|
|
95
89
|
7. **Game-Specific Quality:**
|
|
96
90
|
|
|
97
91
|
[[LLM: Game quality matters. Check performance, game feel, and player experience]]
|
|
98
|
-
|
|
99
92
|
- [ ] Frame rate meets target (30/60 FPS) on all platforms.
|
|
100
93
|
- [ ] Memory usage within acceptable limits.
|
|
101
94
|
- [ ] Game feel and responsiveness meet design requirements.
|
|
@@ -107,7 +100,6 @@ The goal is quality delivery, not just checking boxes.]]
|
|
|
107
100
|
8. **Documentation (If Applicable):**
|
|
108
101
|
|
|
109
102
|
[[LLM: Good documentation prevents future confusion. Include Unity-specific docs]]
|
|
110
|
-
|
|
111
103
|
- [ ] Code documentation (XML comments) for public APIs complete.
|
|
112
104
|
- [ ] Unity component documentation in Inspector updated.
|
|
113
105
|
- [ ] User-facing documentation updated, if changes impact players.
|
|
@@ -270,7 +270,6 @@ that can handle [specific game requirements] with stable performance."
|
|
|
270
270
|
**Prerequisites**: Game planning documents must exist in `docs/` folder of Unity project
|
|
271
271
|
|
|
272
272
|
1. **Document Sharding** (CRITICAL STEP for Game Development):
|
|
273
|
-
|
|
274
273
|
- Documents created by Game Designer/Architect (in Web or IDE) MUST be sharded for development
|
|
275
274
|
- Use core BMad agents or tools to shard:
|
|
276
275
|
a) **Manual**: Use core BMad `shard-doc` task if available
|
|
@@ -293,20 +292,17 @@ Resulting Unity Project Folder Structure:
|
|
|
293
292
|
3. **Game Development Cycle** (Sequential, one game story at a time):
|
|
294
293
|
|
|
295
294
|
**CRITICAL CONTEXT MANAGEMENT for Unity Development**:
|
|
296
|
-
|
|
297
295
|
- **Context windows matter!** Always use fresh, clean context windows
|
|
298
296
|
- **Model selection matters!** Use most powerful thinking model for Game SM story creation
|
|
299
297
|
- **ALWAYS start new chat between Game SM, Game Dev, and QA work**
|
|
300
298
|
|
|
301
299
|
**Step 1 - Game Story Creation**:
|
|
302
|
-
|
|
303
300
|
- **NEW CLEAN CHAT** ā Select powerful model ā `/bmad2du/game-sm` ā `*draft`
|
|
304
301
|
- Game SM executes create-game-story task using `game-story-tmpl`
|
|
305
302
|
- Review generated story in `docs/game-stories/`
|
|
306
303
|
- Update status from "Draft" to "Approved"
|
|
307
304
|
|
|
308
305
|
**Step 2 - Unity Game Story Implementation**:
|
|
309
|
-
|
|
310
306
|
- **NEW CLEAN CHAT** ā `/bmad2du/game-developer`
|
|
311
307
|
- Agent asks which game story to implement
|
|
312
308
|
- Include story file content to save game dev agent lookup time
|
|
@@ -315,7 +311,6 @@ Resulting Unity Project Folder Structure:
|
|
|
315
311
|
- Game Dev marks story as "Review" when complete with all Unity tests passing
|
|
316
312
|
|
|
317
313
|
**Step 3 - Game QA Review**:
|
|
318
|
-
|
|
319
314
|
- **NEW CLEAN CHAT** ā Use core `@qa` agent ā execute review-story task
|
|
320
315
|
- QA performs senior Unity developer code review
|
|
321
316
|
- QA can refactor and improve Unity code directly
|
|
@@ -355,14 +350,12 @@ Since this expansion pack doesn't include specific brownfield templates, you'll
|
|
|
355
350
|
|
|
356
351
|
1. **Upload Unity project to Web UI** (GitHub URL, files, or zip)
|
|
357
352
|
2. **Create adapted Game Design Document**: `/bmad2du/game-designer` - Modify `game-design-doc-tmpl` to include:
|
|
358
|
-
|
|
359
353
|
- Analysis of existing game systems
|
|
360
354
|
- Integration points for new features
|
|
361
355
|
- Compatibility requirements
|
|
362
356
|
- Risk assessment for changes
|
|
363
357
|
|
|
364
358
|
3. **Game Architecture Planning**:
|
|
365
|
-
|
|
366
359
|
- Use `/bmad2du/game-architect` with `game-architecture-tmpl`
|
|
367
360
|
- Focus on how new features integrate with existing Unity systems
|
|
368
361
|
- Plan for gradual rollout and testing
|
|
@@ -531,25 +531,21 @@ Assets/
|
|
|
531
531
|
### Story Implementation Process
|
|
532
532
|
|
|
533
533
|
1. **Read Story Requirements:**
|
|
534
|
-
|
|
535
534
|
- Understand acceptance criteria
|
|
536
535
|
- Identify technical requirements
|
|
537
536
|
- Review performance constraints
|
|
538
537
|
|
|
539
538
|
2. **Plan Implementation:**
|
|
540
|
-
|
|
541
539
|
- Identify files to create/modify
|
|
542
540
|
- Consider Unity's component-based architecture
|
|
543
541
|
- Plan testing approach
|
|
544
542
|
|
|
545
543
|
3. **Implement Feature:**
|
|
546
|
-
|
|
547
544
|
- Write clean C# code following all guidelines
|
|
548
545
|
- Use established patterns
|
|
549
546
|
- Maintain stable FPS performance
|
|
550
547
|
|
|
551
548
|
4. **Test Implementation:**
|
|
552
|
-
|
|
553
549
|
- Write edit mode tests for game logic
|
|
554
550
|
- Write play mode tests for integration testing
|
|
555
551
|
- Test cross-platform functionality
|
|
@@ -18,7 +18,6 @@
|
|
|
18
18
|
2. If the section contains game flow diagrams, level layouts, or system diagrams, explain each diagram briefly with game development context before offering elicitation options (e.g., "The gameplay loop diagram shows how player actions lead to rewards and progression. Notice how each step maintains player engagement and creates opportunities for skill development.")
|
|
19
19
|
|
|
20
20
|
3. If the section contains multiple game elements (like multiple mechanics, multiple levels, multiple systems, etc.), inform the user they can apply elicitation actions to:
|
|
21
|
-
|
|
22
21
|
- The entire section as a whole
|
|
23
22
|
- Individual game elements within the section (specify which element when selecting an action)
|
|
24
23
|
|
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
### 1. Initial Setup & Mode Selection
|
|
15
15
|
|
|
16
16
|
- **Acknowledge Task & Inputs:**
|
|
17
|
-
|
|
18
17
|
- Confirm with the user that the "Game Development Correct Course Task" is being initiated.
|
|
19
18
|
- Verify the change trigger (e.g., performance issue, platform constraint, gameplay feedback, technical blocker).
|
|
20
19
|
- Confirm access to relevant game artifacts:
|
|
@@ -35,7 +34,6 @@
|
|
|
35
34
|
### 2. Execute Game Development Checklist Analysis
|
|
36
35
|
|
|
37
36
|
- Systematically work through the game-change-checklist sections:
|
|
38
|
-
|
|
39
37
|
1. **Change Context & Game Impact**
|
|
40
38
|
2. **Feature/System Impact Analysis**
|
|
41
39
|
3. **Technical Artifact Conflict Resolution**
|
|
@@ -60,7 +58,6 @@
|
|
|
60
58
|
Based on the analysis and agreed path forward:
|
|
61
59
|
|
|
62
60
|
- **Identify affected game artifacts requiring updates:**
|
|
63
|
-
|
|
64
61
|
- GDD sections (mechanics, systems, progression)
|
|
65
62
|
- Technical specifications (architecture, performance targets)
|
|
66
63
|
- Unity-specific configurations (build settings, quality settings)
|
|
@@ -69,7 +66,6 @@ Based on the analysis and agreed path forward:
|
|
|
69
66
|
- Platform-specific adaptations
|
|
70
67
|
|
|
71
68
|
- **Draft explicit changes for each artifact:**
|
|
72
|
-
|
|
73
69
|
- **Game Stories:** Revise story text, Unity-specific acceptance criteria, technical constraints
|
|
74
70
|
- **Technical Specs:** Update architecture diagrams, component hierarchies, performance budgets
|
|
75
71
|
- **Unity Configurations:** Propose settings changes, optimization strategies, platform variants
|
|
@@ -89,14 +85,12 @@ Based on the analysis and agreed path forward:
|
|
|
89
85
|
- Create a comprehensive proposal document containing:
|
|
90
86
|
|
|
91
87
|
**A. Change Summary:**
|
|
92
|
-
|
|
93
88
|
- Original issue (performance, gameplay, technical constraint)
|
|
94
89
|
- Game systems affected
|
|
95
90
|
- Platform/performance implications
|
|
96
91
|
- Chosen solution approach
|
|
97
92
|
|
|
98
93
|
**B. Technical Impact Analysis:**
|
|
99
|
-
|
|
100
94
|
- Unity architecture changes needed
|
|
101
95
|
- Performance implications (with metrics)
|
|
102
96
|
- Platform compatibility effects
|
|
@@ -104,14 +98,12 @@ Based on the analysis and agreed path forward:
|
|
|
104
98
|
- Third-party dependency impacts
|
|
105
99
|
|
|
106
100
|
**C. Specific Proposed Edits:**
|
|
107
|
-
|
|
108
101
|
- For each game story: "Change Story GS-X.Y from: [old] To: [new]"
|
|
109
102
|
- For technical specs: "Update Unity Architecture Section X: [changes]"
|
|
110
103
|
- For GDD: "Modify [Feature] in Section Y: [updates]"
|
|
111
104
|
- For configurations: "Change [Setting] from [old_value] to [new_value]"
|
|
112
105
|
|
|
113
106
|
**D. Implementation Considerations:**
|
|
114
|
-
|
|
115
107
|
- Required Unity version updates
|
|
116
108
|
- Asset reimport needs
|
|
117
109
|
- Shader recompilation requirements
|
|
@@ -123,7 +115,6 @@ Based on the analysis and agreed path forward:
|
|
|
123
115
|
- Provide the finalized document to the user
|
|
124
116
|
|
|
125
117
|
- **Based on change scope:**
|
|
126
|
-
|
|
127
118
|
- **Minor adjustments (can be handled in current sprint):**
|
|
128
119
|
- Confirm task completion
|
|
129
120
|
- Suggest handoff to game-dev agent for implementation
|
|
@@ -137,7 +128,6 @@ Based on the analysis and agreed path forward:
|
|
|
137
128
|
## Output Deliverables
|
|
138
129
|
|
|
139
130
|
- **Primary:** "Game Development Change Proposal" document containing:
|
|
140
|
-
|
|
141
131
|
- Game-specific change analysis
|
|
142
132
|
- Technical impact assessment with Unity context
|
|
143
133
|
- Platform and performance considerations
|
|
@@ -9,7 +9,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
9
9
|
[[LLM: Begin by understanding the game design context and goals. Ask clarifying questions if needed to determine the best approach for game-specific ideation.]]
|
|
10
10
|
|
|
11
11
|
1. **Establish Game Context**
|
|
12
|
-
|
|
13
12
|
- Understand the game genre or opportunity area
|
|
14
13
|
- Identify target audience and platform constraints
|
|
15
14
|
- Determine session goals (concept exploration vs. mechanic refinement)
|
|
@@ -27,7 +26,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
27
26
|
|
|
28
27
|
1. **"What If" Game Scenarios**
|
|
29
28
|
[[LLM: Generate provocative what-if questions that challenge game design assumptions and expand thinking beyond current genre limitations.]]
|
|
30
|
-
|
|
31
29
|
- What if players could rewind time in any genre?
|
|
32
30
|
- What if the game world reacted to the player's real-world location?
|
|
33
31
|
- What if failure was more rewarding than success?
|
|
@@ -36,7 +34,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
36
34
|
|
|
37
35
|
2. **Cross-Genre Fusion**
|
|
38
36
|
[[LLM: Help user combine unexpected game genres and mechanics to create unique experiences.]]
|
|
39
|
-
|
|
40
37
|
- "How might [genre A] mechanics work in [genre B]?"
|
|
41
38
|
- Puzzle mechanics in action games
|
|
42
39
|
- Dating sim elements in strategy games
|
|
@@ -45,7 +42,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
45
42
|
|
|
46
43
|
3. **Player Motivation Reversal**
|
|
47
44
|
[[LLM: Flip traditional player motivations to reveal new gameplay possibilities.]]
|
|
48
|
-
|
|
49
45
|
- What if losing was the goal?
|
|
50
46
|
- What if cooperation was forced in competitive games?
|
|
51
47
|
- What if players had to help their enemies?
|
|
@@ -62,7 +58,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
62
58
|
|
|
63
59
|
1. **SCAMPER for Game Mechanics**
|
|
64
60
|
[[LLM: Guide through each SCAMPER prompt specifically for game design.]]
|
|
65
|
-
|
|
66
61
|
- **S** = Substitute: What mechanics can be substituted? (walking ā flying ā swimming)
|
|
67
62
|
- **C** = Combine: What systems can be merged? (inventory + character growth)
|
|
68
63
|
- **A** = Adapt: What mechanics from other media? (books, movies, sports)
|
|
@@ -73,7 +68,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
73
68
|
|
|
74
69
|
2. **Player Agency Spectrum**
|
|
75
70
|
[[LLM: Explore different levels of player control and agency across game systems.]]
|
|
76
|
-
|
|
77
71
|
- Full Control: Direct character movement, combat, building
|
|
78
72
|
- Indirect Control: Setting rules, giving commands, environmental changes
|
|
79
73
|
- Influence Only: Suggestions, preferences, emotional reactions
|
|
@@ -81,7 +75,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
81
75
|
|
|
82
76
|
3. **Temporal Game Design**
|
|
83
77
|
[[LLM: Explore how time affects gameplay and player experience.]]
|
|
84
|
-
|
|
85
78
|
- Real-time vs. turn-based mechanics
|
|
86
79
|
- Time travel and manipulation
|
|
87
80
|
- Persistent vs. session-based progress
|
|
@@ -92,7 +85,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
92
85
|
|
|
93
86
|
1. **Emotion-First Design**
|
|
94
87
|
[[LLM: Start with target emotions and work backward to mechanics that create them.]]
|
|
95
|
-
|
|
96
88
|
- Target Emotion: Wonder ā Mechanics: Discovery, mystery, scale
|
|
97
89
|
- Target Emotion: Triumph ā Mechanics: Challenge, skill growth, recognition
|
|
98
90
|
- Target Emotion: Connection ā Mechanics: Cooperation, shared goals, communication
|
|
@@ -100,7 +92,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
100
92
|
|
|
101
93
|
2. **Player Archetype Brainstorming**
|
|
102
94
|
[[LLM: Design for different player types and motivations.]]
|
|
103
|
-
|
|
104
95
|
- Achievers: Progression, completion, mastery
|
|
105
96
|
- Explorers: Discovery, secrets, world-building
|
|
106
97
|
- Socializers: Interaction, cooperation, community
|
|
@@ -109,7 +100,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
109
100
|
|
|
110
101
|
3. **Accessibility-First Innovation**
|
|
111
102
|
[[LLM: Generate ideas that make games more accessible while creating new gameplay.]]
|
|
112
|
-
|
|
113
103
|
- Visual impairment considerations leading to audio-focused mechanics
|
|
114
104
|
- Motor accessibility inspiring one-handed or simplified controls
|
|
115
105
|
- Cognitive accessibility driving clear feedback and pacing
|
|
@@ -119,7 +109,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
119
109
|
|
|
120
110
|
1. **Environmental Storytelling**
|
|
121
111
|
[[LLM: Brainstorm ways the game world itself tells stories without explicit narrative.]]
|
|
122
|
-
|
|
123
112
|
- How does the environment show history?
|
|
124
113
|
- What do interactive objects reveal about characters?
|
|
125
114
|
- How can level design communicate mood?
|
|
@@ -127,7 +116,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
127
116
|
|
|
128
117
|
2. **Player-Generated Narrative**
|
|
129
118
|
[[LLM: Explore ways players create their own stories through gameplay.]]
|
|
130
|
-
|
|
131
119
|
- Emergent storytelling through player choices
|
|
132
120
|
- Procedural narrative generation
|
|
133
121
|
- Player-to-player story sharing
|
|
@@ -135,7 +123,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
135
123
|
|
|
136
124
|
3. **Genre Expectation Subversion**
|
|
137
125
|
[[LLM: Identify and deliberately subvert player expectations within genres.]]
|
|
138
|
-
|
|
139
126
|
- Fantasy RPG where magic is mundane
|
|
140
127
|
- Horror game where monsters are friendly
|
|
141
128
|
- Racing game where going slow is optimal
|
|
@@ -145,7 +132,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
145
132
|
|
|
146
133
|
1. **Platform-Specific Design**
|
|
147
134
|
[[LLM: Generate ideas that leverage unique platform capabilities.]]
|
|
148
|
-
|
|
149
135
|
- Mobile: GPS, accelerometer, camera, always-connected
|
|
150
136
|
- Web: URLs, tabs, social sharing, real-time collaboration
|
|
151
137
|
- Console: Controllers, TV viewing, couch co-op
|
|
@@ -153,7 +139,6 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
153
139
|
|
|
154
140
|
2. **Constraint-Based Creativity**
|
|
155
141
|
[[LLM: Use technical or design constraints as creative catalysts.]]
|
|
156
|
-
|
|
157
142
|
- One-button games
|
|
158
143
|
- Games without graphics
|
|
159
144
|
- Games that play in notification bars
|
|
@@ -199,19 +184,16 @@ This task provides a comprehensive toolkit of creative brainstorming techniques
|
|
|
199
184
|
[[LLM: Guide the brainstorming session with appropriate pacing for game design exploration.]]
|
|
200
185
|
|
|
201
186
|
1. **Inspiration Phase** (10-15 min)
|
|
202
|
-
|
|
203
187
|
- Reference existing games and mechanics
|
|
204
188
|
- Explore player experiences and emotions
|
|
205
189
|
- Gather visual and thematic inspiration
|
|
206
190
|
|
|
207
191
|
2. **Divergent Exploration** (25-35 min)
|
|
208
|
-
|
|
209
192
|
- Generate many game concepts or mechanics
|
|
210
193
|
- Use expansion and fusion techniques
|
|
211
194
|
- Encourage wild and impossible ideas
|
|
212
195
|
|
|
213
196
|
3. **Player-Centered Filtering** (15-20 min)
|
|
214
|
-
|
|
215
197
|
- Consider target audience reactions
|
|
216
198
|
- Evaluate emotional impact and engagement
|
|
217
199
|
- Group ideas by player experience goals
|
|
@@ -247,17 +247,14 @@ A comprehensive 16-section checklist covering:
|
|
|
247
247
|
### Common Issues
|
|
248
248
|
|
|
249
249
|
1. **Infrastructure Drift**
|
|
250
|
-
|
|
251
250
|
- Solution: Implement drift detection in IaC pipelines
|
|
252
251
|
- Prevention: Restrict manual changes, enforce GitOps
|
|
253
252
|
|
|
254
253
|
2. **Cost Overruns**
|
|
255
|
-
|
|
256
254
|
- Solution: Implement cost monitoring and alerts
|
|
257
255
|
- Prevention: Resource tagging, budget limits
|
|
258
256
|
|
|
259
257
|
3. **Performance Problems**
|
|
260
|
-
|
|
261
258
|
- Solution: Review monitoring data, scale resources
|
|
262
259
|
- Prevention: Load testing, capacity planning
|
|
263
260
|
|
|
@@ -32,7 +32,6 @@ To conduct a thorough review of existing infrastructure to identify improvement
|
|
|
32
32
|
### 3. Conduct Systematic Review
|
|
33
33
|
|
|
34
34
|
- **If "Incremental Mode" was selected:**
|
|
35
|
-
|
|
36
35
|
- For each section of the infrastructure checklist:
|
|
37
36
|
- **a. Present Section Focus:** Explain what aspects of infrastructure this section reviews
|
|
38
37
|
- **b. Work Through Items:** Examine each checklist item against current infrastructure
|
|
@@ -55,7 +55,6 @@ To comprehensively validate platform infrastructure changes against security, re
|
|
|
55
55
|
### 4. Execute Comprehensive Platform Validation Process
|
|
56
56
|
|
|
57
57
|
- **If "Incremental Mode" was selected:**
|
|
58
|
-
|
|
59
58
|
- For each section of the infrastructure checklist (Sections 1-16):
|
|
60
59
|
- **a. Present Section Purpose:** Explain what this section validates and why it's important for platform operations
|
|
61
60
|
- **b. Work Through Items:** Present each checklist item, guide the user through validation, and document compliance or gaps
|
package/package.json
CHANGED
|
@@ -4,8 +4,8 @@ const { program } = require('commander');
|
|
|
4
4
|
const path = require('path');
|
|
5
5
|
const fs = require('fs').promises;
|
|
6
6
|
const yaml = require('js-yaml');
|
|
7
|
-
const chalk = require('chalk');
|
|
8
|
-
const inquirer = require('inquirer');
|
|
7
|
+
const chalk = require('chalk').default || require('chalk');
|
|
8
|
+
const inquirer = require('inquirer').default || require('inquirer');
|
|
9
9
|
const semver = require('semver');
|
|
10
10
|
const https = require('https');
|
|
11
11
|
|
|
@@ -45,7 +45,7 @@ program
|
|
|
45
45
|
.option('-f, --full', 'Install complete BMad Method')
|
|
46
46
|
.option('-x, --expansion-only', 'Install only expansion packs (no bmad-core)')
|
|
47
47
|
.option('-d, --directory <path>', 'Installation directory')
|
|
48
|
-
.option('-i, --ide <ide...>', 'Configure for specific IDE(s) - can specify multiple (cursor, claude-code, windsurf, trae, roo, kilo, cline, gemini, qwen-code, github-copilot, other)')
|
|
48
|
+
.option('-i, --ide <ide...>', 'Configure for specific IDE(s) - can specify multiple (cursor, claude-code, windsurf, trae, roo, kilo, cline, gemini, qwen-code, github-copilot, crush, other)')
|
|
49
49
|
.option('-e, --expansion-packs <packs...>', 'Install specific expansion packs (can specify multiple)')
|
|
50
50
|
.action(async (options) => {
|
|
51
51
|
try {
|
|
@@ -183,17 +183,17 @@ program
|
|
|
183
183
|
});
|
|
184
184
|
|
|
185
185
|
async function promptInstallation() {
|
|
186
|
-
|
|
186
|
+
|
|
187
187
|
// Display ASCII logo
|
|
188
188
|
console.log(chalk.bold.cyan(`
|
|
189
|
-
āāāāāāā āāāā āāāā āāāāāā āāāāāāā āāāā āāāāāāāāāāāāāāāāāāāāāāāā āāā āāāāāāā āāāāāāā
|
|
189
|
+
āāāāāāā āāāā āāāā āāāāāā āāāāāāā āāāā āāāāāāāāāāāāāāāāāāāāāāāā āāā āāāāāāā āāāāāāā
|
|
190
190
|
āāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāāāā āāāāā āāāāāāāāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāāā
|
|
191
191
|
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāāāāāāāāā āāā āāāāāāāāāāā āāāāāā āāā
|
|
192
192
|
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāāāāāāāāā āāā āāāāāāāāāāā āāāāāā āāā
|
|
193
193
|
āāāāāāāāāāā āāā āāāāāā āāāāāāāāāāā āāā āāā āāāāāāāāāāā āāā āāā āāāāāāāāāāāāāāāāāāāā
|
|
194
|
-
āāāāāāā āāā āāāāāā āāāāāāāāāā āāā āāāāāāāāāāā āāā āāā āāā āāāāāāā āāāāāāā
|
|
194
|
+
āāāāāāā āāā āāāāāā āāāāāāāāāā āāā āāāāāāāāāāā āāā āāā āāā āāāāāāā āāāāāāā
|
|
195
195
|
`));
|
|
196
|
-
|
|
196
|
+
|
|
197
197
|
console.log(chalk.bold.magenta('š Universal AI Agent Framework for Any Domain'));
|
|
198
198
|
console.log(chalk.bold.blue(`⨠Installer v${version}\n`));
|
|
199
199
|
|
|
@@ -218,63 +218,63 @@ async function promptInstallation() {
|
|
|
218
218
|
// Detect existing installations
|
|
219
219
|
const installDir = path.resolve(directory);
|
|
220
220
|
const state = await installer.detectInstallationState(installDir);
|
|
221
|
-
|
|
221
|
+
|
|
222
222
|
// Check for existing expansion packs
|
|
223
223
|
const existingExpansionPacks = state.expansionPacks || {};
|
|
224
|
-
|
|
224
|
+
|
|
225
225
|
// Get available expansion packs
|
|
226
226
|
const availableExpansionPacks = await installer.getAvailableExpansionPacks();
|
|
227
|
-
|
|
227
|
+
|
|
228
228
|
// Build choices list
|
|
229
229
|
const choices = [];
|
|
230
|
-
|
|
230
|
+
|
|
231
231
|
// Load core config to get short-title
|
|
232
232
|
const coreConfigPath = path.join(__dirname, '..', '..', '..', 'bmad-core', 'core-config.yaml');
|
|
233
233
|
const coreConfig = yaml.load(await fs.readFile(coreConfigPath, 'utf8'));
|
|
234
234
|
const coreShortTitle = coreConfig['short-title'] || 'BMad Agile Core System';
|
|
235
|
-
|
|
235
|
+
|
|
236
236
|
// Add BMad core option
|
|
237
237
|
let bmadOptionText;
|
|
238
238
|
if (state.type === 'v4_existing') {
|
|
239
239
|
const currentVersion = state.manifest?.version || 'unknown';
|
|
240
240
|
const newVersion = version; // Always use package.json version
|
|
241
|
-
const versionInfo = currentVersion === newVersion
|
|
241
|
+
const versionInfo = currentVersion === newVersion
|
|
242
242
|
? `(v${currentVersion} - reinstall)`
|
|
243
243
|
: `(v${currentVersion} ā v${newVersion})`;
|
|
244
244
|
bmadOptionText = `Update ${coreShortTitle} ${versionInfo} .bmad-core`;
|
|
245
245
|
} else {
|
|
246
246
|
bmadOptionText = `${coreShortTitle} (v${version}) .bmad-core`;
|
|
247
247
|
}
|
|
248
|
-
|
|
248
|
+
|
|
249
249
|
choices.push({
|
|
250
250
|
name: bmadOptionText,
|
|
251
251
|
value: 'bmad-core',
|
|
252
252
|
checked: true
|
|
253
253
|
});
|
|
254
|
-
|
|
254
|
+
|
|
255
255
|
// Add expansion pack options
|
|
256
256
|
for (const pack of availableExpansionPacks) {
|
|
257
257
|
const existing = existingExpansionPacks[pack.id];
|
|
258
258
|
let packOptionText;
|
|
259
|
-
|
|
259
|
+
|
|
260
260
|
if (existing) {
|
|
261
261
|
const currentVersion = existing.manifest?.version || 'unknown';
|
|
262
262
|
const newVersion = pack.version;
|
|
263
|
-
const versionInfo = currentVersion === newVersion
|
|
263
|
+
const versionInfo = currentVersion === newVersion
|
|
264
264
|
? `(v${currentVersion} - reinstall)`
|
|
265
265
|
: `(v${currentVersion} ā v${newVersion})`;
|
|
266
266
|
packOptionText = `Update ${pack.shortTitle} ${versionInfo} .${pack.id}`;
|
|
267
267
|
} else {
|
|
268
268
|
packOptionText = `${pack.shortTitle} (v${pack.version}) .${pack.id}`;
|
|
269
269
|
}
|
|
270
|
-
|
|
270
|
+
|
|
271
271
|
choices.push({
|
|
272
272
|
name: packOptionText,
|
|
273
273
|
value: pack.id,
|
|
274
274
|
checked: false
|
|
275
275
|
});
|
|
276
276
|
}
|
|
277
|
-
|
|
277
|
+
|
|
278
278
|
// Ask what to install
|
|
279
279
|
const { selectedItems } = await inquirer.prompt([
|
|
280
280
|
{
|
|
@@ -290,7 +290,7 @@ async function promptInstallation() {
|
|
|
290
290
|
}
|
|
291
291
|
}
|
|
292
292
|
]);
|
|
293
|
-
|
|
293
|
+
|
|
294
294
|
// Process selections
|
|
295
295
|
answers.installType = selectedItems.includes('bmad-core') ? 'full' : 'expansion-only';
|
|
296
296
|
answers.expansionPacks = selectedItems.filter(item => item !== 'bmad-core');
|
|
@@ -299,7 +299,7 @@ async function promptInstallation() {
|
|
|
299
299
|
if (selectedItems.includes('bmad-core')) {
|
|
300
300
|
console.log(chalk.cyan('\nš Document Organization Settings'));
|
|
301
301
|
console.log(chalk.dim('Configure how your project documentation should be organized.\n'));
|
|
302
|
-
|
|
302
|
+
|
|
303
303
|
// Ask about PRD sharding
|
|
304
304
|
const { prdSharded } = await inquirer.prompt([
|
|
305
305
|
{
|
|
@@ -310,7 +310,7 @@ async function promptInstallation() {
|
|
|
310
310
|
}
|
|
311
311
|
]);
|
|
312
312
|
answers.prdSharded = prdSharded;
|
|
313
|
-
|
|
313
|
+
|
|
314
314
|
// Ask about architecture sharding
|
|
315
315
|
const { architectureSharded } = await inquirer.prompt([
|
|
316
316
|
{
|
|
@@ -321,7 +321,7 @@ async function promptInstallation() {
|
|
|
321
321
|
}
|
|
322
322
|
]);
|
|
323
323
|
answers.architectureSharded = architectureSharded;
|
|
324
|
-
|
|
324
|
+
|
|
325
325
|
// Show warning if architecture sharding is disabled
|
|
326
326
|
if (!architectureSharded) {
|
|
327
327
|
console.log(chalk.yellow.bold('\nā ļø IMPORTANT: Architecture Sharding Disabled'));
|
|
@@ -330,7 +330,7 @@ async function promptInstallation() {
|
|
|
330
330
|
console.log(chalk.yellow('as these are used by the dev agent at runtime.'));
|
|
331
331
|
console.log(chalk.yellow('\nAlternatively, you can remove these files from the devLoadAlwaysFiles list'));
|
|
332
332
|
console.log(chalk.yellow('in your core-config.yaml after installation.'));
|
|
333
|
-
|
|
333
|
+
|
|
334
334
|
const { acknowledge } = await inquirer.prompt([
|
|
335
335
|
{
|
|
336
336
|
type: 'confirm',
|
|
@@ -339,7 +339,7 @@ async function promptInstallation() {
|
|
|
339
339
|
default: false
|
|
340
340
|
}
|
|
341
341
|
]);
|
|
342
|
-
|
|
342
|
+
|
|
343
343
|
if (!acknowledge) {
|
|
344
344
|
console.log(chalk.red('Installation cancelled.'));
|
|
345
345
|
process.exit(0);
|
|
@@ -350,14 +350,14 @@ async function promptInstallation() {
|
|
|
350
350
|
// Ask for IDE configuration
|
|
351
351
|
let ides = [];
|
|
352
352
|
let ideSelectionComplete = false;
|
|
353
|
-
|
|
353
|
+
|
|
354
354
|
while (!ideSelectionComplete) {
|
|
355
355
|
console.log(chalk.cyan('\nš ļø IDE Configuration'));
|
|
356
356
|
console.log(chalk.bold.yellow.bgRed(' ā ļø IMPORTANT: This is a MULTISELECT! Use SPACEBAR to toggle each IDE! '));
|
|
357
357
|
console.log(chalk.bold.magenta('šø Use arrow keys to navigate'));
|
|
358
358
|
console.log(chalk.bold.magenta('šø Use SPACEBAR to select/deselect IDEs'));
|
|
359
359
|
console.log(chalk.bold.magenta('šø Press ENTER when finished selecting\n'));
|
|
360
|
-
|
|
360
|
+
|
|
361
361
|
const ideResponse = await inquirer.prompt([
|
|
362
362
|
{
|
|
363
363
|
type: 'checkbox',
|
|
@@ -373,11 +373,12 @@ async function promptInstallation() {
|
|
|
373
373
|
{ name: 'Cline', value: 'cline' },
|
|
374
374
|
{ name: 'Gemini CLI', value: 'gemini' },
|
|
375
375
|
{ name: 'Qwen Code', value: 'qwen-code' },
|
|
376
|
+
{ name: 'Crush', value: 'crush' },
|
|
376
377
|
{ name: 'Github Copilot', value: 'github-copilot' }
|
|
377
378
|
]
|
|
378
379
|
}
|
|
379
380
|
]);
|
|
380
|
-
|
|
381
|
+
|
|
381
382
|
ides = ideResponse.ides;
|
|
382
383
|
|
|
383
384
|
// Confirm no IDE selection if none selected
|
|
@@ -390,13 +391,13 @@ async function promptInstallation() {
|
|
|
390
391
|
default: false
|
|
391
392
|
}
|
|
392
393
|
]);
|
|
393
|
-
|
|
394
|
+
|
|
394
395
|
if (!confirmNoIde) {
|
|
395
396
|
console.log(chalk.bold.red('\nš Returning to IDE selection. Remember to use SPACEBAR to select IDEs!\n'));
|
|
396
397
|
continue; // Go back to IDE selection only
|
|
397
398
|
}
|
|
398
399
|
}
|
|
399
|
-
|
|
400
|
+
|
|
400
401
|
ideSelectionComplete = true;
|
|
401
402
|
}
|
|
402
403
|
|
|
@@ -407,7 +408,7 @@ async function promptInstallation() {
|
|
|
407
408
|
if (ides.includes('github-copilot')) {
|
|
408
409
|
console.log(chalk.cyan('\nš§ GitHub Copilot Configuration'));
|
|
409
410
|
console.log(chalk.dim('BMad works best with specific VS Code settings for optimal agent experience.\n'));
|
|
410
|
-
|
|
411
|
+
|
|
411
412
|
const { configChoice } = await inquirer.prompt([
|
|
412
413
|
{
|
|
413
414
|
type: 'list',
|
|
@@ -430,7 +431,7 @@ async function promptInstallation() {
|
|
|
430
431
|
default: 'defaults'
|
|
431
432
|
}
|
|
432
433
|
]);
|
|
433
|
-
|
|
434
|
+
|
|
434
435
|
answers.githubCopilotConfig = { configChoice };
|
|
435
436
|
}
|
|
436
437
|
|