workflows added to sub items in plan project phase. updated single action checks to be ifs on the action.
This commit is contained in:
@@ -59,7 +59,7 @@
|
||||
<action>Replace {{variables}} with values (ask user if unknown)</action>
|
||||
<execute-tags>
|
||||
<tag>action xml tag → Perform the action</tag>
|
||||
<tag>check xml tag → Evaluate condition</tag>
|
||||
<tag>check if="condition" xml tag → Conditional block wrapping actions (requires closing </check>)</tag>
|
||||
<tag>ask xml tag → Prompt user and WAIT for response</tag>
|
||||
<tag>invoke-workflow xml tag → Execute another workflow with given inputs</tag>
|
||||
<tag>invoke-task xml tag → Execute specified task</tag>
|
||||
@@ -114,7 +114,8 @@
|
||||
</structural>
|
||||
<execution>
|
||||
<tag>action - Required action to perform</tag>
|
||||
<tag>check - Condition to evaluate</tag>
|
||||
<tag>action if="condition" - Single conditional action (inline, no closing tag needed)</tag>
|
||||
<tag>check if="condition">...</check> - Conditional block wrapping multiple items (closing tag required)</tag>
|
||||
<tag>ask - Get user input (wait for response)</tag>
|
||||
<tag>goto - Jump to another step</tag>
|
||||
<tag>invoke-workflow - Call another workflow</tag>
|
||||
@@ -128,6 +129,35 @@
|
||||
</output>
|
||||
</supported-tags>
|
||||
|
||||
<conditional-execution-patterns desc="When to use each pattern">
|
||||
<pattern type="single-action">
|
||||
<use-case>One action with a condition</use-case>
|
||||
<syntax><action if="condition">Do something</action></syntax>
|
||||
<example><action if="file exists">Load the file</action></example>
|
||||
<rationale>Cleaner and more concise for single items</rationale>
|
||||
</pattern>
|
||||
|
||||
<pattern type="multi-action-block">
|
||||
<use-case>Multiple actions/tags under same condition</use-case>
|
||||
<syntax><check if="condition">
|
||||
<action>First action</action>
|
||||
<action>Second action</action>
|
||||
</check></syntax>
|
||||
<example><check if="validation fails">
|
||||
<action>Log error</action>
|
||||
<goto step="1">Retry</goto>
|
||||
</check></example>
|
||||
<rationale>Explicit scope boundaries prevent ambiguity</rationale>
|
||||
</pattern>
|
||||
|
||||
<pattern type="nested-conditions">
|
||||
<use-case>Else/alternative branches</use-case>
|
||||
<syntax><check if="condition A">...</check>
|
||||
<check if="else">...</check></syntax>
|
||||
<rationale>Clear branching logic with explicit blocks</rationale>
|
||||
</pattern>
|
||||
</conditional-execution-patterns>
|
||||
|
||||
<llm final="true">
|
||||
<mandate>This is the complete workflow execution engine</mandate>
|
||||
<mandate>You MUST Follow instructions exactly as written and maintain conversation context between steps</mandate>
|
||||
|
||||
@@ -186,8 +186,9 @@ Write 1-3 bullet points about project success:
|
||||
```xml
|
||||
<step n="2" goal="Validate input">
|
||||
<action>Load validation criteria</action>
|
||||
<check>If validation fails:</check>
|
||||
<goto step="1">Return to previous step</goto>
|
||||
<check if="validation fails">
|
||||
<goto step="1">Return to previous step</goto>
|
||||
</check>
|
||||
<template-output>validated_data</template-output>
|
||||
</step>
|
||||
```
|
||||
@@ -257,26 +258,47 @@ _Generated on {{date}}_
|
||||
</step>
|
||||
```
|
||||
|
||||
### Branching and Goto
|
||||
### Conditional Execution
|
||||
|
||||
**Single Action (use `action if=""`):**
|
||||
|
||||
```xml
|
||||
<step n="6" goal="Load context">
|
||||
<action if="file exists">Load existing document</action>
|
||||
<action if="new project">Initialize from template</action>
|
||||
</step>
|
||||
```
|
||||
|
||||
**Multiple Actions (use `<check if="">...</check>`):**
|
||||
|
||||
```xml
|
||||
<step n="7" goal="Validate">
|
||||
<action>Check requirements</action>
|
||||
<check>If incomplete:</check>
|
||||
<goto step="2">Return to gathering</goto>
|
||||
<check>If complete:</check>
|
||||
<continue>Proceed</continue>
|
||||
<check if="incomplete">
|
||||
<action>Log validation errors</action>
|
||||
<goto step="2">Return to gathering</goto>
|
||||
</check>
|
||||
<check if="complete">
|
||||
<action>Mark as validated</action>
|
||||
<continue>Proceed</continue>
|
||||
</check>
|
||||
</step>
|
||||
```
|
||||
|
||||
**When to use which:**
|
||||
|
||||
- **`<action if="">`** - Single conditional action (cleaner, more concise)
|
||||
- **`<check if="">...</check>`** - Multiple items under same condition (explicit scope)
|
||||
|
||||
### Loops
|
||||
|
||||
```xml
|
||||
<step n="8" goal="Refine">
|
||||
<loop max="5">
|
||||
<action>Generate solution</action>
|
||||
<check>If criteria met:</check>
|
||||
<break>Exit loop</break>
|
||||
<check if="criteria met">
|
||||
<break>Exit loop</break>
|
||||
</check>
|
||||
</loop>
|
||||
</step>
|
||||
```
|
||||
@@ -286,7 +308,8 @@ _Generated on {{date}}_
|
||||
**Execution:**
|
||||
|
||||
- `<action>` - Required action
|
||||
- `<check>` - Conditional check
|
||||
- `<action if="condition">` - Single conditional action (inline)
|
||||
- `<check if="condition">...</check>` - Conditional block for multiple items (requires closing tag)
|
||||
- `<ask>` - User prompt
|
||||
- `<goto>` - Jump to step
|
||||
- `<invoke-workflow>` - Call another workflow
|
||||
@@ -370,8 +393,9 @@ Check requirements against goals.
|
||||
|
||||
<step n="3" goal="Verify">
|
||||
<action>Run tests</action>
|
||||
<check>If tests fail:</check>
|
||||
<goto step="2">Fix issues</goto>
|
||||
<check if="tests fail">
|
||||
<goto step="2">Fix issues</goto>
|
||||
</check>
|
||||
</step>
|
||||
</workflow>
|
||||
```
|
||||
@@ -414,6 +438,40 @@ Check requirements against goals.
|
||||
3. **Set limits** - "3-5 items maximum"
|
||||
4. **Explain why** - Context helps AI make better decisions
|
||||
|
||||
### Conditional Execution Best Practices
|
||||
|
||||
**✅ DO:**
|
||||
|
||||
- Use `<action if="">` for single conditional actions
|
||||
- Use `<check if="">...</check>` for blocks with multiple items
|
||||
- Always close `<check>` tags explicitly
|
||||
- Keep conditions simple and readable
|
||||
|
||||
**❌ DON'T:**
|
||||
|
||||
- Wrap single actions in `<check>` blocks (unnecessarily verbose)
|
||||
- Forget to close `<check>` tags
|
||||
- Nest too many levels (makes logic hard to follow)
|
||||
|
||||
**Examples:**
|
||||
|
||||
```xml
|
||||
<!-- ✅ Good: Single action -->
|
||||
<action if="file exists">Load configuration</action>
|
||||
|
||||
<!-- ❌ Avoid: Unnecessary wrapper for single action -->
|
||||
<check if="file exists">
|
||||
<action>Load configuration</action>
|
||||
</check>
|
||||
|
||||
<!-- ✅ Good: Multiple actions in block -->
|
||||
<check if="validation fails">
|
||||
<action>Log error details</action>
|
||||
<action>Notify user</action>
|
||||
<goto step="1">Retry input</goto>
|
||||
</check>
|
||||
```
|
||||
|
||||
### Common Pitfalls
|
||||
|
||||
- **Missing critical headers** - Always include workflow engine references
|
||||
@@ -421,6 +479,8 @@ Check requirements against goals.
|
||||
- **Too many steps** - Combine related actions
|
||||
- **No checkpoints** - Add `<template-output>` tags
|
||||
- **Vague instructions** - Be explicit about expectations
|
||||
- **Unclosed check tags** - Always close `<check if="">...</check>` blocks
|
||||
- **Wrong conditional pattern** - Use `<action if="">` for single items, `<check if="">` for blocks
|
||||
|
||||
## Web Bundles
|
||||
|
||||
|
||||
@@ -251,35 +251,38 @@ Examples:
|
||||
- [r] Refine with additional context
|
||||
- [o] Optimize for different platform</ask>
|
||||
|
||||
<check>If edit or refine:</check>
|
||||
<ask>What would you like to adjust?</ask>
|
||||
<goto step="7">Regenerate with modifications</goto>
|
||||
<check if="edit or refine">
|
||||
<ask>What would you like to adjust?</ask>
|
||||
<goto step="7">Regenerate with modifications</goto>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
<step n="8" goal="Generate Platform-Specific Tips">
|
||||
<action>Provide platform-specific usage tips based on target platform</action>
|
||||
|
||||
<check>If target_platform includes ChatGPT:</check>
|
||||
**ChatGPT Deep Research Tips:**
|
||||
<check if="target_platform includes ChatGPT">
|
||||
**ChatGPT Deep Research Tips:**
|
||||
|
||||
- Use clear verbs: "compare," "analyze," "synthesize," "recommend"
|
||||
- Specify keywords explicitly to guide search
|
||||
- Answer clarifying questions thoroughly (requests are more expensive)
|
||||
- You have 25-250 queries/month depending on tier
|
||||
- Review the research plan before it starts searching
|
||||
</check>
|
||||
|
||||
<check>If target_platform includes Gemini:</check>
|
||||
**Gemini Deep Research Tips:**
|
||||
<check if="target_platform includes Gemini">
|
||||
**Gemini Deep Research Tips:**
|
||||
|
||||
- Keep initial prompt simple - you can adjust the research plan
|
||||
- Be specific and clear - vagueness is the enemy
|
||||
- Review and modify the multi-point research plan before it runs
|
||||
- Use follow-up questions to drill deeper or add sections
|
||||
- Available in 45+ languages globally
|
||||
</check>
|
||||
|
||||
<check>If target_platform includes Grok:</check>
|
||||
**Grok DeepSearch Tips:**
|
||||
<check if="target_platform includes Grok">
|
||||
**Grok DeepSearch Tips:**
|
||||
|
||||
- Include date windows: "from Jan-Jun 2025"
|
||||
- Specify output format: "bullet list + citations"
|
||||
@@ -287,15 +290,17 @@ Examples:
|
||||
- Use follow-up commands: "Expand on [topic]" to deepen sections
|
||||
- Verify facts when obscure sources cited
|
||||
- Free tier: 5 queries/24hrs, Premium: 30/2hrs
|
||||
</check>
|
||||
|
||||
<check>If target_platform includes Claude:</check>
|
||||
**Claude Projects Tips:**
|
||||
<check if="target_platform includes Claude">
|
||||
**Claude Projects Tips:**
|
||||
|
||||
- Use Chain of Thought prompting for complex reasoning
|
||||
- Break into sub-prompts for multi-step research (prompt chaining)
|
||||
- Add relevant documents to Project for context
|
||||
- Provide explicit instructions and examples
|
||||
- Test iteratively and refine prompts
|
||||
</check>
|
||||
|
||||
<template-output>platform_tips</template-output>
|
||||
|
||||
@@ -359,11 +364,13 @@ The output includes:
|
||||
|
||||
Select option (1-4):</ask>
|
||||
|
||||
<check>If option 1:</check>
|
||||
<goto step="1">Start with different platform selection</goto>
|
||||
<check if="option 1">
|
||||
<goto step="1">Start with different platform selection</goto>
|
||||
</check>
|
||||
|
||||
<check>If option 2 or 3:</check>
|
||||
<goto step="1">Start new prompt with context from previous</goto>
|
||||
<check if="option 2 or 3">
|
||||
<goto step="1">Start new prompt with context from previous</goto>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
@@ -471,8 +471,8 @@ Provide mitigation strategies.
|
||||
|
||||
<ask>Would you like to create a financial model with revenue projections based on the market analysis?</ask>
|
||||
|
||||
<check>If yes:</check>
|
||||
Build 3-year projections:
|
||||
<check if="yes">
|
||||
Build 3-year projections:
|
||||
|
||||
- Revenue model based on SOM scenarios
|
||||
- Customer acquisition projections
|
||||
@@ -481,6 +481,8 @@ Build 3-year projections:
|
||||
- Funding requirements
|
||||
|
||||
<template-output>financial_projections</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
<step n="11" goal="Executive Summary Creation">
|
||||
@@ -537,8 +539,8 @@ Create compelling executive summary with:
|
||||
<step n="13" goal="Appendices and Supporting Materials" optional="true">
|
||||
<ask>Would you like to include detailed appendices with calculations, full competitor profiles, or raw research data?</ask>
|
||||
|
||||
<check>If yes:</check>
|
||||
Create appendices with:
|
||||
<check if="yes">
|
||||
Create appendices with:
|
||||
|
||||
- Detailed TAM/SAM/SOM calculations
|
||||
- Full competitor profiles
|
||||
@@ -548,6 +550,8 @@ Create appendices with:
|
||||
- Glossary of terms
|
||||
|
||||
<template-output>appendices</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
</workflow>
|
||||
|
||||
@@ -51,40 +51,49 @@ Present the user with research type options:
|
||||
|
||||
<critical>Based on user selection, load the appropriate instruction set</critical>
|
||||
|
||||
<check>If research_type == "1" OR "market" OR "market research":</check>
|
||||
<action>Set research_mode = "market"</action>
|
||||
<action>LOAD: {installed_path}/instructions-market.md</action>
|
||||
<action>Continue with market research workflow</action>
|
||||
<check if="research_type == 1 OR fuzzy match market research">
|
||||
<action>Set research_mode = "market"</action>
|
||||
<action>LOAD: {installed_path}/instructions-market.md</action>
|
||||
<action>Continue with market research workflow</action>
|
||||
</check>
|
||||
|
||||
<check>If research_type == "2" OR "prompt" OR "deep research prompt":</check>
|
||||
<action>Set research_mode = "deep-prompt"</action>
|
||||
<action>LOAD: {installed_path}/instructions-deep-prompt.md</action>
|
||||
<action>Continue with deep research prompt generation</action>
|
||||
<check if="research_type == 2 or prompt or fuzzy match deep research prompt">
|
||||
<action>Set research_mode = "deep-prompt"</action>
|
||||
<action>LOAD: {installed_path}/instructions-deep-prompt.md</action>
|
||||
<action>Continue with deep research prompt generation</action>
|
||||
</check>
|
||||
|
||||
<check>If research_type == "3" OR "technical" OR "architecture":</check>
|
||||
<action>Set research_mode = "technical"</action>
|
||||
<action>LOAD: {installed_path}/instructions-technical.md</action>
|
||||
<action>Continue with technical research workflow</action>
|
||||
<check if="research_type == 3 technical or architecture or fuzzy match indicates technical type of research">
|
||||
<action>Set research_mode = "technical"</action>
|
||||
<action>LOAD: {installed_path}/instructions-technical.md</action>
|
||||
<action>Continue with technical research workflow</action>
|
||||
|
||||
<check>If research_type == "4" OR "competitive":</check>
|
||||
<action>Set research_mode = "competitive"</action>
|
||||
<action>This will use market research workflow with competitive focus</action>
|
||||
<action>LOAD: {installed_path}/instructions-market.md</action>
|
||||
<action>Pass mode="competitive" to focus on competitive intelligence</action>
|
||||
</check>
|
||||
|
||||
<check>If research_type == "5" OR "user":</check>
|
||||
<action>Set research_mode = "user"</action>
|
||||
<action>This will use market research workflow with user research focus</action>
|
||||
<action>LOAD: {installed_path}/instructions-market.md</action>
|
||||
<action>Pass mode="user" to focus on customer insights</action>
|
||||
<check if="research_type == 4 or fuzzy match competitive">
|
||||
<action>Set research_mode = "competitive"</action>
|
||||
<action>This will use market research workflow with competitive focus</action>
|
||||
<action>LOAD: {installed_path}/instructions-market.md</action>
|
||||
<action>Pass mode="competitive" to focus on competitive intelligence</action>
|
||||
|
||||
<check>If research_type == "6" OR "domain" OR "industry":</check>
|
||||
<action>Set research_mode = "domain"</action>
|
||||
<action>This will use market research workflow with domain focus</action>
|
||||
<action>LOAD: {installed_path}/instructions-market.md</action>
|
||||
<action>Pass mode="domain" to focus on industry/domain analysis</action>
|
||||
</check>
|
||||
|
||||
<critical>The loaded instruction set will continue from here with full context</critical>
|
||||
<check if="research_type == 5 or fuzzy match user research">
|
||||
<action>Set research_mode = "user"</action>
|
||||
<action>This will use market research workflow with user research focus</action>
|
||||
<action>LOAD: {installed_path}/instructions-market.md</action>
|
||||
<action>Pass mode="user" to focus on customer insights</action>
|
||||
|
||||
</check>
|
||||
|
||||
<check if="research_type == 6 or fuzzy match domain or industry or category">
|
||||
<action>Set research_mode = "domain"</action>
|
||||
<action>This will use market research workflow with domain focus</action>
|
||||
<action>LOAD: {installed_path}/instructions-market.md</action>
|
||||
<action>Pass mode="domain" to focus on industry/domain analysis</action>
|
||||
</check>
|
||||
|
||||
<critical>The loaded instruction set will continue from here with full context of the {research_type}</critical>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
@@ -89,12 +89,11 @@ Consider:
|
||||
|
||||
If you have specific options, list them. Otherwise, I'll research current leading solutions based on your requirements.</ask>
|
||||
|
||||
<check>If user provides options:</check>
|
||||
<template-output>user_provided_options</template-output>
|
||||
<template-output if="user provides options">user_provided_options</template-output>
|
||||
|
||||
<check>If discovering options:</check>
|
||||
<action>Conduct web research to identify current leading solutions</action>
|
||||
<action>Search for:
|
||||
<check if="discovering options">
|
||||
<action>Conduct web research to identify current leading solutions</action>
|
||||
<action>Search for:
|
||||
|
||||
- "[technical_category] best tools 2025"
|
||||
- "[technical_category] comparison [use_case]"
|
||||
@@ -102,11 +101,13 @@ If you have specific options, list them. Otherwise, I'll research current leadin
|
||||
- "State of [technical_category] 2025"
|
||||
</action>
|
||||
|
||||
<elicit-required/>
|
||||
<elicit-required/>
|
||||
|
||||
<action>Present discovered options (typically 3-5 main candidates)</action>
|
||||
<template-output>technology_options</template-output>
|
||||
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
<step n="4" goal="Deep Dive Research on Each Option">
|
||||
@@ -283,7 +284,7 @@ For top 2-3 candidates:
|
||||
|
||||
<ask>Are you researching architecture patterns (microservices, event-driven, etc.)?</ask>
|
||||
|
||||
<check>If yes:</check>
|
||||
<check if="yes">
|
||||
|
||||
Research and document:
|
||||
|
||||
@@ -308,6 +309,7 @@ Research and document:
|
||||
- Operational overhead
|
||||
|
||||
<template-output>architecture_pattern_analysis</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -433,9 +435,10 @@ Create ADR format documentation:
|
||||
|
||||
Select option (1-5):</ask>
|
||||
|
||||
<check>If option 4:</check>
|
||||
<action>LOAD: {installed_path}/instructions-deep-prompt.md</action>
|
||||
<action>Pre-populate with technical research context</action>
|
||||
<check if="option 4">
|
||||
<action>LOAD: {installed_path}/instructions-deep-prompt.md</action>
|
||||
<action>Pre-populate with technical research context</action>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
@@ -15,49 +15,48 @@
|
||||
<action>Load project-workflow-analysis.md</action>
|
||||
<action>Confirm project_type == "game"</action>
|
||||
|
||||
<check>If continuation_mode == true:</check>
|
||||
<action>Load existing GDD.md and check completion status</action>
|
||||
<ask>Found existing work. Would you like to:
|
||||
<check if="continuation_mode == true">
|
||||
<action>Load existing GDD.md and check completion status</action>
|
||||
<ask>Found existing work. Would you like to:
|
||||
1. Review what's done and continue
|
||||
2. Modify existing sections
|
||||
3. Start fresh
|
||||
</ask>
|
||||
<action>If continuing, skip to first incomplete section</action>
|
||||
</check>
|
||||
|
||||
1. Review what's done and continue
|
||||
2. Modify existing sections
|
||||
3. Start fresh
|
||||
</ask>
|
||||
<action>If continuing, skip to first incomplete section</action>
|
||||
<action if="new or starting fresh">Check or existing game-brief in output_folder</action>
|
||||
|
||||
<check>If new or starting fresh:</check>
|
||||
Check `output_folder` for existing game docs.
|
||||
|
||||
<action>Check for existing game-brief in output_folder</action>
|
||||
|
||||
<check>If game-brief exists:</check>
|
||||
<ask>Found existing game brief! Would you like to:
|
||||
<check if="game-brief exists">
|
||||
<ask>Found existing game brief! Would you like to:
|
||||
|
||||
1. Use it as input (recommended - I'll extract key info)
|
||||
2. Ignore it and start fresh
|
||||
</ask>
|
||||
</check>
|
||||
|
||||
Your choice:</ask>
|
||||
<check if="using game-brief">
|
||||
<action>Load and analyze game-brief document</action>
|
||||
<action>Extract: game_name, core_concept, target_audience, platforms, game_pillars, primary_mechanics</action>
|
||||
<action>Pre-fill relevant GDD sections with game-brief content</action>
|
||||
<action>Note which sections were pre-filled from brief</action>
|
||||
|
||||
<check>If using game-brief:</check>
|
||||
<action>Load and analyze game-brief document</action>
|
||||
<action>Extract: game_name, core_concept, target_audience, platforms, game_pillars, primary_mechanics</action>
|
||||
<action>Pre-fill relevant GDD sections with game-brief content</action>
|
||||
<action>Note which sections were pre-filled from brief</action>
|
||||
</check>
|
||||
|
||||
<check>If no game-brief was loaded:</check>
|
||||
<ask>Describe your game in 1-2 sentences:
|
||||
|
||||
What is it about? What does the player do?</ask>
|
||||
<check if="no game-brief was loaded">
|
||||
<ask>Describe your game. What is it about? What does the player do? What is the Genre or type?</ask>
|
||||
|
||||
<action>Analyze description to determine game type</action>
|
||||
<action>Map to closest game_types.csv id or use "custom"</action>
|
||||
</check>
|
||||
|
||||
<check>Else (game-brief was loaded):</check>
|
||||
<action>Use game concept from brief to determine game type</action>
|
||||
<check if="else (game-brief was loaded)">
|
||||
<action>Use game concept from brief to determine game type</action>
|
||||
|
||||
<ask optional="true">I've identified this as a **{{game_type}}** game. Is that correct?
|
||||
|
||||
If not, briefly describe what type it should be:</ask>
|
||||
<ask optional="true">
|
||||
I've identified this as a **{{game_type}}** game. Is that correct?
|
||||
If not, briefly describe what type it should be:
|
||||
</ask>
|
||||
|
||||
<action>Map selection to game_types.csv id</action>
|
||||
<action>Load corresponding fragment file from game-types/ folder</action>
|
||||
@@ -68,6 +67,7 @@ If not, briefly describe what type it should be:</ask>
|
||||
Get core game concept and vision.
|
||||
|
||||
<template-output>description</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -383,14 +383,16 @@ Your metrics:</ask>
|
||||
|
||||
<action>Check if game-type fragment contained narrative tags</action>
|
||||
|
||||
<check>If fragment had <narrative-workflow-critical> or <narrative-workflow-recommended>:</check>
|
||||
<action>Set needs_narrative = true</action>
|
||||
<action>Extract narrative importance level from tag</action>
|
||||
<check if="fragment had <narrative-workflow-critical> or <narrative-workflow-recommended>">
|
||||
<action>Set needs_narrative = true</action>
|
||||
<action>Extract narrative importance level from tag</action>
|
||||
|
||||
## Next Steps for {{game_name}}
|
||||
|
||||
<check>If needs_narrative == true:</check>
|
||||
<ask>This game type ({{game_type}}) is **{{narrative_importance}}** for narrative.
|
||||
</check>
|
||||
|
||||
<check if="needs_narrative == true">
|
||||
<ask>This game type ({{game_type}}) is **{{narrative_importance}}** for narrative.
|
||||
|
||||
Your game would benefit from a Narrative Design Document to detail:
|
||||
|
||||
@@ -408,10 +410,12 @@ Would you like to create a Narrative Design Document now?
|
||||
|
||||
Your choice:</ask>
|
||||
|
||||
<check>If user selects option 1:</check>
|
||||
<action>LOAD: {installed_path}/narrative/instructions-narrative.md</action>
|
||||
<action>Pass GDD context to narrative workflow</action>
|
||||
<action>Exit current workflow (narrative will hand off to solutioning when done)</action>
|
||||
</check>
|
||||
|
||||
<check if="user selects option 1 or fuzzy indicates wanting to create the narrative design document">
|
||||
<invoke-workflow>{project-root}/bmad/bmm/workflows/2-plan/narrative/workflow.yaml</invoke-workflow>
|
||||
<action>Pass GDD context to narrative workflow</action>
|
||||
<action>Exit current workflow (narrative will hand off to solutioning when done)</action>
|
||||
|
||||
Since this is a Level {{project_level}} game project, you need solutioning for platform/engine architecture.
|
||||
|
||||
@@ -476,7 +480,9 @@ Since this is a Level {{project_level}} game project, you need solutioning for p
|
||||
|
||||
<ask>GDD Complete! Next immediate action:
|
||||
|
||||
<check>If needs_narrative == true:</check>
|
||||
</check>
|
||||
|
||||
<check if="needs_narrative == true">
|
||||
|
||||
1. Create Narrative Design Document (recommended for {{game_type}})
|
||||
2. Start solutioning workflow (engine/architecture)
|
||||
@@ -485,7 +491,9 @@ Since this is a Level {{project_level}} game project, you need solutioning for p
|
||||
5. Review GDD with team/stakeholders
|
||||
6. Exit workflow
|
||||
|
||||
<check>Else:</check>
|
||||
</check>
|
||||
|
||||
<check if="else">
|
||||
|
||||
1. Start solutioning workflow (engine/architecture)
|
||||
2. Create prototype build
|
||||
@@ -494,10 +502,12 @@ Since this is a Level {{project_level}} game project, you need solutioning for p
|
||||
5. Exit workflow
|
||||
|
||||
Which would you like to proceed with?</ask>
|
||||
</check>
|
||||
|
||||
<check>If user selects narrative option:</check>
|
||||
<action>LOAD: {installed_path}/narrative/instructions-narrative.md</action>
|
||||
<action>Pass GDD context to narrative workflow</action>
|
||||
<check if="user selects narrative option">
|
||||
<invoke-workflow>{project-root}/bmad/bmm/workflows/2-plan/narrative/workflow.yaml</invoke-workflow>
|
||||
<action>Pass GDD context to narrative workflow</action>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
99
src/modules/bmm/workflows/2-plan/gdd/workflow.yaml
Normal file
99
src/modules/bmm/workflows/2-plan/gdd/workflow.yaml
Normal file
@@ -0,0 +1,99 @@
|
||||
# Game Design Document (GDD) Workflow
|
||||
name: gdd
|
||||
description: "Game Design Document workflow for all game project levels - from small prototypes to full AAA games. Generates comprehensive GDD with game mechanics, systems, progression, and implementation guidance."
|
||||
author: "BMad"
|
||||
|
||||
# Critical variables from config
|
||||
config_source: "{project-root}/bmad/bmm/config.yaml"
|
||||
output_folder: "{config_source}:output_folder"
|
||||
user_name: "{config_source}:user_name"
|
||||
date: system-generated
|
||||
|
||||
# Workflow components
|
||||
installed_path: "{project-root}/bmad/bmm/workflows/2-plan/gdd"
|
||||
instructions: "{installed_path}/instructions-gdd.md"
|
||||
template: "{installed_path}/gdd-template.md"
|
||||
game_types_csv: "{installed_path}/game-types.csv"
|
||||
|
||||
# Output configuration
|
||||
default_output_file: "{output_folder}/GDD.md"
|
||||
|
||||
# Game type references (loaded based on game type selection)
|
||||
game_type_guides: "{installed_path}/game-types/"
|
||||
|
||||
# Recommended input documents
|
||||
recommended_inputs:
|
||||
- game_brief: "{output_folder}/game-brief.md"
|
||||
- narrative_design: "{output_folder}/narrative-design.md"
|
||||
- market_research: "{output_folder}/market-research.md"
|
||||
|
||||
# Claude Code integration points
|
||||
claude_code_enhancements:
|
||||
- injection_point: "game-design-subagents"
|
||||
- available_subagents:
|
||||
- game-designer: "Core game mechanics and systems design"
|
||||
- game-architect: "Technical architecture for game systems"
|
||||
- user-researcher: "Player experience and engagement"
|
||||
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints throughout
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential design process
|
||||
|
||||
# Game frameworks available
|
||||
frameworks:
|
||||
- "MDA Framework (Mechanics, Dynamics, Aesthetics)"
|
||||
- "Core Loop Design"
|
||||
- "Progression Systems"
|
||||
- "Economy Design"
|
||||
- "Difficulty Curves"
|
||||
- "Player Psychology"
|
||||
- "Game Feel and Juice"
|
||||
|
||||
web_bundle:
|
||||
name: "gdd"
|
||||
description: "Game Design Document workflow for all game project levels - from small prototypes to full AAA games. Generates comprehensive GDD with game mechanics, systems, progression, and implementation guidance."
|
||||
author: "BMad"
|
||||
instructions: "bmad/bmm/workflows/2-plan/gdd/instructions-gdd.md"
|
||||
use_advanced_elicitation: true
|
||||
web_bundle_files:
|
||||
- "bmad/bmm/workflows/2-plan/gdd/instructions-gdd.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/gdd-template.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types.csv"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/action-platformer.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/adventure.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/card-game.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/fighting.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/horror.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/idle-incremental.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/metroidvania.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/moba.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/party-game.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/puzzle.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/racing.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/rhythm.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/roguelike.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/rpg.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/sandbox.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/shooter.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/simulation.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/sports.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/strategy.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/survival.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/text-based.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/tower-defense.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/turn-based-tactics.md"
|
||||
- "bmad/bmm/workflows/2-plan/gdd/game-types/visual-novel.md"
|
||||
# Game frameworks available
|
||||
frameworks:
|
||||
- "MDA Framework (Mechanics, Dynamics, Aesthetics)"
|
||||
- "Core Loop Design"
|
||||
- "Progression Systems"
|
||||
- "Economy Design"
|
||||
- "Difficulty Curves"
|
||||
- "Player Psychology"
|
||||
- "Game Feel and Juice"
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints throughout
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential design process
|
||||
@@ -10,9 +10,9 @@
|
||||
|
||||
<action>Check if {output_folder}/project-workflow-analysis.md exists</action>
|
||||
|
||||
<check>If exists:</check>
|
||||
<action>Load the analysis file</action>
|
||||
<action>Check for existing workflow outputs based on level in analysis:</action>
|
||||
<check if="exists">
|
||||
<action>Load the analysis file</action>
|
||||
<action>Check for existing workflow outputs based on level in analysis:</action>
|
||||
|
||||
- Level 0: Check for tech-spec.md
|
||||
- Level 1-2: Check for PRD.md, epic-stories.md, tech-spec.md
|
||||
@@ -30,8 +30,11 @@ Options:
|
||||
3. Review and modify previous analysis
|
||||
</ask>
|
||||
|
||||
<check>If not exists or starting fresh:</check>
|
||||
<action>Proceed to assessment</action>
|
||||
</check>
|
||||
|
||||
<check if="not exists or starting fresh">
|
||||
<action>Proceed to assessment</action>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -49,18 +52,21 @@ Options:
|
||||
Select an option or describe your needs:
|
||||
</ask>
|
||||
|
||||
<check>If "UX/UI specification only":</check>
|
||||
<action>LOAD: {installed_path}/ux/instructions-ux.md</action>
|
||||
<action>Pass mode="standalone" to UX instructions</action>
|
||||
<action>Skip remaining router steps</action>
|
||||
<action>Capture user selection as {{planning_type}}</action>
|
||||
|
||||
<check>If "Generate AI Frontend Prompt":</check>
|
||||
<action>Check for existing UX spec or PRD</action>
|
||||
<invoke-task>{project-root}/bmad/bmm/tasks/ai-fe-prompt.md</invoke-task>
|
||||
<action>Exit workflow after prompt generation</action>
|
||||
<check if='{{planning_type}} == "2" OR "UX/UI specification only"'>
|
||||
<invoke-workflow>{installed_path}/ux/workflow.yaml</invoke-workflow>
|
||||
<action>Pass mode="standalone" to UX workflow</action>
|
||||
<action>Exit router workflow (skip remaining steps)</action>
|
||||
</check>
|
||||
|
||||
<check>If "Tech spec only" or "Full project planning":</check>
|
||||
<action>Continue to step 3 for project assessment</action>
|
||||
<check if='{{planning_type}} == "4" OR "Generate AI Frontend Prompt"'>
|
||||
<action>Check for existing UX spec or PRD</action>
|
||||
<invoke-task>{project-root}/bmad/bmm/tasks/ai-fe-prompt.md</invoke-task>
|
||||
<action>Exit router workflow after prompt generation</action>
|
||||
</check>
|
||||
|
||||
<action if='{{planning_type}} == "1" OR "3" OR "Tech spec only" OR "Full project planning"'>Continue to step 3 for project assessment</action>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -89,10 +95,11 @@ c. Working with messy/legacy code (needs refactoring)
|
||||
|
||||
<action>Detect if project_type == "game"</action>
|
||||
|
||||
<check>If project_type == "game":</check>
|
||||
<action>Set workflow_type = "gdd"</action>
|
||||
<action>Skip level classification (GDD workflow handles all game project levels)</action>
|
||||
<action>Jump to step 5 for GDD-specific assessment</action>
|
||||
<check if='project_type == "game"'>
|
||||
<action>Set workflow_type = "gdd"</action>
|
||||
<action>Skip level classification (GDD workflow handles all game project levels)</action>
|
||||
<action>Jump to step 5 for GDD-specific assessment</action>
|
||||
</check>
|
||||
|
||||
<action>Else, based on their description, analyze and suggest scope level:</action>
|
||||
|
||||
@@ -174,48 +181,33 @@ Generate comprehensive analysis with all assessment data.
|
||||
|
||||
<critical>Based on project type and level, load ONLY the needed instructions:</critical>
|
||||
|
||||
<check>If workflow_type == "gdd" (Game projects):</check>
|
||||
<action>LOAD: {installed_path}/gdd/instructions-gdd.md</action>
|
||||
<check>If continuing:</check>
|
||||
<check if='workflow_type == "gdd"'>
|
||||
<invoke-workflow>{installed_path}/gdd/workflow.yaml</invoke-workflow>
|
||||
<action>GDD workflow handles all game project levels internally</action>
|
||||
</check>
|
||||
|
||||
- Load existing GDD.md if present
|
||||
- Check which sections are complete
|
||||
- Resume from last completed section
|
||||
- GDD workflow handles all game project levels internally
|
||||
<check if="Level 0">
|
||||
<invoke-workflow>{installed_path}/tech-spec/workflow.yaml</invoke-workflow>
|
||||
</check>
|
||||
|
||||
<check>If Level 0:</check>
|
||||
<action>LOAD: {installed_path}/tech-spec/instructions-sm.md</action>
|
||||
<check>If continuing:</check>
|
||||
<check if="Level 1-2">
|
||||
<invoke-workflow>{installed_path}/prd/workflow.yaml</invoke-workflow>
|
||||
<action>Pass level context to PRD workflow (loads instructions-med.md)</action>
|
||||
</check>
|
||||
|
||||
- Load existing tech-spec.md
|
||||
- Allow user to review and modify
|
||||
- Complete any missing sections
|
||||
<check if="Level 3-4">
|
||||
<invoke-workflow>{installed_path}/prd/workflow.yaml</invoke-workflow>
|
||||
<action>Pass level context to PRD workflow (loads instructions-lg.md)</action>
|
||||
</check>
|
||||
|
||||
<check>If Level 1-2:</check>
|
||||
<action>LOAD: {installed_path}/prd/instructions-med.md</action>
|
||||
<check>If continuing:</check>
|
||||
|
||||
- Load existing PRD.md if present
|
||||
- Check which sections are complete
|
||||
- Resume from last completed section
|
||||
- If PRD done, show solutioning handoff instructions
|
||||
|
||||
<check>If Level 3-4:</check>
|
||||
<action>LOAD: {installed_path}/prd/instructions-lg.md</action>
|
||||
<check>If continuing:</check>
|
||||
|
||||
- Load existing PRD.md and epics.md
|
||||
- Identify last completed step (check template variables)
|
||||
- Resume from incomplete sections
|
||||
- If all done, show architect handoff instructions
|
||||
|
||||
<critical>Pass continuation context to loaded instruction set:</critical>
|
||||
<critical>Pass continuation context to invoked workflow:</critical>
|
||||
|
||||
- continuation_mode: true/false
|
||||
- last_completed_step: {{step_number}}
|
||||
- existing_documents: {{document_list}}
|
||||
- project_level: {{level}}
|
||||
|
||||
<critical>The loaded instruction set should check continuation_mode and adjust accordingly</critical>
|
||||
<critical>The invoked workflow's instruction set should check continuation_mode and adjust accordingly</critical>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
<critical>This workflow creates detailed narrative content for story-driven games</critical>
|
||||
<critical>Uses narrative_template for output</critical>
|
||||
<critical>If users mention gameplay mechanics, note them but keep focus on narrative</critical>
|
||||
<critical>Facilitate good brainstorming techniques throughout with the user, pushing them to come up with much of the narrative you will help weave together. The goal is for the user to feel that they crafted the narrative and story arc unless they push you to do it all or indicate YOLO</critical>
|
||||
|
||||
<step n="1" goal="Load GDD context and assess narrative complexity">
|
||||
|
||||
@@ -26,7 +27,7 @@ Your game type ({{game_type}}) suggests **{{suggested_complexity}}**. Confirm or
|
||||
|
||||
<action>Set narrative_complexity</action>
|
||||
|
||||
<check>If complexity == "Light":</check>
|
||||
<check if="complexity == "Light"">
|
||||
<ask>Light narrative games usually don't need a full Narrative Design Document. Are you sure you want to continue?
|
||||
|
||||
- GDD story sections may be sufficient
|
||||
@@ -37,6 +38,8 @@ Your choice:</ask>
|
||||
|
||||
<action>Load narrative_template from workflow.yaml</action>
|
||||
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
<step n="2" goal="Define narrative premise and themes">
|
||||
@@ -304,8 +307,8 @@ Your key conversations:</ask>
|
||||
|
||||
<template-output>key_conversations</template-output>
|
||||
|
||||
<check>If game has branching dialogue:</check>
|
||||
<ask>Describe your branching dialogue system.
|
||||
<check if="game has branching dialogue">
|
||||
<ask>Describe your branching dialogue system.
|
||||
|
||||
- How many branches/paths?
|
||||
- What determines branches? (stats, choices, flags)
|
||||
@@ -315,6 +318,7 @@ Your key conversations:</ask>
|
||||
Your branching system:</ask>
|
||||
|
||||
<template-output>branching_dialogue</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -397,8 +401,8 @@ Your optional content:</ask>
|
||||
|
||||
<template-output>optional_content</template-output>
|
||||
|
||||
<check>If multiple endings:</check>
|
||||
<ask>Describe your ending structure.
|
||||
<check if="multiple endings">
|
||||
<ask>Describe your ending structure.
|
||||
|
||||
- How many endings?
|
||||
- What determines ending? (choices, stats, completion)
|
||||
@@ -408,6 +412,7 @@ Your optional content:</ask>
|
||||
Your endings:</ask>
|
||||
|
||||
<template-output>multiple_endings</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
63
src/modules/bmm/workflows/2-plan/narrative/workflow.yaml
Normal file
63
src/modules/bmm/workflows/2-plan/narrative/workflow.yaml
Normal file
@@ -0,0 +1,63 @@
|
||||
# Narrative Design Workflow
|
||||
name: narrative
|
||||
description: "Narrative design workflow for story-driven games and applications. Creates comprehensive narrative documentation including story structure, character arcs, dialogue systems, and narrative implementation guidance."
|
||||
author: "BMad"
|
||||
|
||||
# Critical variables from config
|
||||
config_source: "{project-root}/bmad/bmm/config.yaml"
|
||||
output_folder: "{config_source}:output_folder"
|
||||
user_name: "{config_source}:user_name"
|
||||
date: system-generated
|
||||
|
||||
# Workflow components
|
||||
installed_path: "{project-root}/bmad/bmm/workflows/2-plan/narrative"
|
||||
instructions: "{installed_path}/instructions-narrative.md"
|
||||
template: "{installed_path}/narrative-template.md"
|
||||
|
||||
# Output configuration
|
||||
default_output_file: "{output_folder}/narrative-design.md"
|
||||
|
||||
# Recommended input documents
|
||||
recommended_inputs:
|
||||
- game_brief: "{output_folder}/game-brief.md"
|
||||
- gdd: "{output_folder}/GDD.md"
|
||||
- product_brief: "{output_folder}/product-brief.md"
|
||||
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints throughout
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential narrative development
|
||||
|
||||
# Narrative frameworks available
|
||||
frameworks:
|
||||
- "Hero's Journey"
|
||||
- "Three-Act Structure"
|
||||
- "Character Arc Development"
|
||||
- "Branching Narrative Design"
|
||||
- "Environmental Storytelling"
|
||||
- "Dialogue Systems"
|
||||
- "Narrative Pacing"
|
||||
|
||||
web_bundle:
|
||||
name: "narrative"
|
||||
description: "Narrative design workflow for story-driven games and applications. Creates comprehensive narrative documentation including story structure, character arcs, dialogue systems, and narrative implementation guidance."
|
||||
author: "BMad"
|
||||
instructions: "bmad/bmm/workflows/2-plan/narrative/instructions-narrative.md"
|
||||
use_advanced_elicitation: true
|
||||
web_bundle_files:
|
||||
- "bmad/bmm/workflows/2-plan/narrative/instructions-narrative.md"
|
||||
- "bmad/bmm/workflows/2-plan/narrative/narrative-template.md"
|
||||
recommended_inputs: "PRD, Product Brief, Brain Storming Report, GDD"
|
||||
# Narrative frameworks available
|
||||
frameworks:
|
||||
- "Hero's Journey"
|
||||
- "Three-Act Structure"
|
||||
- "Character Arc Development"
|
||||
- "Branching Narrative Design"
|
||||
- "Environmental Storytelling"
|
||||
- "Dialogue Systems"
|
||||
- "Narrative Pacing"
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints throughout
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential narrative development
|
||||
@@ -15,18 +15,19 @@
|
||||
<action>Load project-workflow-analysis.md</action>
|
||||
<action>Confirm Level 3-4 - Full product or platform</action>
|
||||
|
||||
<check>If continuation_mode == true:</check>
|
||||
<action>Load existing PRD.md and check completion status</action>
|
||||
<ask>Found existing work. Would you like to:
|
||||
<check if="continuation_mode == true">
|
||||
<action>Load existing PRD.md and check completion status</action>
|
||||
<ask>Found existing work. Would you like to:
|
||||
|
||||
1. Review what's done and continue
|
||||
2. Modify existing sections
|
||||
3. Start fresh
|
||||
</ask>
|
||||
<action>If continuing, skip to first incomplete section</action>
|
||||
</check>
|
||||
|
||||
<check>If new or starting fresh:</check>
|
||||
Check `output_folder` for `product_brief`, `market_research`, and other docs.
|
||||
<check if="new or starting fresh">
|
||||
Check `output_folder` for `product_brief`, `market_research`, and other docs.
|
||||
|
||||
<critical>For Level 3-4, Product Brief is STRONGLY recommended</critical>
|
||||
|
||||
@@ -35,6 +36,7 @@ Check `output_folder` for `product_brief`, `market_research`, and other docs.
|
||||
Get comprehensive description of the project vision.
|
||||
|
||||
<template-output>description</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -200,15 +202,10 @@ Since this is a Level {{project_level}} project, you need architecture before st
|
||||
- Input: PRD.md, epics.md
|
||||
- Output: architecture.md
|
||||
|
||||
<check>If project has significant UX/UI components (Level 3-4 typically does):</check>
|
||||
<check if="project has significant UX/UI components (Level 3-4 typically does)">
|
||||
|
||||
- [ ] **Run UX specification workflow** (HIGHLY RECOMMENDED for user-facing systems)
|
||||
- Command: `workflow plan-project` then select "UX specification"
|
||||
- Or continue within this workflow if UI-heavy
|
||||
- Input: PRD.md, epics.md, architecture.md (once available)
|
||||
- Output: ux-specification.md
|
||||
- Optional: AI Frontend Prompt for rapid prototyping
|
||||
- Note: Creates comprehensive UX/UI spec including IA, user flows, components
|
||||
- [ ] **Run UX specification workflow** (HIGHLY RECOMMENDED for user-facing systems) - Command: `workflow plan-project` then select "UX specification" - Or continue within this workflow if UI-heavy - Input: PRD.md, epics.md, architecture.md (once available) - Output: ux-specification.md - Optional: AI Frontend Prompt for rapid prototyping - Note: Creates comprehensive UX/UI spec including IA, user flows, components
|
||||
</check>
|
||||
|
||||
### Phase 2: Detailed Planning
|
||||
|
||||
@@ -246,7 +243,7 @@ Since this is a Level {{project_level}} project, you need architecture before st
|
||||
|
||||
<ask>Project Planning Complete! Next immediate action:
|
||||
|
||||
1. Start architecture workflow
|
||||
1. Start architecture workflow with the architect in a new context window
|
||||
2. Create UX specification (if UI-heavy project)
|
||||
3. Generate AI Frontend Prompt (if UX complete)
|
||||
4. Review all outputs with stakeholders
|
||||
@@ -255,12 +252,14 @@ Since this is a Level {{project_level}} project, you need architecture before st
|
||||
|
||||
Which would you like to proceed with?</ask>
|
||||
|
||||
<check>If user selects option 2:</check>
|
||||
<action>LOAD: {installed_path}/ux/instructions-ux.md</action>
|
||||
<action>Pass mode="integrated" with Level 3-4 context</action>
|
||||
<check if="user selects option 2">
|
||||
<invoke-workflow>{project-root}/bmad/bmm/workflows/2-plan/ux/workflow.yaml</invoke-workflow>
|
||||
<action>Pass mode="integrated" with Level 3-4 context</action>
|
||||
</check>
|
||||
|
||||
<check>If user selects option 3:</check>
|
||||
<invoke-task>{project-root}/bmad/bmm/tasks/ai-fe-prompt.md</invoke-task>
|
||||
<check if="user selects option 3">
|
||||
<invoke-task>{project-root}/bmad/bmm/tasks/ai-fe-prompt.md</invoke-task>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
@@ -15,24 +15,25 @@
|
||||
<action>Load project-workflow-analysis.md</action>
|
||||
<action>Confirm Level 1-2 - Feature or small system</action>
|
||||
|
||||
<check>If continuation_mode == true:</check>
|
||||
<action>Load existing PRD.md and check completion status</action>
|
||||
<ask>Found existing work. Would you like to:
|
||||
<check if="continuation_mode == true">
|
||||
<action>Load existing PRD.md and check completion status</action>
|
||||
<ask>Found existing work. Would you like to:
|
||||
|
||||
1. Review what's done and continue
|
||||
2. Modify existing sections
|
||||
3. Start fresh
|
||||
</ask>
|
||||
<action>If continuing, skip to first incomplete section</action>
|
||||
</check>
|
||||
|
||||
<check>If new or starting fresh:</check>
|
||||
Check `output_folder` for existing docs. Ask user if they have a Product Brief.
|
||||
<check if="new or starting fresh">
|
||||
Check `output_folder` for existing docs. Ask user if they have a Product Brief.
|
||||
|
||||
<action>Load prd_template from workflow.yaml</action>
|
||||
|
||||
<critical>Get the core idea of what they're building</critical>
|
||||
<critical>Discuss with them to get the core idea of what they're building</critical>
|
||||
|
||||
<template-output>description</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -155,13 +156,15 @@ Only document ACTUAL assumptions from discussion.
|
||||
|
||||
Run cohesion validation? (y/n)</ask>
|
||||
|
||||
<check>If yes:</check>
|
||||
<action>Load {installed_path}/checklist.md</action>
|
||||
<action>Review all outputs against "Cohesion Validation (All Levels)" section</action>
|
||||
<action>Validate PRD sections, then cohesion sections A-H as applicable</action>
|
||||
<action>Apply Section B (Greenfield) or Section C (Brownfield) based on field_type</action>
|
||||
<action>Include Section E (UI/UX) if UI components exist</action>
|
||||
<action>Generate comprehensive validation report with findings</action>
|
||||
<check if="yes">
|
||||
<action>Load {installed_path}/checklist.md</action>
|
||||
<action>Review all outputs against "Cohesion Validation (All Levels)" section</action>
|
||||
<action>Validate PRD sections, then cohesion sections A-H as applicable</action>
|
||||
<action>Apply Section B (Greenfield) or Section C (Brownfield) based on field_type</action>
|
||||
<action>Include Section E (UI/UX) if UI components exist</action>
|
||||
<action>Generate comprehensive validation report with findings</action>
|
||||
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -194,15 +197,10 @@ Since this is a Level {{project_level}} project, you need solutioning before imp
|
||||
- Input: PRD.md, epic-stories.md
|
||||
- Output: solution-architecture.md, tech-spec-epic-N.md files
|
||||
|
||||
<check>If project has significant UX/UI components (Level 1-2 with UI):</check>
|
||||
<check if="project has significant UX/UI components (Level 1-2 with UI)">
|
||||
|
||||
- [ ] **Run UX specification workflow** (HIGHLY RECOMMENDED for user-facing systems)
|
||||
- Command: `workflow plan-project` then select "UX specification"
|
||||
- Or continue within this workflow if UI-heavy
|
||||
- Input: PRD.md, epic-stories.md, solution-architecture.md (once available)
|
||||
- Output: ux-specification.md
|
||||
- Optional: AI Frontend Prompt for rapid prototyping
|
||||
- Note: Creates comprehensive UX/UI spec including IA, user flows, components
|
||||
- [ ] **Run UX specification workflow** (HIGHLY RECOMMENDED for user-facing systems) - Command: `workflow plan-project` then select "UX specification" - Or continue within this workflow if UI-heavy - Input: PRD.md, epic-stories.md, solution-architecture.md (once available) - Output: ux-specification.md - Optional: AI Frontend Prompt for rapid prototyping - Note: Creates comprehensive UX/UI spec including IA, user flows, components
|
||||
</check>
|
||||
|
||||
### Phase 2: Detailed Planning
|
||||
|
||||
@@ -239,12 +237,16 @@ Since this is a Level {{project_level}} project, you need solutioning before imp
|
||||
|
||||
Which would you like to proceed with?</ask>
|
||||
|
||||
<check>If user selects option 2:</check>
|
||||
<action>LOAD: {installed_path}/ux/instructions-ux.md</action>
|
||||
<action>Pass mode="integrated" with Level 1-2 context</action>
|
||||
<check if="user selects option 2">
|
||||
<invoke-workflow>{project-root}/bmad/bmm/workflows/2-plan/ux/workflow.yaml</invoke-workflow>
|
||||
<action>Pass mode="integrated" with Level 1-2 context</action>
|
||||
|
||||
<check>If user selects option 3:</check>
|
||||
<invoke-task>{project-root}/bmad/bmm/tasks/ai-fe-prompt.md</invoke-task>
|
||||
</check>
|
||||
|
||||
<check if="user selects option 3">
|
||||
<invoke-task>{project-root}/bmad/bmm/tasks/ai-fe-prompt.md</invoke-task>
|
||||
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
95
src/modules/bmm/workflows/2-plan/prd/workflow.yaml
Normal file
95
src/modules/bmm/workflows/2-plan/prd/workflow.yaml
Normal file
@@ -0,0 +1,95 @@
|
||||
# Product Requirements Document (PRD) Workflow
|
||||
name: prd
|
||||
description: "Scale-adaptive PRD workflow for project levels 1-4. Level 1-2: focused PRD + solutioning handoff. Level 3-4: full PRD with epics + architect handoff. Automatically adjusts scope based on project complexity."
|
||||
author: "BMad"
|
||||
|
||||
# Critical variables from config
|
||||
config_source: "{project-root}/bmad/bmm/config.yaml"
|
||||
project_name: "{config_source}:project_name"
|
||||
output_folder: "{config_source}:output_folder"
|
||||
user_name: "{config_source}:user_name"
|
||||
date: system-generated
|
||||
|
||||
# Workflow components
|
||||
installed_path: "{project-root}/bmad/bmm/workflows/2-plan/prd"
|
||||
|
||||
# Instructions - routes to appropriate level-based instructions
|
||||
instructions_med: "{installed_path}/instructions-med.md" # Level 1-2
|
||||
instructions_lg: "{installed_path}/instructions-lg.md" # Level 3-4
|
||||
|
||||
# Templates
|
||||
prd_template: "{installed_path}/prd-template.md"
|
||||
analysis_template: "{installed_path}/analysis-template.md"
|
||||
epics_template: "{installed_path}/epics-template.md"
|
||||
|
||||
# Output configuration
|
||||
analysis_file: "{output_folder}/project-workflow-analysis.md"
|
||||
default_output_file: "{output_folder}/PRD.md"
|
||||
epics_output_file: "{output_folder}/epics.md"
|
||||
validation_output_file: "{output_folder}/PRD-validation-report.md"
|
||||
|
||||
# Recommended input documents
|
||||
recommended_inputs:
|
||||
- product_brief: "{output_folder}/product-brief.md"
|
||||
- market_research: "{output_folder}/market-research.md"
|
||||
|
||||
# Scale parameters - adaptive by project level
|
||||
scale_parameters:
|
||||
level_1: "1-10 stories, 1 epic, minimal PRD + solutioning handoff"
|
||||
level_2: "5-15 stories, 1-2 epics, focused PRD + solutioning handoff"
|
||||
level_3: "12-40 stories, 2-5 epics, full PRD + architect handoff"
|
||||
level_4: "40+ stories, 5+ epics, enterprise PRD + architect handoff"
|
||||
|
||||
# Claude Code integration points
|
||||
claude_code_enhancements:
|
||||
- injection_point: "prd-subagents"
|
||||
- available_subagents:
|
||||
- requirements-analyst: "Requirements analysis and refinement"
|
||||
- user-journey-mapper: "User journey and epic boundaries"
|
||||
- epic-optimizer: "Epic scope optimization"
|
||||
- document-reviewer: "PRD quality validation"
|
||||
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints throughout
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential planning process
|
||||
|
||||
# Product frameworks available
|
||||
frameworks:
|
||||
- "Jobs-to-be-Done"
|
||||
- "User Story Mapping"
|
||||
- "Epic Decomposition"
|
||||
- "Acceptance Criteria"
|
||||
- "MoSCoW Prioritization"
|
||||
|
||||
web_bundle:
|
||||
name: "prd"
|
||||
description: "Scale-adaptive PRD workflow for project levels 1-4. Level 1-2: focused PRD + solutioning handoff. Level 3-4: full PRD with epics + architect handoff. Automatically adjusts scope based on project complexity."
|
||||
author: "BMad"
|
||||
# Note: Router workflow will load appropriate instructions based on level
|
||||
instructions_med: "bmad/bmm/workflows/2-plan/prd/instructions-med.md"
|
||||
instructions_lg: "bmad/bmm/workflows/2-plan/prd/instructions-lg.md"
|
||||
use_advanced_elicitation: true
|
||||
web_bundle_files:
|
||||
- "bmad/bmm/workflows/2-plan/prd/instructions-med.md"
|
||||
- "bmad/bmm/workflows/2-plan/prd/instructions-lg.md"
|
||||
- "bmad/bmm/workflows/2-plan/prd/prd-template.md"
|
||||
- "bmad/bmm/workflows/2-plan/prd/analysis-template.md"
|
||||
- "bmad/bmm/workflows/2-plan/prd/epics-template.md"
|
||||
# Scale parameters - adaptive by project level
|
||||
scale_parameters:
|
||||
level_1: "1-10 stories, 1 epic, minimal PRD + solutioning handoff"
|
||||
level_2: "5-15 stories, 1-2 epics, focused PRD + solutioning handoff"
|
||||
level_3: "12-40 stories, 2-5 epics, full PRD + architect handoff"
|
||||
level_4: "40+ stories, 5+ epics, enterprise PRD + architect handoff"
|
||||
# Product frameworks available
|
||||
frameworks:
|
||||
- "Jobs-to-be-Done"
|
||||
- "User Story Mapping"
|
||||
- "Epic Decomposition"
|
||||
- "Acceptance Criteria"
|
||||
- "MoSCoW Prioritization"
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints throughout
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential planning process
|
||||
@@ -74,12 +74,13 @@
|
||||
|
||||
Run cohesion validation? (y/n)</ask>
|
||||
|
||||
<check>If yes:</check>
|
||||
<action>Load {installed_path}/checklist.md</action>
|
||||
<action>Review tech-spec.md against "Cohesion Validation (All Levels)" section</action>
|
||||
<action>Focus on Section A (Tech Spec), Section D (Feature Sequencing)</action>
|
||||
<action>Apply Section B (Greenfield) or Section C (Brownfield) based on field_type</action>
|
||||
<action>Generate validation report with findings</action>
|
||||
<check if="yes">
|
||||
<action>Load {installed_path}/checklist.md</action>
|
||||
<action>Review tech-spec.md against "Cohesion Validation (All Levels)" section</action>
|
||||
<action>Focus on Section A (Tech Spec), Section D (Feature Sequencing)</action>
|
||||
<action>Apply Section B (Greenfield) or Section C (Brownfield) based on field_type</action>
|
||||
<action>Generate validation report with findings</action>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -99,19 +100,19 @@ Run cohesion validation? (y/n)</ask>
|
||||
|
||||
<action>Determine appropriate next steps for Level 0 atomic change</action>
|
||||
|
||||
<check>If change involves UI components:</check>
|
||||
|
||||
**Optional Next Steps:**
|
||||
|
||||
- [ ] **Create simple UX documentation** (if UI change is user-facing)
|
||||
- Note: Full instructions-ux workflow may be overkill for Level 0
|
||||
- Consider documenting just the specific UI change
|
||||
<check if="change involves UI components">
|
||||
- [ ] **Create simple UX documentation** (if UI change is user-facing)
|
||||
- Note: Full instructions-ux workflow may be overkill for Level 0
|
||||
- Consider documenting just the specific UI change
|
||||
</check>
|
||||
|
||||
- [ ] **Generate implementation task**
|
||||
- Command: `workflow task-generation`
|
||||
- Uses: tech-spec.md
|
||||
|
||||
<check>If change is backend/API only:</check>
|
||||
<check if="change is backend/API only">
|
||||
|
||||
**Recommended Next Steps:**
|
||||
|
||||
@@ -132,6 +133,8 @@ Run cohesion validation? (y/n)</ask>
|
||||
|
||||
Select option (1-4):</ask>
|
||||
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
</workflow>
|
||||
|
||||
64
src/modules/bmm/workflows/2-plan/tech-spec/workflow.yaml
Normal file
64
src/modules/bmm/workflows/2-plan/tech-spec/workflow.yaml
Normal file
@@ -0,0 +1,64 @@
|
||||
# Technical Specification Workflow (Level 0)
|
||||
name: tech-spec-sm
|
||||
description: "Technical specification workflow for Level 0 projects (single atomic changes). Creates focused tech spec for bug fixes, single endpoint additions, or small isolated changes. Tech-spec only - no PRD needed."
|
||||
author: "BMad"
|
||||
|
||||
# Critical variables from config
|
||||
config_source: "{project-root}/bmad/bmm/config.yaml"
|
||||
project_name: "{config_source}:project_name"
|
||||
output_folder: "{config_source}:output_folder"
|
||||
user_name: "{config_source}:user_name"
|
||||
date: system-generated
|
||||
|
||||
# Workflow components
|
||||
installed_path: "{project-root}/bmad/bmm/workflows/2-plan/tech-spec"
|
||||
instructions: "{installed_path}/instructions-sm.md"
|
||||
template: "{installed_path}/tech-spec-template.md"
|
||||
|
||||
# Output configuration
|
||||
default_output_file: "{output_folder}/tech-spec.md"
|
||||
|
||||
# Recommended input documents (optional for Level 0)
|
||||
recommended_inputs:
|
||||
- bug_report: "Bug description or issue ticket"
|
||||
- feature_request: "Brief feature description"
|
||||
|
||||
# Claude Code integration points
|
||||
claude_code_enhancements:
|
||||
- injection_point: "tech-spec-subagents"
|
||||
- available_subagents:
|
||||
- technical-evaluator: "Technology assessment and feasibility"
|
||||
- codebase-analyzer: "Existing code analysis"
|
||||
- pattern-detector: "Identify coding patterns to follow"
|
||||
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential specification
|
||||
|
||||
# Technical frameworks available
|
||||
frameworks:
|
||||
- "Technical Design Patterns"
|
||||
- "API Design Principles"
|
||||
- "Code Organization Standards"
|
||||
- "Testing Strategies"
|
||||
|
||||
web_bundle:
|
||||
name: "tech-spec-sm"
|
||||
description: "Technical specification workflow for Level 0 projects (single atomic changes). Creates focused tech spec for bug fixes, single endpoint additions, or small isolated changes. Tech-spec only - no PRD needed."
|
||||
author: "BMad"
|
||||
instructions: "bmad/bmm/workflows/2-plan/tech-spec/instructions-sm.md"
|
||||
use_advanced_elicitation: true
|
||||
web_bundle_files:
|
||||
- "bmad/bmm/workflows/2-plan/tech-spec/instructions-sm.md"
|
||||
- "bmad/bmm/workflows/2-plan/tech-spec/tech-spec-template.md"
|
||||
# Technical frameworks available
|
||||
frameworks:
|
||||
- "Technical Design Patterns"
|
||||
- "API Design Principles"
|
||||
- "Code Organization Standards"
|
||||
- "Testing Strategies"
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential specification
|
||||
@@ -12,15 +12,16 @@
|
||||
|
||||
<action>Determine workflow mode (standalone or integrated)</action>
|
||||
|
||||
<check>If mode="standalone":</check>
|
||||
<ask>Do you have an existing PRD or requirements document? (y/n)
|
||||
<check if="mode is standalone">
|
||||
<ask>Do you have an existing PRD or requirements document? (y/n)
|
||||
|
||||
If yes: Provide the path to the PRD
|
||||
If no: We'll gather basic requirements to create the UX spec
|
||||
</ask>
|
||||
</check>
|
||||
|
||||
<check>If no PRD in standalone mode:</check>
|
||||
<ask>Let's gather essential information:
|
||||
<check if="no PRD in standalone mode">
|
||||
<ask>Let's gather essential information:
|
||||
|
||||
1. **Project Description**: What are you building?
|
||||
2. **Target Users**: Who will use this?
|
||||
@@ -28,9 +29,10 @@ If no: We'll gather basic requirements to create the UX spec
|
||||
4. **Platform**: Web, mobile, desktop, or multi-platform?
|
||||
5. **Existing Brand/Design**: Any existing style guide or brand to follow?
|
||||
</ask>
|
||||
</check>
|
||||
|
||||
<check>If PRD exists or integrated mode:</check>
|
||||
<action>Load the following documents if available:</action>
|
||||
<check if="PRD exists or integrated mode">
|
||||
<action>Load the following documents if available:</action>
|
||||
|
||||
- PRD.md (primary source for requirements and user journeys)
|
||||
- epics.md or epic-stories.md (helps understand feature grouping)
|
||||
@@ -38,6 +40,8 @@ If no: We'll gather basic requirements to create the UX spec
|
||||
- architecture.md (if Level 3-4 project)
|
||||
- project-workflow-analysis.md (understand project level and scope)
|
||||
|
||||
</check>
|
||||
|
||||
<action>Analyze project for UX complexity:</action>
|
||||
|
||||
- Number of user-facing features
|
||||
@@ -225,13 +229,14 @@ This is recommended for:
|
||||
- Complex state transitions
|
||||
</ask>
|
||||
|
||||
<check>If yes:</check>
|
||||
<check if="yes or fuzzy match the user wants to define animation or micro interactions">
|
||||
|
||||
<action>Define motion principles</action>
|
||||
<template-output>motion_principles</template-output>
|
||||
|
||||
<action>Define key animations and transitions</action>
|
||||
<template-output>key_animations</template-output>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -241,26 +246,26 @@ This is recommended for:
|
||||
|
||||
**1. Will you be creating high-fidelity designs?**
|
||||
|
||||
- [ ] Yes, in Figma
|
||||
- [ ] Yes, in Sketch
|
||||
- [ ] Yes, in Adobe XD
|
||||
- [ ] No, development from spec
|
||||
- [ ] Other: **\_\_\_\_**
|
||||
- Yes, in Figma
|
||||
- Yes, in Sketch
|
||||
- Yes, in Adobe XD
|
||||
- No, development from spec
|
||||
- Other (describe)
|
||||
|
||||
**2. For key screens, should we:**
|
||||
|
||||
- [ ] Reference design file locations
|
||||
- [ ] Create low-fi wireframe descriptions
|
||||
- [ ] Skip visual representations
|
||||
</ask>
|
||||
- Reference design file locations
|
||||
- Create low-fi wireframe descriptions
|
||||
- Skip visual representations
|
||||
</ask>
|
||||
|
||||
<check>If design files will be created:</check>
|
||||
<template-output>design_files</template-output>
|
||||
<template-output if="design files will be created">design_files</template-output>
|
||||
|
||||
<check>If wireframe descriptions needed:</check>
|
||||
<for-each screen="key_screens">
|
||||
<template-output>screen*layout*{{screen_number}}</template-output>
|
||||
</for-each>
|
||||
<check if="wireframe descriptions needed">
|
||||
<for-each screen="key_screens">
|
||||
<template-output>screen*layout*{{screen_number}}</template-output>
|
||||
</for-each>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
@@ -281,17 +286,18 @@ This is recommended for:
|
||||
- [ ] Brand guidelines incorporated
|
||||
- [ ] Performance goals established
|
||||
|
||||
<check>If Level 3-4 project:</check>
|
||||
<check if="Level 3-4 project">
|
||||
- [ ] Ready for detailed visual design
|
||||
- [ ] Frontend architecture can proceed
|
||||
- [ ] Story generation can include UX details
|
||||
</check>
|
||||
|
||||
- [ ] Ready for detailed visual design
|
||||
- [ ] Frontend architecture can proceed
|
||||
- [ ] Story generation can include UX details
|
||||
<check if="Level 1-2 project or standalone">
|
||||
- [ ] Development can proceed with spec
|
||||
- [ ] Component implementation order defined
|
||||
- [ ] MVP scope clear
|
||||
|
||||
<check>If Level 1-2 project or standalone:</check>
|
||||
|
||||
- [ ] Development can proceed with spec
|
||||
- [ ] Component implementation order defined
|
||||
- [ ] MVP scope clear
|
||||
</check>
|
||||
|
||||
<template-output>design_handoff_checklist</template-output>
|
||||
|
||||
@@ -307,8 +313,9 @@ This is recommended for:
|
||||
|
||||
Would you like to generate an AI Frontend Prompt? (y/n):</ask>
|
||||
|
||||
<check>If user selects yes or option 1:</check>
|
||||
<goto step="11">Generate AI Frontend Prompt</goto>
|
||||
<check if="user selects yes or option 1">
|
||||
<goto step="11">Generate AI Frontend Prompt</goto>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
|
||||
71
src/modules/bmm/workflows/2-plan/ux/workflow.yaml
Normal file
71
src/modules/bmm/workflows/2-plan/ux/workflow.yaml
Normal file
@@ -0,0 +1,71 @@
|
||||
# UX/UI Specification Workflow
|
||||
name: ux-spec
|
||||
description: "UX/UI specification workflow for defining user experience and interface design. Creates comprehensive UX documentation including wireframes, user flows, component specifications, and design system guidelines."
|
||||
author: "BMad"
|
||||
|
||||
# Critical variables from config
|
||||
config_source: "{project-root}/bmad/bmm/config.yaml"
|
||||
output_folder: "{config_source}:output_folder"
|
||||
user_name: "{config_source}:user_name"
|
||||
date: system-generated
|
||||
|
||||
# Workflow components
|
||||
installed_path: "{project-root}/bmad/bmm/workflows/2-plan/ux"
|
||||
instructions: "{installed_path}/instructions-ux.md"
|
||||
template: "{installed_path}/ux-spec-template.md"
|
||||
|
||||
# Output configuration
|
||||
default_output_file: "{output_folder}/ux-specification.md"
|
||||
ai_frontend_prompt_file: "{output_folder}/ai-frontend-prompt.md"
|
||||
|
||||
# Recommended input documents
|
||||
recommended_inputs:
|
||||
- prd: "{output_folder}/PRD.md"
|
||||
- product_brief: "{output_folder}/product-brief.md"
|
||||
- gdd: "{output_folder}/GDD.md"
|
||||
|
||||
# Claude Code integration points
|
||||
claude_code_enhancements:
|
||||
- injection_point: "ux-subagents"
|
||||
- available_subagents:
|
||||
- ux-expert: "User experience design and best practices"
|
||||
- user-researcher: "User research and persona development"
|
||||
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints throughout
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential UX design process
|
||||
|
||||
# UX frameworks available
|
||||
frameworks:
|
||||
- "User-Centered Design"
|
||||
- "Design System Principles"
|
||||
- "Accessibility (WCAG)"
|
||||
- "Responsive Design"
|
||||
- "Component-Based Design"
|
||||
- "Atomic Design"
|
||||
- "Material Design / Human Interface Guidelines"
|
||||
|
||||
web_bundle:
|
||||
name: "ux-spec"
|
||||
description: "UX/UI specification workflow for defining user experience and interface design. Creates comprehensive UX documentation including wireframes, user flows, component specifications, and design system guidelines."
|
||||
author: "BMad"
|
||||
instructions: "bmad/bmm/workflows/2-plan/ux/instructions-ux.md"
|
||||
use_advanced_elicitation: true
|
||||
web_bundle_files:
|
||||
- "bmad/bmm/workflows/2-plan/ux/instructions-ux.md"
|
||||
- "bmad/bmm/workflows/2-plan/ux/ux-spec-template.md"
|
||||
recommended_inputs: "PRD, Product Brief, Brain Storming Report, GDD"
|
||||
# UX frameworks available
|
||||
frameworks:
|
||||
- "User-Centered Design"
|
||||
- "Design System Principles"
|
||||
- "Accessibility (WCAG)"
|
||||
- "Responsive Design"
|
||||
- "Component-Based Design"
|
||||
- "Atomic Design"
|
||||
- "Material Design / Human Interface Guidelines"
|
||||
# Workflow configuration
|
||||
interactive: true # User checkpoints throughout
|
||||
autonomous: false # Requires user input
|
||||
allow_parallel: false # Sequential UX design process
|
||||
@@ -18,6 +18,13 @@ recommended_inputs:
|
||||
# Module path and component files
|
||||
installed_path: "{project-root}/bmad/bmm/workflows/2-plan"
|
||||
|
||||
# Sub-workflow references - Router invokes these workflows based on project type/level
|
||||
workflow_gdd: "{installed_path}/gdd/workflow.yaml"
|
||||
workflow_prd: "{installed_path}/prd/workflow.yaml"
|
||||
workflow_narrative: "{installed_path}/narrative/workflow.yaml"
|
||||
workflow_tech_spec: "{installed_path}/tech-spec/workflow.yaml"
|
||||
workflow_ux: "{installed_path}/ux/workflow.yaml"
|
||||
|
||||
# Templates - Load these only when the instructions request loading them
|
||||
prd_template: "{installed_path}/prd/prd-template.md"
|
||||
analysis_template: "{installed_path}/prd/analysis-template.md"
|
||||
|
||||
@@ -529,12 +529,12 @@ Update architecture.md with specialist sections (inline or placeholders) at the
|
||||
</step>
|
||||
|
||||
<step n="8" goal="PRD epic/story updates (if needed)" optional="true">
|
||||
<check>
|
||||
<ask>
|
||||
Did cohesion check or architecture design reveal:
|
||||
- Missing enabler epics (e.g., "Infrastructure Setup")?
|
||||
- Story modifications needed?
|
||||
- New FRs/NFRs discovered?
|
||||
</check>
|
||||
</ask>
|
||||
|
||||
<ask if="changes_needed">
|
||||
Architecture design revealed some PRD updates needed:
|
||||
@@ -587,9 +587,9 @@ Update project-workflow-analysis.md workflow status:
|
||||
</step>
|
||||
|
||||
<step n="10" goal="Polyrepo documentation strategy" optional="true">
|
||||
<check>
|
||||
<ask>
|
||||
Is this a polyrepo project (multiple repositories)?
|
||||
</check>
|
||||
</ask>
|
||||
|
||||
<action if="polyrepo">
|
||||
For polyrepo projects:
|
||||
|
||||
@@ -10,7 +10,9 @@
|
||||
<step n="1" goal="Collect inputs and initialize">
|
||||
<action>Identify PRD and Architecture documents from recommended_inputs. Attempt to auto-discover at default paths.</action>
|
||||
<ask optional="true" if="{{non_interactive}} == false">If inputs are missing, ask the user for file paths.</ask>
|
||||
<check>If inputs are missing and {{non_interactive}} == true → HALT with a clear message listing missing documents.</check>
|
||||
|
||||
<check if="inputs are missing and {{non_interactive}} == true">HALT with a clear message listing missing documents and do not proceed until user provides sufficient documents to proceed.</check>
|
||||
|
||||
<action>Extract {{epic_title}} and {{epic_id}} from PRD (or ASK if not present).</action>
|
||||
<action>Resolve output file path using workflow variables and initialize by writing the template.</action>
|
||||
</step>
|
||||
|
||||
@@ -6,37 +6,34 @@
|
||||
<workflow>
|
||||
|
||||
<step n="1" goal="Initialize Change Navigation">
|
||||
<action>Confirm change trigger and gather user description of the issue</action>
|
||||
<action>Ask: "What specific issue or change has been identified that requires navigation?"</action>
|
||||
<action>Verify access to required project documents:</action>
|
||||
- PRD (Product Requirements Document)
|
||||
- Current Epics and Stories
|
||||
- Architecture documentation
|
||||
- UI/UX specifications
|
||||
<action>Ask user for mode preference:</action>
|
||||
- **Incremental** (recommended): Refine each edit collaboratively
|
||||
- **Batch**: Present all changes at once for review
|
||||
<action>Store mode selection for use throughout workflow</action>
|
||||
<action>Confirm change trigger and gather user description of the issue</action>
|
||||
<action>Ask: "What specific issue or change has been identified that requires navigation?"</action>
|
||||
<action>Verify access to required project documents:</action>
|
||||
- PRD (Product Requirements Document)
|
||||
- Current Epics and Stories
|
||||
- Architecture documentation
|
||||
- UI/UX specifications
|
||||
<action>Ask user for mode preference:</action>
|
||||
- **Incremental** (recommended): Refine each edit collaboratively
|
||||
- **Batch**: Present all changes at once for review
|
||||
<action>Store mode selection for use throughout workflow</action>
|
||||
|
||||
<check>If change trigger is unclear:</check>
|
||||
<action>HALT: "Cannot navigate change without clear understanding of the triggering issue. Please provide specific details about what needs to change and why."</action>
|
||||
<action if="change trigger is unclear">HALT: "Cannot navigate change without clear understanding of the triggering issue. Please provide specific details about what needs to change and why."</action>
|
||||
|
||||
<check>If core documents are unavailable:</check>
|
||||
<action>HALT: "Need access to project documents (PRD, Epics, Architecture, UI/UX) to assess change impact. Please ensure these documents are accessible."</action>
|
||||
<action if="core documents are unavailable">HALT: "Need access to project documents (PRD, Epics, Architecture, UI/UX) to assess change impact. Please ensure these documents are accessible."</action>
|
||||
</step>
|
||||
|
||||
<step n="2" goal="Execute Change Analysis Checklist">
|
||||
<action>Load and execute the systematic analysis from: {project-root}/bmad/bmm/workflows/4-implementation/correct-course/checklist.md</action>
|
||||
<action>Work through each checklist section interactively with the user</action>
|
||||
<action>Record status for each checklist item:</action>
|
||||
- [x] Done - Item completed successfully
|
||||
- [N/A] Skip - Item not applicable to this change
|
||||
- [!] Action-needed - Item requires attention or follow-up
|
||||
<action>Maintain running notes of findings and impacts discovered</action>
|
||||
<action>Present checklist progress after each major section</action>
|
||||
<action>Load and execute the systematic analysis from: {project-root}/bmad/bmm/workflows/4-implementation/correct-course/checklist.md</action>
|
||||
<action>Work through each checklist section interactively with the user</action>
|
||||
<action>Record status for each checklist item:</action>
|
||||
- [x] Done - Item completed successfully
|
||||
- [N/A] Skip - Item not applicable to this change
|
||||
- [!] Action-needed - Item requires attention or follow-up
|
||||
<action>Maintain running notes of findings and impacts discovered</action>
|
||||
<action>Present checklist progress after each major section</action>
|
||||
|
||||
<check>If checklist cannot be completed:</check>
|
||||
<action>Identify blocking issues and work with user to resolve before continuing</action>
|
||||
<action if="checklist cannot be completed">Identify blocking issues and work with user to resolve before continuing</action>
|
||||
</step>
|
||||
|
||||
<step n="3" goal="Draft Specific Change Proposals">
|
||||
@@ -81,13 +78,14 @@
|
||||
- Show wireframe or flow changes needed
|
||||
- Connect changes to user experience impact
|
||||
|
||||
<check>If mode is Incremental:</check>
|
||||
<action>Present each edit proposal individually</action>
|
||||
<ask>Review and refine this change? Options: Approve [a], Edit [e], Skip [s]</ask>
|
||||
<action>Iterate on each proposal based on user feedback</action>
|
||||
<check if="mode is Incremental">
|
||||
<action>Present each edit proposal individually</action>
|
||||
<ask>Review and refine this change? Options: Approve [a], Edit [e], Skip [s]</ask>
|
||||
<action>Iterate on each proposal based on user feedback</action>
|
||||
</check>
|
||||
|
||||
<action if="mode is Batch">Collect all edit proposals and present together at end of step</action>
|
||||
|
||||
<check>If mode is Batch:</check>
|
||||
<action>Collect all edit proposals and present together at end of step</action>
|
||||
</step>
|
||||
|
||||
<step n="4" goal="Generate Sprint Change Proposal">
|
||||
@@ -138,15 +136,17 @@
|
||||
<action>Get explicit user approval for complete proposal</action>
|
||||
<ask>Do you approve this Sprint Change Proposal for implementation? (yes/no/revise)</ask>
|
||||
|
||||
<check>If no or revise:</check>
|
||||
<action>Gather specific feedback on what needs adjustment</action>
|
||||
<action>Return to appropriate step to address concerns</action>
|
||||
<goto step="3">If changes needed to edit proposals</goto>
|
||||
<goto step="4">If changes needed to overall proposal structure</goto>
|
||||
<check if="no or revise">
|
||||
<action>Gather specific feedback on what needs adjustment</action>
|
||||
<action>Return to appropriate step to address concerns</action>
|
||||
<goto step="3">If changes needed to edit proposals</goto>
|
||||
<goto step="4">If changes needed to overall proposal structure</goto>
|
||||
|
||||
<check>If yes:</check>
|
||||
<action>Finalize Sprint Change Proposal document</action>
|
||||
<action>Determine change scope classification:</action>
|
||||
</check>
|
||||
|
||||
<check if="yes the proposal is approved by the user">
|
||||
<action>Finalize Sprint Change Proposal document</action>
|
||||
<action>Determine change scope classification:</action>
|
||||
|
||||
- **Minor**: Can be implemented directly by development team
|
||||
- **Moderate**: Requires backlog reorganization and PO/SM coordination
|
||||
@@ -154,20 +154,26 @@
|
||||
|
||||
<action>Provide appropriate handoff based on scope:</action>
|
||||
|
||||
<check>If Minor scope:</check>
|
||||
<action>Route to: Development team for direct implementation</action>
|
||||
<action>Deliverables: Finalized edit proposals and implementation tasks</action>
|
||||
</check>
|
||||
|
||||
<check>If Moderate scope:</check>
|
||||
<action>Route to: Product Owner / Scrum Master agents</action>
|
||||
<action>Deliverables: Sprint Change Proposal + backlog reorganization plan</action>
|
||||
<check if="Minor scope">
|
||||
<action>Route to: Development team for direct implementation</action>
|
||||
<action>Deliverables: Finalized edit proposals and implementation tasks</action>
|
||||
</check>
|
||||
|
||||
<check>If Major scope:</check>
|
||||
<action>Route to: Product Manager / Solution Architect</action>
|
||||
<action>Deliverables: Complete Sprint Change Proposal + escalation notice</action>
|
||||
<check if="Moderate scope">
|
||||
<action>Route to: Product Owner / Scrum Master agents</action>
|
||||
<action>Deliverables: Sprint Change Proposal + backlog reorganization plan</action>
|
||||
</check>
|
||||
|
||||
<check if="Major scope">
|
||||
<action>Route to: Product Manager / Solution Architect</action>
|
||||
<action>Deliverables: Complete Sprint Change Proposal + escalation notice</action>
|
||||
|
||||
<action>Confirm handoff completion and next steps with user</action>
|
||||
<action>Document handoff in workflow execution log</action>
|
||||
</check>
|
||||
|
||||
</step>
|
||||
|
||||
<step n="6" goal="Workflow Completion">
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
<critical>
|
||||
FACILITATION NOTES:
|
||||
- Bob (Scrum Master) facilitates this retrospective
|
||||
- Scrum Master facilitates this retrospective
|
||||
- Psychological safety is paramount - NO BLAME
|
||||
- Focus on systems, processes, and learning
|
||||
- Everyone contributes with specific examples preferred
|
||||
@@ -20,40 +20,27 @@ FACILITATION NOTES:
|
||||
|
||||
<ask>Which epic has just been completed? (Enter epic number, e.g., "003" or auto-detect from highest completed story)</ask>
|
||||
|
||||
<check>If auto-detecting:</check>
|
||||
<action>Check {output_folder}/stories/ for highest numbered completed story</action>
|
||||
<action>Extract epic number from story file (e.g., "Epic: 003" section)</action>
|
||||
<check if="auto-detecting">
|
||||
<action>Check {output_folder}/stories/ for highest numbered completed story</action>
|
||||
<action>Extract epic number from story file (e.g., "Epic: 003" section)</action>
|
||||
</check>
|
||||
|
||||
<action>Load the completed epic from: {output_folder}/prd/epic-{{epic_number}}.md</action>
|
||||
<action>Extract epic details:</action>
|
||||
<action>Extract epic details:
|
||||
|
||||
- Epic title and goals
|
||||
- Success criteria
|
||||
- Planned stories and story points
|
||||
- Estimated sprint duration
|
||||
- Business objectives
|
||||
</action>
|
||||
|
||||
<action>Find all stories for this epic in {output_folder}/stories/</action>
|
||||
<action>For each story, extract:</action>
|
||||
<action>For each story, extract: - Story number and title - Completion status - Story points (if tracked) - Actual completion date - Dev Agent Record notes - TEA Results and testing outcomes - PO Notes and acceptance - Blockers encountered and resolution - Technical debt incurred
|
||||
</action>
|
||||
|
||||
- Story number and title
|
||||
- Completion status
|
||||
- Story points (if tracked)
|
||||
- Actual completion date
|
||||
- Dev Agent Record notes
|
||||
- TEA Results and testing outcomes
|
||||
- PO Notes and acceptance
|
||||
- Blockers encountered and resolution
|
||||
- Technical debt incurred
|
||||
|
||||
<action>Calculate epic metrics:</action>
|
||||
|
||||
- Completed stories vs. total planned
|
||||
- Actual story points delivered vs. planned
|
||||
- Actual sprints taken vs. estimated
|
||||
- Velocity (points per sprint)
|
||||
- Blocker count and resolution time
|
||||
- Technical debt items logged
|
||||
<action>Calculate epic metrics: - Completed stories vs. total planned - Actual story points delivered vs. planned - Actual sprints taken vs. estimated - Velocity (points per sprint) - Blocker count - Technical debt items logged
|
||||
</action>
|
||||
|
||||
<action>Review epic goals and compare actual outcomes vs. planned</action>
|
||||
<action>Note any scope changes or descoped items</action>
|
||||
@@ -65,43 +52,48 @@ FACILITATION NOTES:
|
||||
<action>Identify the next epic in sequence</action>
|
||||
<action>Load next epic from: {output_folder}/prd/epic-{{next_epic_number}}.md</action>
|
||||
|
||||
<action>Analyze next epic for:</action>
|
||||
<action if="next epic exists">
|
||||
Analyze next epic for:
|
||||
- Epic title and objectives
|
||||
- Planned stories and complexity
|
||||
- Dependencies on completed epic work
|
||||
- New technical requirements or capabilities needed
|
||||
- Potential risks or unknowns
|
||||
</action>
|
||||
|
||||
- Epic title and objectives
|
||||
- Planned stories and complexity
|
||||
- Dependencies on completed epic work
|
||||
- New technical requirements or capabilities needed
|
||||
- Potential risks or unknowns
|
||||
|
||||
<action>Identify dependencies on completed work:</action>
|
||||
<action>Identify dependencies on completed work:
|
||||
|
||||
- What components from Epic {{completed_number}} does Epic {{next_number}} rely on?
|
||||
- Are all prerequisites complete and stable?
|
||||
- Any incomplete work that creates blocking dependencies?
|
||||
</action>
|
||||
|
||||
<action>Note potential gaps or preparation needed:</action>
|
||||
<action>Note potential gaps or preparation needed:
|
||||
|
||||
- Technical setup required (infrastructure, tools, libraries)
|
||||
- Knowledge gaps to fill (research, training, spikes)
|
||||
- Refactoring needed before starting next epic
|
||||
- Documentation or specifications to create
|
||||
</action>
|
||||
|
||||
<action>Check for technical prerequisites:</action>
|
||||
<action>Check for technical prerequisites:
|
||||
|
||||
- APIs or integrations that must be ready
|
||||
- Data migrations or schema changes needed
|
||||
- Testing infrastructure requirements
|
||||
- Deployment or environment setup
|
||||
</step>
|
||||
</action>
|
||||
|
||||
</step>
|
||||
|
||||
<step n="3" goal="Initialize Retrospective with Context">
|
||||
<action>Bob (Scrum Master) opens the retrospective with context</action>
|
||||
<action>Present formatted retrospective header:</action>
|
||||
<action>Scrum Master opens the retrospective with context</action>
|
||||
<action>Present formatted retrospective header:
|
||||
|
||||
```
|
||||
🔄 TEAM RETROSPECTIVE - Epic {{epic_number}}: {{epic_title}}
|
||||
|
||||
Bob (Scrum Master) facilitating
|
||||
Scrum Master facilitating
|
||||
|
||||
═══════════════════════════════════════════════════════════
|
||||
|
||||
@@ -147,13 +139,14 @@ Focus Areas:
|
||||
2. Preparing for Epic {{next_number}} success
|
||||
```
|
||||
|
||||
<action>Load agent configurations from: {project-root}/bmad/\_cfg/agent-party.xml</action>
|
||||
<action>Identify agents who participated in the completed epic based on story records</action>
|
||||
<action>Ensure key roles present: Sarah (PO), Bob (SM), James (Dev), Murat (TEA), Winston (Architect), Mary (Analyst)</action>
|
||||
</action>
|
||||
|
||||
<action>Load agent configurations from {agent-manifest}</action>
|
||||
<action>Ensure key roles present from the {agent_manifest}: Product Owner, Scrum Master (facilitating the retro), Devs, Testing or QA, Architect, Analyst</action>
|
||||
</step>
|
||||
|
||||
<step n="4" goal="Epic Review Discussion">
|
||||
<action>Bob facilitates Part 1: Reviewing the completed epic</action>
|
||||
<action>Scrum Master facilitates Part 1: Reviewing the completed epic</action>
|
||||
<action>Each agent shares in their unique voice, referencing actual story data</action>
|
||||
<action>Maintain psychological safety - focus on learning, not blame</action>
|
||||
|
||||
@@ -184,21 +177,16 @@ Focus Areas:
|
||||
- Skills or knowledge gained
|
||||
- Process improvements to implement
|
||||
|
||||
<action>Agent personality guidance:</action>
|
||||
|
||||
- **Sarah (PO)**: Business value delivery, stakeholder management, requirements clarity
|
||||
- **Bob (SM)**: Process effectiveness, team dynamics, blocker removal, velocity trends
|
||||
- **James (Dev)**: Technical execution, code quality, development experience, tooling
|
||||
- **Murat (TEA)**: Quality outcomes, testing effectiveness, defect prevention, coverage
|
||||
- **Winston (Architect)**: Architectural decisions, technical strategy, long-term sustainability
|
||||
- **Mary (Analyst)**: Requirements accuracy, specification quality, edge case handling
|
||||
<action>Agent personality guidance:
|
||||
Each agent loaded from {agent_manifest} will interact with their role and personality and communication style best represented and simulated during discussions
|
||||
</action>
|
||||
|
||||
<action>Encourage specific examples from story records, metrics, and real outcomes</action>
|
||||
<action>Bob synthesizes common themes as discussion progresses</action>
|
||||
<action>Scrum Master synthesizes common themes as discussion progresses</action>
|
||||
</step>
|
||||
|
||||
<step n="5" goal="Next Epic Preparation Discussion">
|
||||
<action>Bob facilitates Part 2: Preparing for the next epic</action>
|
||||
<action>Scrum Master facilitates Part 2: Preparing for the next epic</action>
|
||||
<action>Each agent addresses preparation needs from their domain</action>
|
||||
|
||||
<action>For each agent, present forward-looking analysis:</action>
|
||||
@@ -232,12 +220,12 @@ Focus Areas:
|
||||
</step>
|
||||
|
||||
<step n="6" goal="Synthesize Action Items">
|
||||
<action>Bob identifies patterns across all agent feedback</action>
|
||||
<action>Scrum Master identifies patterns across all agent feedback</action>
|
||||
<action>Synthesizes common themes into team agreements</action>
|
||||
<action>Creates specific, achievable action items with clear ownership</action>
|
||||
<action>Develops preparation sprint tasks if significant setup needed</action>
|
||||
|
||||
<action>Present comprehensive action plan:</action>
|
||||
<action>Present comprehensive action plan:
|
||||
|
||||
```
|
||||
═══════════════════════════════════════════════════════════
|
||||
@@ -295,49 +283,56 @@ Risk Mitigation:
|
||||
- {{risk}}: {{mitigation_strategy}}
|
||||
```
|
||||
|
||||
</action>
|
||||
|
||||
<action>Ensure every action item has clear owner and timeline</action>
|
||||
<action>Prioritize preparation tasks by dependencies and criticality</action>
|
||||
<action>Identify which tasks can run in parallel vs. sequential</action>
|
||||
</step>
|
||||
|
||||
<step n="7" goal="Critical User Verification">
|
||||
<action>Bob leads final verification checks before concluding retrospective</action>
|
||||
<action>Scrum Master leads final verification checks before concluding retrospective</action>
|
||||
<action>User must confirm readiness before next epic begins</action>
|
||||
|
||||
<ask>Let's verify Epic {{completed_number}} is truly complete. Please confirm each item:</ask>
|
||||
|
||||
**Testing Verification:**
|
||||
<ask>Has full regression testing been completed for Epic {{completed_number}}? (yes/no/partial)</ask>
|
||||
<check>If no or partial:</check>
|
||||
<action>Add to Critical Path: Complete regression testing before Epic {{next_number}}</action>
|
||||
|
||||
<action if="no or partial">Add to Critical Path: Complete regression testing before Epic {{next_number}}</action>
|
||||
|
||||
**Deployment Status:**
|
||||
|
||||
<ask>Has Epic {{completed_number}} been deployed to production? (yes/no/scheduled)</ask>
|
||||
<check>If no:</check>
|
||||
<action>Add to Critical Path: Deploy Epic {{completed_number}} - scheduled for {{date}}</action>
|
||||
<action if="no deployment to prod">Add to Critical Path: Deploy Epic {{completed_number}} - scheduled for {{date}}</action>
|
||||
|
||||
**Business Validation:**
|
||||
<ask>Have stakeholders reviewed and accepted Epic {{completed_number}} deliverables? (yes/no/pending)</ask>
|
||||
<check>If no or pending:</check>
|
||||
<action>Add to Critical Path: Obtain stakeholder acceptance before Epic {{next_number}}</action>
|
||||
|
||||
<action if="no or pending deliverables">Add to Critical Path: Obtain stakeholder acceptance before Epic {{next_number}}</action>
|
||||
|
||||
**Technical Health:**
|
||||
<ask>Is the codebase in a stable, maintainable state after Epic {{completed_number}}? (yes/no/concerns)</ask>
|
||||
<check>If no or concerns:</check>
|
||||
<action>Document concerns: {{user_input}}</action>
|
||||
<action>Add to Preparation Sprint: Address stability concerns</action>
|
||||
|
||||
<check if="not stable or maintainable or concerns about codebase">
|
||||
<action>Document concerns: {{user_input}}</action>
|
||||
<action>Add to Preparation Sprint: Address stability concerns</action>
|
||||
</check>
|
||||
|
||||
**Blocker Resolution:**
|
||||
<ask>Are there any unresolved blockers from Epic {{completed_number}} that will impact Epic {{next_number}}? (yes/no)</ask>
|
||||
<check>If yes:</check>
|
||||
<action>Document blockers: {{user_input}}</action>
|
||||
<action>Add to Critical Path with highest priority</action>
|
||||
|
||||
<action>Bob summarizes verification results and any critical items added</action>
|
||||
<check if="yes unresolved blockers exist">
|
||||
<action>Document blockers: {{user_input}}</action>
|
||||
<action>Add to Critical Path with highest priority</action>
|
||||
</check>
|
||||
|
||||
<action>Summarize the verification results and any critical items added</action>
|
||||
|
||||
</step>
|
||||
|
||||
<step n="8" goal="Retrospective Closure">
|
||||
<action>Bob closes the retrospective with summary and next steps</action>
|
||||
<action>Scrum Master closes the retrospective with summary and next steps</action>
|
||||
|
||||
<action>Present closure summary:</action>
|
||||
|
||||
@@ -365,7 +360,7 @@ Critical Path Items: {{critical_count}}
|
||||
4. Begin Epic {{next_number}} planning when preparation complete
|
||||
|
||||
═══════════════════════════════════════════════════════════
|
||||
Bob: "Great work team! We learned a lot from Epic {{completed_number}}.
|
||||
Scrum Master: "Great work team! We learned a lot from Epic {{completed_number}}.
|
||||
Let's use these insights to make Epic {{next_number}} even better.
|
||||
See you at sprint planning once prep work is done!"
|
||||
```
|
||||
@@ -378,7 +373,7 @@ See you at sprint planning once prep work is done!"
|
||||
</workflow>
|
||||
|
||||
<facilitation-guidelines>
|
||||
<guideline>Bob maintains psychological safety throughout - no blame or judgment</guideline>
|
||||
<guideline>Scrum Master maintains psychological safety throughout - no blame or judgment</guideline>
|
||||
<guideline>Focus on systems and processes, not individual performance</guideline>
|
||||
<guideline>Encourage specific examples over general statements</guideline>
|
||||
<guideline>Balance celebration of wins with honest assessment of challenges</guideline>
|
||||
|
||||
@@ -19,7 +19,7 @@ required_inputs:
|
||||
- completed_epic: "The epic that was just completed"
|
||||
- stories_folder: "{output_folder}/stories/"
|
||||
- epics_folder: "{output_folder}/prd/"
|
||||
- agent_party_config: "{project-root}/bmad/_cfg/agent-party.xml"
|
||||
- agent_manifest: "{project-root}/bmad/_cfg/agent-manifest.csv"
|
||||
|
||||
output_artifacts:
|
||||
- retrospective_summary: "Comprehensive review of what went well and what could improve"
|
||||
|
||||
@@ -16,15 +16,15 @@
|
||||
<action>Resolve {{story_path}} and read the COMPLETE file.</action>
|
||||
<action>Extract {{epic_num}} and {{story_num}} from filename (e.g., story-2.3.*.md) and story metadata if available.</action>
|
||||
<action>Parse sections: Status, Story, Acceptance Criteria, Tasks/Subtasks (and completion states), Dev Notes, Dev Agent Record (Context Reference, Completion Notes, File List), Change Log.</action>
|
||||
<check>If Status is not one of {{allow_status_values}} → HALT with message: "Story status must be 'Ready for Review' to proceed" (accept 'Review' as equivalent).</check>
|
||||
<check>If story cannot be read → HALT.</check>
|
||||
<action if="Status is not one of {{allow_status_values}}">HALT with message: "Story status must be 'Ready for Review' to proceed" (accept 'Review' as equivalent).</action>
|
||||
<action if="story cannot be read">HALT.</action>
|
||||
</step>
|
||||
|
||||
<step n="2" goal="Resolve context and specification inputs">
|
||||
<action>Locate Story Context: Under Dev Agent Record → Context Reference, read referenced path(s). If missing and {{auto_discover_context}}: search {{output_folder}} for files named "story-context-{{epic_num}}.{{story_num}}*.xml"; pick the most recent.</action>
|
||||
<check>If no context found → Continue but record a WARNING in review notes: "No Story Context found".</check>
|
||||
<action if="no context found">Continue but record a WARNING in review notes: "No Story Context found".</action>
|
||||
<action>Locate Epic Tech Spec: If {{auto_discover_tech_spec}}, search {{tech_spec_search_dir}} with glob {{tech_spec_glob_template}} (resolve {{epic_num}}); else use provided input.</action>
|
||||
<check>If no tech spec found → Continue but record a WARNING in review notes: "No Tech Spec found for epic {{epic_num}}".</check>
|
||||
<action if="no tech spec found">Continue but record a WARNING in review notes: "No Tech Spec found for epic {{epic_num}}".</action>
|
||||
<action>Load architecture/standards docs: For each file name in {{arch_docs_file_names}} within {{arch_docs_search_dirs}}, read if exists. Collect any testing, coding standards, security, and architectural patterns.</action>
|
||||
</step>
|
||||
|
||||
@@ -40,12 +40,12 @@
|
||||
<action>From Dev Agent Record → File List, compile list of changed/added files. If File List is missing or clearly incomplete, search repo for recent changes relevant to the story scope (heuristics: filenames matching components/services/routes/tests inferred from ACs/tasks).</action>
|
||||
<action>Cross-check epic tech-spec requirements and architecture constraints against the implementation intent in files.</action>
|
||||
<action>For each acceptance criterion, verify there is evidence of implementation and corresponding tests (unit/integration/E2E as applicable). Note any gaps explicitly.</action>
|
||||
<check>If critical architecture constraints are violated (e.g., layering, dependency rules) → flag as High severity finding.</check>
|
||||
<action if="critical architecture constraints are violated (e.g., layering, dependency rules)">flag as High Severity finding.</action>
|
||||
</step>
|
||||
|
||||
<step n="5" goal="Perform code quality and risk review">
|
||||
<action>For each changed file, skim for common issues appropriate to the stack: error handling, input validation, logging, dependency injection, thread-safety/async correctness, resource cleanup, performance anti-patterns.</action>
|
||||
<action>Perform security review: injection risks, authZ/authN handling, secret management, unsafe defaults, unvalidated redirects, CORS misconfig, dependency vulnerabilities (based on manifests).</action>
|
||||
<action>Perform security review: injection risks, authZ/authN handling, secret management, unsafe defaults, un-validated redirects, CORS misconfigured, dependency vulnerabilities (based on manifests).</action>
|
||||
<action>Check tests quality: assertions are meaningful, edge cases covered, deterministic behavior, proper fixtures, no flakiness patterns.</action>
|
||||
<action>Capture concrete, actionable suggestions with severity (High/Med/Low) and rationale. When possible, suggest specific code-level changes (filenames + line ranges) without rewriting large sections.</action>
|
||||
</step>
|
||||
@@ -102,15 +102,15 @@
|
||||
<action>Resolve {{story_path}} and read the COMPLETE file.</action>
|
||||
<action>Extract {{epic_num}} and {{story_num}} from filename (e.g., story-2.3.*.md) and story metadata if available.</action>
|
||||
<action>Parse sections: Status, Story, Acceptance Criteria, Tasks/Subtasks (and completion states), Dev Notes, Dev Agent Record (Context Reference, Completion Notes, File List), Change Log.</action>
|
||||
<check>If Status is not one of {{allow_status_values}} → HALT with message: "Story status must be 'Ready for Review' to proceed" (accept 'Review' as equivalent).</check>
|
||||
<check>If story cannot be read → HALT.</check>
|
||||
<action if="Status is not one of {{allow_status_values}}">HALT with message: "Story status must be 'Ready for Review' to proceed" (accept 'Review' as equivalent).</action>
|
||||
<action if="story cannot be read">HALT.</action>
|
||||
</step>
|
||||
|
||||
<step n="2" goal="Resolve context and specification inputs">
|
||||
<action>Locate Story Context: Under Dev Agent Record → Context Reference, read referenced path(s). If missing and {{auto_discover_context}}: search {{output_folder}} for files named "story-context-{{epic_num}}.{{story_num}}*.xml"; pick the most recent.</action>
|
||||
<check>If no context found → Continue but record a WARNING in review notes: "No Story Context found".</check>
|
||||
<action if="no context found">Continue but record a WARNING in review notes: "No Story Context found".</action>
|
||||
<action>Locate Epic Tech Spec: If {{auto_discover_tech_spec}}, search {{tech_spec_search_dir}} with glob {{tech_spec_glob_template}} (resolve {{epic_num}}); else use provided input.</action>
|
||||
<check>If no tech spec found → Continue but record a WARNING in review notes: "No Tech Spec found for epic {{epic_num}}".</check>
|
||||
<action if="no tech spec found">Continue but record a WARNING in review notes: "No Tech Spec found for epic {{epic_num}}".</action>
|
||||
<action>Load architecture/standards docs: For each file name in {{arch_docs_file_names}} within {{arch_docs_search_dirs}}, read if exists. Collect any testing, coding standards, security, and architectural patterns.</action>
|
||||
</step>
|
||||
|
||||
@@ -126,7 +126,7 @@
|
||||
<action>From Dev Agent Record → File List, compile list of changed/added files. If File List is missing or clearly incomplete, search repo for recent changes relevant to the story scope (heuristics: filenames matching components/services/routes/tests inferred from ACs/tasks).</action>
|
||||
<action>Cross-check epic tech-spec requirements and architecture constraints against the implementation intent in files.</action>
|
||||
<action>For each acceptance criterion, verify there is evidence of implementation and corresponding tests (unit/integration/E2E as applicable). Note any gaps explicitly.</action>
|
||||
<check>If critical architecture constraints are violated (e.g., layering, dependency rules) → flag as High severity finding.</check>
|
||||
<action if="critical architecture constraints are violated (e.g., layering, dependency rules)">flag as High severity finding.</action>
|
||||
</step>
|
||||
|
||||
<step n="5" goal="Perform code quality and risk review">
|
||||
|
||||
@@ -177,8 +177,6 @@ The first moment determines if they keep reading/listening.
|
||||
|
||||
<step n="6" goal="Write Core Narrative">
|
||||
|
||||
<check>Ask if user wants to write or wants AI to write</check>
|
||||
|
||||
<ask>Would you like to:
|
||||
|
||||
1. Draft the story yourself with my guidance
|
||||
@@ -186,13 +184,13 @@ The first moment determines if they keep reading/listening.
|
||||
3. Co-create it iteratively together
|
||||
</ask>
|
||||
|
||||
<if selection="1">
|
||||
<if selection="1 or draft themselves">
|
||||
<action>Provide writing prompts and encouragement</action>
|
||||
<action>Offer feedback on drafts they share</action>
|
||||
<action>Suggest refinements for clarity, emotion, flow</action>
|
||||
</if>
|
||||
|
||||
<if selection="2">
|
||||
<if selection="2 or ai writes the next draft based on discussions">
|
||||
<action>Synthesize all gathered elements</action>
|
||||
<action>Write complete narrative in appropriate tone/style</action>
|
||||
<action>Structure according to chosen framework</action>
|
||||
@@ -200,7 +198,7 @@ The first moment determines if they keep reading/listening.
|
||||
<action>Present draft for feedback and refinement</action>
|
||||
</if>
|
||||
|
||||
<if selection="3">
|
||||
<if selection="3 or work collaboratively with co-creation">
|
||||
<action>Write opening paragraph</action>
|
||||
<action>Get feedback and iterate</action>
|
||||
<action>Build section by section collaboratively</action>
|
||||
|
||||
Reference in New Issue
Block a user