8.3 KiB
Create Workflow Plan Task
Purpose
Guide users through workflow selection and create a detailed plan document that outlines the selected workflow steps, decision points, and expected outputs. This task helps users understand what will happen before starting a complex workflow and provides a checklist to track progress.
Task Instructions
1. Understand User's Goal
LLM: Start with discovery questions to understand what the user wants to accomplish
Ask the user:
-
Project Type:
- Are you starting a new project (greenfield) or enhancing an existing one (brownfield)?
- What type of application? (web app, service/API, UI only, full-stack)
-
For Greenfield:
- Do you need a quick prototype or production-ready application?
- Will this have a UI component?
- Single service or multiple services?
-
For Brownfield:
- What's the scope of the enhancement?
- Single bug fix or small feature (few hours)
- Small enhancement (1-3 stories)
- Major feature requiring coordination
- Architectural changes or modernization
- Do you have existing documentation?
- Are you following existing patterns or introducing new ones?
- What's the scope of the enhancement?
2. Recommend Appropriate Workflow
Based on the answers, recommend:
Greenfield Options:
greenfield-fullstack- Complete web applicationgreenfield-service- Backend API/service onlygreenfield-ui- Frontend only
Brownfield Options:
brownfield-create-story- Single small changebrownfield-create-epic- Small feature (1-3 stories)brownfield-fullstack- Major enhancement
Simplified Option:
- For users unsure or wanting flexibility, suggest starting with individual agent tasks
3. Explain Selected Workflow
LLM: Once workflow is selected, provide clear explanation
For the selected workflow, explain:
- Overview: What this workflow accomplishes
- Duration: Estimated time for planning phase
- Outputs: What documents will be created
- Decision Points: Where user input will be needed
- Requirements: What information should be ready
4. Create Workflow Plan Document
LLM: Generate a comprehensive plan document with the following structure
# Workflow Plan: {{Workflow Name}}
<!-- WORKFLOW-PLAN-META
workflow-id: {{workflow-id}}
status: active
created: {{ISO-8601 timestamp}}
updated: {{ISO-8601 timestamp}}
version: 1.0
-->
**Created Date**: {{current date}}
**Project**: {{project name}}
**Type**: {{greenfield/brownfield}}
**Status**: Active
**Estimated Planning Duration**: {{time estimate}}
## Objective
{{Clear description of what will be accomplished}}
## Selected Workflow
**Workflow**: `{{workflow-id}}`
**Reason**: {{Why this workflow fits the user's needs}}
## Workflow Steps
### Planning Phase
- [ ] Step 1: {{step name}} <!-- step-id: 1.1, agent: {{agent}}, task: {{task}} -->
- **Agent**: {{agent name}}
- **Action**: {{what happens}}
- **Output**: {{what's created}}
- **User Input**: {{if any}}
- [ ] Step 2: {{step name}} <!-- step-id: 1.2, agent: {{agent}}, task: {{task}} -->
- **Agent**: {{agent name}}
- **Action**: {{what happens}}
- **Output**: {{what's created}}
- **Decision Point**: {{if any}} <!-- decision-id: D1 -->
{{Continue for all planning steps}}
### Development Phase (IDE)
- [ ] Document Sharding <!-- step-id: 2.1, agent: po, task: shard-doc -->
- Prepare documents for story creation
- [ ] Story Development Cycle <!-- step-id: 2.2, repeats: true -->
- [ ] Create story (SM agent) <!-- step-id: 2.2.1, agent: sm, task: create-next-story -->
- [ ] Review story (optional) <!-- step-id: 2.2.2, agent: analyst, optional: true -->
- [ ] Implement story (Dev agent) <!-- step-id: 2.2.3, agent: dev -->
- [ ] QA review (optional) <!-- step-id: 2.2.4, agent: qa, optional: true -->
- [ ] Repeat for all stories
- [ ] Epic Retrospective (optional) <!-- step-id: 2.3, agent: po, optional: true -->
## Key Decision Points
1. **{{Decision Name}}** (Step {{n}}): <!-- decision-id: D1, status: pending -->
- Trigger: {{what causes this decision}}
- Options: {{available choices}}
- Impact: {{how it affects the workflow}}
- Decision Made: _Pending_
{{List all decision points}}
## Expected Outputs
### Planning Documents
- [ ] {{document 1}} - {{description}}
- [ ] {{document 2}} - {{description}}
{{etc...}}
### Development Artifacts
- [ ] Stories in `docs/stories/`
- [ ] Implementation code
- [ ] Tests
- [ ] Updated documentation
## Prerequisites Checklist
Before starting this workflow, ensure you have:
- [ ] {{prerequisite 1}}
- [ ] {{prerequisite 2}}
- [ ] {{prerequisite 3}}
{{etc...}}
## Customization Options
Based on your project needs, you may:
- Skip {{optional step}} if {{condition}}
- Add {{additional step}} if {{condition}}
- Choose {{alternative}} instead of {{default}}
## Risk Considerations
{{For brownfield only}}
- Integration complexity: {{assessment}}
- Rollback strategy: {{approach}}
- Testing requirements: {{special needs}}
## Next Steps
1. Review this plan and confirm it matches your expectations
2. Gather any missing prerequisites
3. Start workflow with: `*task workflow {{workflow-id}}`
4. Or begin with first agent: `@{{first-agent}}`
## Notes
{{Any additional context or warnings}}
---
*This plan can be updated as you progress through the workflow. Check off completed items to track progress.*
5. Save and Present Plan
- Save the plan as
docs/workflow-plan.md - Inform user: "Workflow plan created at docs/workflow-plan.md"
- Offer options:
- Review the plan together
- Start the workflow now
- Gather prerequisites first
- Modify the plan
6. Plan Variations
LLM: Adjust plan detail based on workflow complexity
For Simple Workflows (create-story, create-epic):
- Simpler checklist format
- Focus on immediate next steps
- Less detailed explanations
For Complex Workflows (full greenfield/brownfield):
- Detailed step breakdowns
- All decision points documented
- Comprehensive output descriptions
- Risk mitigation sections
For Brownfield Workflows:
- Include existing system impact analysis
- Document integration checkpoints
- Add rollback considerations
- Note documentation dependencies
7. Interactive Planning Mode
LLM: If user wants to customize the workflow
If user wants to modify the standard workflow:
- Present workflow steps as options
- Allow skipping optional steps
- Let user reorder certain steps
- Document customizations in plan
- Warn about dependencies if steps are skipped
8. Execution Guidance
After plan is created, provide clear guidance:
Your workflow plan is ready! Here's how to proceed:
1. **Review the plan**: Check that all steps align with your goals
2. **Gather prerequisites**: Use the checklist to ensure you're ready
3. **Start execution**:
- Full workflow: `*task workflow {{workflow-id}}`
- Step by step: Start with `@{{first-agent}}`
4. **Track progress**: Check off steps in the plan as completed
Would you like to:
a) Review the plan together
b) Start the workflow now
c) Gather prerequisites first
d) Modify the plan
Success Criteria
The workflow plan is successful when:
- User clearly understands what will happen
- All decision points are documented
- Prerequisites are identified
- Expected outputs are clear
- User feels confident to proceed
- Plan serves as useful progress tracker
Integration with BMad Master and Orchestrator
When used by BMad Master or BMad Orchestrator, this task should:
- Be offered when user asks about workflows
- Be suggested before starting complex workflows
- Create a plan that the agent can reference during execution
- Allow the agent to track progress against the plan
Example Usage
User: "I need to add a payment system to my existing app"
BMad Orchestrator: "Let me help you create a workflow plan for that enhancement. I'll ask a few questions to recommend the best approach..."
[Runs through discovery questions]
BMad Orchestrator: "Based on your answers, I recommend the brownfield-fullstack workflow. Let me create a detailed plan for you..."
[Creates and saves plan]
BMad Orchestrator: "I've created a workflow plan at docs/workflow-plan.md. This shows all the steps we'll go through, what documents will be created, and where you'll need to make decisions. Would you like to review it together?"