bmad-method 4.5.1 → 4.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/bmad-core/agents/bmad-orchestrator.md +55 -66
- package/bmad-core/agents/pm.md +0 -1
- package/bmad-core/tasks/doc-migration-task.md +9 -9
- package/bmad-core/tasks/index-docs.md +3 -7
- package/bmad-core/templates/architecture-tmpl.md +2 -0
- package/bmad-core/templates/brownfield-architecture-tmpl.md +2 -0
- package/bmad-core/templates/brownfield-prd-tmpl.md +2 -0
- package/bmad-core/templates/competitor-analysis-tmpl.md +2 -0
- package/bmad-core/templates/front-end-architecture-tmpl.md +2 -0
- package/bmad-core/templates/front-end-spec-tmpl.md +3 -1
- package/bmad-core/templates/fullstack-architecture-tmpl.md +62 -60
- package/bmad-core/templates/market-research-tmpl.md +2 -0
- package/bmad-core/templates/prd-tmpl.md +4 -2
- package/bmad-core/templates/project-brief-tmpl.md +2 -0
- package/bmad-core/workflows/brownfield-fullstack.yml +19 -58
- package/bmad-core/workflows/brownfield-service.yml +19 -58
- package/bmad-core/workflows/brownfield-ui.yml +20 -59
- package/bmad-core/workflows/greenfield-fullstack.yml +31 -77
- package/bmad-core/workflows/greenfield-service.yml +22 -68
- package/bmad-core/workflows/greenfield-ui.yml +30 -76
- package/dist/agents/architect.txt +60 -60
- package/dist/agents/bmad-master.txt +66 -70
- package/dist/agents/bmad-orchestrator.txt +55 -66
- package/dist/agents/pm.txt +2 -467
- package/dist/agents/ux-expert.txt +1 -1
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +481 -0
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +100 -0
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +100 -0
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +4757 -2941
- package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +35 -0
- package/dist/expansion-packs/expansion-creator/agents/bmad-the-creator.txt +438 -32
- package/dist/teams/team-all.txt +368 -1099
- package/dist/teams/team-fullstack.txt +286 -1017
- package/dist/teams/team-ide-minimal.txt +55 -66
- package/dist/teams/team-no-ui.txt +224 -785
- package/docs/versioning-and-releases.md +6 -6
- package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yml +1 -0
- package/expansion-packs/expansion-creator/tasks/generate-expansion-pack.md +17 -13
- package/package.json +1 -1
- package/tools/builders/web-builder.js +189 -20
- package/tools/installer/package.json +1 -1
- package/bmad-core/templates/simple-project-prd-tmpl.md +0 -461
|
@@ -84,72 +84,68 @@ persona:
|
|
|
84
84
|
- When embodied, specialized persona's principles take precedence
|
|
85
85
|
- Be explicit about active persona and current task
|
|
86
86
|
- Always use numbered lists for choices
|
|
87
|
-
- Process
|
|
87
|
+
- Process commands starting with * immediately
|
|
88
|
+
- Always remind users that commands require * prefix
|
|
88
89
|
startup:
|
|
89
|
-
- Announce:
|
|
90
|
+
- Announce: Introduce yourself as the BMAD Orchestrator, explain you can coordinate agents and workflows
|
|
91
|
+
- IMPORTANT: Tell users that all commands start with * (e.g., *help, *agent, *workflow)
|
|
92
|
+
- Mention *help shows all available commands and options
|
|
90
93
|
- Assess user goal against available agents and workflows in this bundle
|
|
91
|
-
- If clear match to an agent's expertise, suggest transformation
|
|
92
|
-
- If project-oriented,
|
|
93
|
-
- Load resources only when needed
|
|
94
|
-
commands:
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
help-format:
|
|
109
|
-
- When *help is called, focus on agent capabilities and what each can do
|
|
110
|
-
- List actual agent names with their specializations and deliverables
|
|
111
|
-
- List actual workflow names with descriptions
|
|
112
|
-
- DO NOT list individual tasks/checklists (these belong to specific agents)
|
|
113
|
-
- Emphasize that users should switch to an agent to access its specific capabilities
|
|
114
|
-
- Format examples:
|
|
115
|
-
- "*agent game-designer: Game Design Specialist"
|
|
116
|
-
- " Specializes in: Game concepts, mechanics, level design"
|
|
117
|
-
- " Can create: Game design documents, level designs, game briefs"
|
|
94
|
+
- If clear match to an agent's expertise, suggest transformation with *agent command
|
|
95
|
+
- If project-oriented, suggest *workflow-guidance to explore options
|
|
96
|
+
- Load resources only when needed - never pre-load
|
|
97
|
+
commands: # All commands require * prefix when used (e.g., *help, *agent pm)
|
|
98
|
+
help: Show this guide with available agents and workflows
|
|
99
|
+
chat-mode: Start conversational mode for detailed assistance
|
|
100
|
+
kb-mode: Load full BMAD knowledge base
|
|
101
|
+
status: Show current context, active agent, and progress
|
|
102
|
+
agent: Transform into a specialized agent (list if name not specified)
|
|
103
|
+
exit: Return to BMad or exit session
|
|
104
|
+
task: Run a specific task (list if name not specified)
|
|
105
|
+
workflow: Start a specific workflow (list if name not specified)
|
|
106
|
+
workflow-guidance: Get personalized help selecting the right workflow
|
|
107
|
+
checklist: Execute a checklist (list if name not specified)
|
|
108
|
+
yolo: Toggle skip confirmations mode
|
|
109
|
+
party-mode: Group chat with all agents
|
|
110
|
+
doc-out: Output full document
|
|
118
111
|
help-display-template: |
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
I coordinate specialized agents for different tasks. Tell me what you need, and I'll connect you with the right expert!
|
|
112
|
+
=== BMAD Orchestrator Commands ===
|
|
113
|
+
All commands must start with * (asterisk)
|
|
122
114
|
|
|
123
|
-
|
|
124
|
-
*help
|
|
125
|
-
*chat-mode
|
|
126
|
-
*kb-mode
|
|
127
|
-
*status
|
|
128
|
-
*
|
|
129
|
-
*party-mode: Group chat with all agents
|
|
130
|
-
*doc-out: Output full document
|
|
131
|
-
*exit: Return to BMad or exit session
|
|
115
|
+
Core Commands:
|
|
116
|
+
*help ............... Show this guide
|
|
117
|
+
*chat-mode .......... Start conversational mode for detailed assistance
|
|
118
|
+
*kb-mode ............ Load full BMAD knowledge base
|
|
119
|
+
*status ............. Show current context, active agent, and progress
|
|
120
|
+
*exit ............... Return to BMad or exit session
|
|
132
121
|
|
|
133
|
-
Agent Management:
|
|
134
|
-
*agent
|
|
135
|
-
*task
|
|
136
|
-
*checklist
|
|
122
|
+
Agent & Task Management:
|
|
123
|
+
*agent [name] ....... Transform into specialized agent (list if no name)
|
|
124
|
+
*task [name] ........ Run specific task (list if no name, requires agent)
|
|
125
|
+
*checklist [name] ... Execute checklist (list if no name, requires agent)
|
|
137
126
|
|
|
138
127
|
Workflow Commands:
|
|
139
|
-
*workflow
|
|
140
|
-
*workflow-guidance
|
|
128
|
+
*workflow [name] .... Start specific workflow (list if no name)
|
|
129
|
+
*workflow-guidance .. Get personalized help selecting the right workflow
|
|
141
130
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
*
|
|
145
|
-
|
|
146
|
-
Can create: {list of documents/deliverables this agent produces}]
|
|
131
|
+
Other Commands:
|
|
132
|
+
*yolo ............... Toggle skip confirmations mode
|
|
133
|
+
*party-mode ......... Group chat with all agents
|
|
134
|
+
*doc-out ............ Output full document
|
|
147
135
|
|
|
148
|
-
Available
|
|
149
|
-
[
|
|
150
|
-
*
|
|
136
|
+
=== Available Specialist Agents ===
|
|
137
|
+
[Dynamically list each agent in bundle with format:
|
|
138
|
+
*agent {id}: {title}
|
|
139
|
+
When to use: {whenToUse}
|
|
140
|
+
Key deliverables: {main outputs/documents}]
|
|
151
141
|
|
|
152
|
-
|
|
142
|
+
=== Available Workflows ===
|
|
143
|
+
[Dynamically list each workflow in bundle with format:
|
|
144
|
+
*workflow {id}: {name}
|
|
145
|
+
Purpose: {description}]
|
|
146
|
+
|
|
147
|
+
💡 Tip: Each agent has unique tasks, templates, and checklists. Switch to an agent to access their capabilities!
|
|
148
|
+
|
|
153
149
|
fuzzy-matching:
|
|
154
150
|
- 85% confidence threshold
|
|
155
151
|
- Show numbered list if unsure
|
|
@@ -160,24 +156,17 @@ transformation:
|
|
|
160
156
|
loading:
|
|
161
157
|
- KB: Only for *kb-mode or BMAD questions
|
|
162
158
|
- Agents: Only when transforming
|
|
163
|
-
-
|
|
159
|
+
- Templates/Tasks: Only when executing
|
|
164
160
|
- Always indicate loading
|
|
165
161
|
workflow-guidance:
|
|
166
162
|
- Discover available workflows in the bundle at runtime
|
|
167
163
|
- Understand each workflow's purpose, options, and decision points
|
|
168
164
|
- Ask clarifying questions based on the workflow's structure
|
|
169
165
|
- Guide users through workflow selection when multiple options exist
|
|
170
|
-
- For workflows with divergent paths
|
|
166
|
+
- For workflows with divergent paths, help users choose the right path
|
|
171
167
|
- Adapt questions to the specific domain (e.g., game dev vs infrastructure vs web dev)
|
|
172
168
|
- Only recommend workflows that actually exist in the current bundle
|
|
173
|
-
workflow-guidance
|
|
174
|
-
- When *workflow-guidance is called, start an interactive session
|
|
175
|
-
- First, list all available workflows with brief descriptions
|
|
176
|
-
- Ask about the user's project goals and constraints
|
|
177
|
-
- Based on answers, recommend the most suitable workflow
|
|
178
|
-
- If a workflow has multiple paths, help choose between them (e.g., complex vs simple project flow)
|
|
179
|
-
- Explain what documents will be created and which agents will be involved
|
|
180
|
-
- Offer to start the recommended workflow immediately
|
|
169
|
+
- When *workflow-guidance is called, start an interactive session and list all available workflows with brief descriptions
|
|
181
170
|
dependencies:
|
|
182
171
|
tasks:
|
|
183
172
|
- advanced-elicitation
|
|
@@ -303,7 +292,6 @@ dependencies:
|
|
|
303
292
|
templates:
|
|
304
293
|
- prd-tmpl
|
|
305
294
|
- brownfield-prd-tmpl
|
|
306
|
-
- simple-project-prd-tmpl
|
|
307
295
|
checklists:
|
|
308
296
|
- pm-checklist
|
|
309
297
|
- change-checklist
|
|
@@ -3097,7 +3085,7 @@ Document sharded successfully:
|
|
|
3097
3085
|
CRITICAL: Epics MUST be logically sequential following agile best practices:
|
|
3098
3086
|
|
|
3099
3087
|
- Each epic should deliver a significant, end-to-end, fully deployable increment of testable functionality
|
|
3100
|
-
- Epic 1 must establish foundational project infrastructure (app setup, Git, CI/CD, core services) unless we are adding new functionality to an existing app, while also delivering an initial piece of functionality, even as simple as a health-check route or display of a simple canary page
|
|
3088
|
+
- Epic 1 must establish foundational project infrastructure (app setup, Git, CI/CD, core services) unless we are adding new functionality to an existing app, while also delivering an initial piece of functionality, even as simple as a health-check route or display of a simple canary page - remember this when we produce the stories for the first epic!
|
|
3101
3089
|
- Each subsequent epic builds upon previous epics' functionality delivering major blocks of functionality that provide tangible value to users or business when deployed
|
|
3102
3090
|
- Not every project needs multiple epics, an epic needs to deliver value. For example, an API completed can deliver value even if a UI is not complete and planned for a separate epic.
|
|
3103
3091
|
- Err on the side of less epics, but let the user know your rationale and offer options for splitting them if it seems some are too large or focused on disparate things.
|
|
@@ -3129,7 +3117,7 @@ CRITICAL: Epics MUST be logically sequential following agile best practices:
|
|
|
3129
3117
|
[[LLM: CRITICAL STORY SEQUENCING REQUIREMENTS:
|
|
3130
3118
|
|
|
3131
3119
|
- Stories within each epic MUST be logically sequential
|
|
3132
|
-
- Each story should be a "vertical slice" delivering complete functionality
|
|
3120
|
+
- Each story should be a "vertical slice" delivering complete functionality aside from early enabler stories for project foundation
|
|
3133
3121
|
- No story should depend on work from a later story or epic
|
|
3134
3122
|
- Identify and note any direct prerequisite stories
|
|
3135
3123
|
- Focus on "what" and "why" not "how" (leave technical implementation to Architect) yet be precise enough to support a logical sequential order of operations from story to story.
|
|
@@ -3369,494 +3357,35 @@ Do not proceed with any recommendations until the user has validated your unders
|
|
|
3369
3357
|
|
|
3370
3358
|
[[LLM: For brownfield projects, favor a single comprehensive epic unless the user is clearly requesting multiple unrelated enhancements. Before presenting the epic structure, confirm: "Based on my analysis of your existing project, I believe this enhancement should be structured as [single epic/multiple epics] because [rationale based on actual project analysis]. Does this align with your understanding of the work required?" Then present the epic structure and immediately execute tasks#advanced-elicitation display.]]
|
|
3371
3359
|
|
|
3372
|
-
### Epic Approach
|
|
3373
|
-
|
|
3374
|
-
[[LLM: Explain the rationale for epic structure - typically single epic for brownfield unless multiple unrelated features]]
|
|
3375
|
-
|
|
3376
|
-
**Epic Structure Decision**: [[LLM: Single Epic or Multiple Epics with rationale]]
|
|
3377
|
-
|
|
3378
|
-
## Epic 1: {{enhancement_title}}
|
|
3379
|
-
|
|
3380
|
-
[[LLM: Comprehensive epic that delivers the brownfield enhancement while maintaining existing functionality]]
|
|
3381
|
-
|
|
3382
|
-
**Epic Goal**: [[LLM: 2-3 sentences describing the complete enhancement objective and value]]
|
|
3383
|
-
|
|
3384
|
-
**Integration Requirements**: [[LLM: Key integration points with existing system]]
|
|
3385
|
-
|
|
3386
|
-
[[LLM: CRITICAL STORY SEQUENCING FOR BROWNFIELD:
|
|
3387
|
-
|
|
3388
|
-
- Stories must ensure existing functionality remains intact
|
|
3389
|
-
- Each story should include verification that existing features still work
|
|
3390
|
-
- Stories should be sequenced to minimize risk to existing system
|
|
3391
|
-
- Include rollback considerations for each story
|
|
3392
|
-
- Focus on incremental integration rather than big-bang changes
|
|
3393
|
-
- Size stories for AI agent execution in existing codebase context
|
|
3394
|
-
- MANDATORY: Present the complete story sequence and ask: "This story sequence is designed to minimize risk to your existing system. Does this order make sense given your project's architecture and constraints?"
|
|
3395
|
-
- Stories must be logically sequential with clear dependencies identified
|
|
3396
|
-
- Each story must deliver value while maintaining system integrity]]
|
|
3397
|
-
|
|
3398
|
-
<<REPEAT: story>>
|
|
3399
|
-
|
|
3400
|
-
### Story 1.{{story_number}} {{story_title}}
|
|
3401
|
-
|
|
3402
|
-
As a {{user_type}},
|
|
3403
|
-
I want {{action}},
|
|
3404
|
-
so that {{benefit}}.
|
|
3405
|
-
|
|
3406
|
-
#### Acceptance Criteria
|
|
3407
|
-
|
|
3408
|
-
[[LLM: Define criteria that include both new functionality and existing system integrity]]
|
|
3409
|
-
|
|
3410
|
-
<<REPEAT: criteria>>
|
|
3411
|
-
|
|
3412
|
-
- {{criterion number}}: {{criteria}}
|
|
3413
|
-
|
|
3414
|
-
<</REPEAT>>
|
|
3415
|
-
|
|
3416
|
-
#### Integration Verification
|
|
3417
|
-
|
|
3418
|
-
[[LLM: Specific verification steps to ensure existing functionality remains intact]]
|
|
3419
|
-
|
|
3420
|
-
- IV1: [[LLM: Existing functionality verification requirement]]
|
|
3421
|
-
- IV2: [[LLM: Integration point verification requirement]]
|
|
3422
|
-
- IV3: [[LLM: Performance impact verification requirement]]
|
|
3423
|
-
|
|
3424
|
-
<</REPEAT>>
|
|
3425
|
-
==================== END: templates#brownfield-prd-tmpl ====================
|
|
3426
|
-
|
|
3427
|
-
==================== START: templates#simple-project-prd-tmpl ====================
|
|
3428
|
-
# {{Project Name}} Product Requirements Document (PRD)
|
|
3429
|
-
|
|
3430
|
-
[[LLM: If available, review any provided document or ask if any are optionally available: Project Brief]]
|
|
3431
|
-
|
|
3432
|
-
## Goals and Background Context
|
|
3433
|
-
|
|
3434
|
-
[[LLM: Populate the 2 child sections based on what we have received from user description or the provided brief. Allow user to review the 2 sections and offer changes before proceeding]]
|
|
3435
|
-
|
|
3436
|
-
### Goals
|
|
3437
|
-
|
|
3438
|
-
[[LLM: Bullet list of 1 line desired outcomes the PRD will deliver if successful - user and project desires]]
|
|
3439
|
-
|
|
3440
|
-
### Background Context
|
|
3441
|
-
|
|
3442
|
-
[[LLM: 1-2 short paragraphs summarizing the background context, such as what we learned in the brief without being redundant with the goals, what and why this solves a problem, what the current landscape or need is etc...]]
|
|
3443
|
-
|
|
3444
|
-
### Change Log
|
|
3445
|
-
|
|
3446
|
-
[[LLM: Track document versions and changes]]
|
|
3447
|
-
|
|
3448
|
-
| Date | Version | Description | Author |
|
|
3449
|
-
| :--- | :------ | :---------- | :----- |
|
|
3450
|
-
|
|
3451
|
-
## Requirements
|
|
3452
|
-
|
|
3453
|
-
[[LLM: Draft the list of functional and non functional requirements under the two child sections, and immediately execute tasks#advanced-elicitation display]]
|
|
3454
|
-
|
|
3455
|
-
### Functional
|
|
3456
|
-
|
|
3457
|
-
[[LLM: Each Requirement will be a bullet markdown and an identifier sequence starting with FR`.]]
|
|
3458
|
-
@{example: - FR6: The Todo List uses AI to detect and warn against adding potentially duplicate todo items that are worded differently.}
|
|
3459
|
-
|
|
3460
|
-
### Non Functional
|
|
3461
|
-
|
|
3462
|
-
[[LLM: Each Requirement will be a bullet markdown and an identifier sequence starting with NFR`.]]
|
|
3463
|
-
@{example: - NFR1: AWS service usage **must** aim to stay within free-tier limits where feasible.}
|
|
3464
|
-
|
|
3465
|
-
^^CONDITION: has_ui^^
|
|
3466
|
-
|
|
3467
|
-
## User Interface Design Goals
|
|
3468
|
-
|
|
3469
|
-
[[LLM: Capture high-level UI/UX vision to inform story creation and also generate a prompt for Lovable or V0 if the user would like either. Steps:
|
|
3470
|
-
|
|
3471
|
-
1. Pre-fill all subsections with educated guesses based on project context
|
|
3472
|
-
2. Present the complete rendered section to user
|
|
3473
|
-
3. Clearly let the user know where assumptions were made
|
|
3474
|
-
4. Ask targeted questions for unclear/missing elements or areas needing more specification
|
|
3475
|
-
5. This is NOT detailed UI spec - focus on product vision and user goals
|
|
3476
|
-
6. After section completion, immediately apply `tasks#advanced-elicitation` protocol]]
|
|
3477
|
-
|
|
3478
|
-
### Overall UX Vision
|
|
3479
|
-
|
|
3480
|
-
### Key Interaction Paradigms
|
|
3481
|
-
|
|
3482
|
-
### Core Screens and Views
|
|
3483
|
-
|
|
3484
|
-
[[LLM: From a product perspective, what are the most critical screens or views necessary to deliver the the PRD values and goals? This is meant to be Conceptual High Level to Drive Rough Epic or User Stories]]
|
|
3485
|
-
|
|
3486
|
-
@{example}
|
|
3487
|
-
|
|
3488
|
-
- Login Screen
|
|
3489
|
-
- Main Dashboard
|
|
3490
|
-
- Item Detail Page
|
|
3491
|
-
- Settings Page
|
|
3492
|
-
@{/example}
|
|
3493
|
-
|
|
3494
|
-
### Accessibility: { None, WCAG, etc }
|
|
3495
|
-
|
|
3496
|
-
### Branding
|
|
3497
|
-
|
|
3498
|
-
[[LLM: Any known branding elements or style guides that must be incorporated?]]
|
|
3499
|
-
|
|
3500
|
-
@{example}
|
|
3501
|
-
|
|
3502
|
-
- Replicate the look and feel of early 1900s black and white cinema, including animated effects replicating film damage or projector glitches during page or state transitions.
|
|
3503
|
-
- Attached is the full color pallet and tokens for our corporate branding.
|
|
3504
|
-
@{/example}
|
|
3505
|
-
|
|
3506
|
-
### Target Device and Platforms
|
|
3507
|
-
|
|
3508
|
-
@{example}
|
|
3509
|
-
"Web Responsive, and all mobile platforms", "IPhone Only", "ASCII Windows Desktop"
|
|
3510
|
-
@{/example}
|
|
3511
|
-
|
|
3512
|
-
^^/CONDITION: has_ui^^
|
|
3513
|
-
|
|
3514
|
-
## Technical Assumptions
|
|
3515
|
-
|
|
3516
|
-
[[LLM: Gather technical decisions that will be used for this simple technical PRD that includes architecture decisions. Steps:
|
|
3517
|
-
|
|
3518
|
-
1. Check if `data#technical-preferences` or an attached `technical-preferences` file exists - use it to pre-populate choices
|
|
3519
|
-
2. Ask user about: languages, frameworks, starter templates, libraries, APIs, deployment targets
|
|
3520
|
-
3. For unknowns, offer guidance based on project goals and MVP scope
|
|
3521
|
-
4. Document ALL technical choices with rationale (why this choice fits the project)
|
|
3522
|
-
5. These become constraints for the Architect - be specific and complete
|
|
3523
|
-
6. After section completion, apply `tasks#advanced-elicitation` protocol.]]
|
|
3524
|
-
|
|
3525
|
-
### Repository Structure: { Monorepo, Polyrepo, etc...}
|
|
3526
|
-
|
|
3527
|
-
### Service Architecture
|
|
3528
|
-
|
|
3529
|
-
[[LLM: CRITICAL DECISION - Document the high-level service architecture (e.g., Monolith, Microservices, Serverless functions within a Monorepo).]]
|
|
3530
|
-
|
|
3531
|
-
## Testing requirements
|
|
3532
|
-
|
|
3533
|
-
[[LLM: CRITICAL DECISION - Document the testing requirements, unit only, integration, e2e, manual, need for manual testing convenience methods).]]
|
|
3534
|
-
|
|
3535
|
-
### Additional Technical Assumptions and Requests
|
|
3536
|
-
|
|
3537
|
-
[[LLM: Throughout the entire process of drafting this document, if any other technical assumptions are raised or discovered appropriate for the architect, add them here as additional bulleted items]]
|
|
3538
|
-
|
|
3539
|
-
## Data Models
|
|
3540
|
-
|
|
3541
|
-
[[LLM: Define the core data models/entities that will be used in the front end (if there is one), core application or back end, and if both, shared between frontend and backend:
|
|
3542
|
-
|
|
3543
|
-
1. Review PRD requirements and identify key business entities
|
|
3544
|
-
2. For each model, explain its purpose and relationships
|
|
3545
|
-
3. Include key attributes and data types
|
|
3546
|
-
4. Show relationships between models
|
|
3547
|
-
5. Create TypeScript interfaces that can be shared
|
|
3548
|
-
6. Discuss design decisions with user
|
|
3549
|
-
|
|
3550
|
-
Create a clear conceptual model before moving to database schema.
|
|
3551
|
-
|
|
3552
|
-
After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
|
|
3553
|
-
|
|
3554
|
-
<<REPEAT: data_model>>
|
|
3555
|
-
|
|
3556
|
-
### {{model_name}}
|
|
3557
|
-
|
|
3558
|
-
**Purpose:** {{model_purpose}}
|
|
3559
|
-
|
|
3560
|
-
**Key Attributes:**
|
|
3561
|
-
|
|
3562
|
-
- {{attribute_1}}: {{type_1}} - {{description_1}}
|
|
3563
|
-
- {{attribute_2}}: {{type_2}} - {{description_2}}
|
|
3564
|
-
|
|
3565
|
-
**TypeScript Interface:**
|
|
3566
|
-
|
|
3567
|
-
````typescript
|
|
3568
|
-
{
|
|
3569
|
-
{
|
|
3570
|
-
model_interface;
|
|
3571
|
-
}
|
|
3572
|
-
}
|
|
3573
|
-
```text
|
|
3574
|
-
|
|
3575
|
-
**Relationships:**
|
|
3576
|
-
|
|
3577
|
-
- {{relationship_1}}
|
|
3578
|
-
- {{relationship_2}}
|
|
3579
|
-
<</REPEAT>>
|
|
3580
|
-
|
|
3581
|
-
@{example: data_model}
|
|
3582
|
-
|
|
3583
|
-
### User
|
|
3584
|
-
|
|
3585
|
-
**Purpose:** Represents authenticated users in the system
|
|
3586
|
-
|
|
3587
|
-
**Key Attributes:**
|
|
3588
|
-
|
|
3589
|
-
- id: string - Unique identifier
|
|
3590
|
-
- email: string - User's email address
|
|
3591
|
-
- name: string - Display name
|
|
3592
|
-
- role: enum - User permission level
|
|
3593
|
-
- timestamps: Date - Created and updated times
|
|
3594
|
-
|
|
3595
|
-
**TypeScript Interface:**
|
|
3596
|
-
|
|
3597
|
-
```typescript
|
|
3598
|
-
interface User {
|
|
3599
|
-
id: string;
|
|
3600
|
-
email: string;
|
|
3601
|
-
name: string;
|
|
3602
|
-
role: "admin" | "user" | "guest";
|
|
3603
|
-
createdAt: Date;
|
|
3604
|
-
updatedAt: Date;
|
|
3605
|
-
profile?: UserProfile;
|
|
3606
|
-
}
|
|
3607
|
-
|
|
3608
|
-
interface UserProfile {
|
|
3609
|
-
avatarUrl?: string;
|
|
3610
|
-
bio?: string;
|
|
3611
|
-
preferences: Record<string, any>;
|
|
3612
|
-
}
|
|
3613
|
-
````
|
|
3614
|
-
|
|
3615
|
-
**Relationships:**
|
|
3616
|
-
|
|
3617
|
-
- Has many Posts (1:n)
|
|
3618
|
-
- Has one Profile (1:1)
|
|
3619
|
-
@{/example}
|
|
3620
|
-
|
|
3621
|
-
## REST API Spec
|
|
3622
|
-
|
|
3623
|
-
[[LLM: Based on the chosen API style from Tech Stack:
|
|
3624
|
-
|
|
3625
|
-
1. If REST API, create an OpenAPI 3.0 specification
|
|
3626
|
-
2. If GraphQL, provide the GraphQL schema
|
|
3627
|
-
3. If tRPC, show router definitions
|
|
3628
|
-
4. Include all endpoints from epics/stories
|
|
3629
|
-
5. Define request/response schemas based on data models
|
|
3630
|
-
6. Document authentication requirements
|
|
3631
|
-
7. Include example requests/responses
|
|
3632
|
-
|
|
3633
|
-
Use appropriate format for the chosen API style. If no API (e.g., static site), skip this section.]]
|
|
3634
|
-
|
|
3635
|
-
^^CONDITION: has_rest_api^^
|
|
3636
|
-
|
|
3637
|
-
````yml
|
|
3638
|
-
openapi: 3.0.0
|
|
3639
|
-
info:
|
|
3640
|
-
title:
|
|
3641
|
-
'[object Object]': null
|
|
3642
|
-
version:
|
|
3643
|
-
'[object Object]': null
|
|
3644
|
-
description:
|
|
3645
|
-
'[object Object]': null
|
|
3646
|
-
servers:
|
|
3647
|
-
- url:
|
|
3648
|
-
'[object Object]': null
|
|
3649
|
-
description:
|
|
3650
|
-
'[object Object]': null
|
|
3651
|
-
```text
|
|
3652
|
-
|
|
3653
|
-
^^/CONDITION: has_rest_api^^
|
|
3654
|
-
|
|
3655
|
-
^^CONDITION: has_graphql_api^^
|
|
3656
|
-
|
|
3657
|
-
```graphql
|
|
3658
|
-
# GraphQL Schema
|
|
3659
|
-
{{graphql_schema}}
|
|
3660
|
-
````
|
|
3661
|
-
|
|
3662
|
-
^^/CONDITION: has_graphql_api^^
|
|
3663
|
-
|
|
3664
|
-
^^CONDITION: has_trpc_api^^
|
|
3665
|
-
|
|
3666
|
-
```typescript
|
|
3667
|
-
// tRPC Router Definitions
|
|
3668
|
-
{
|
|
3669
|
-
{
|
|
3670
|
-
trpc_routers;
|
|
3671
|
-
}
|
|
3672
|
-
}
|
|
3673
|
-
```
|
|
3674
|
-
|
|
3675
|
-
^^/CONDITION: has_trpc_api^^
|
|
3676
|
-
|
|
3677
|
-
[[LLM: After presenting the API spec (or noting its absence if not applicable), apply `tasks#advanced-elicitation` protocol]]
|
|
3678
|
-
|
|
3679
|
-
## Components
|
|
3680
|
-
|
|
3681
|
-
[[LLM: Based on the architectural patterns, tech stack, and data models from above:
|
|
3682
|
-
|
|
3683
|
-
1. Identify major logical components/services across the fullstack
|
|
3684
|
-
2. Consider both frontend and backend components
|
|
3685
|
-
3. Define clear boundaries and interfaces between components
|
|
3686
|
-
4. For each component, specify:
|
|
3687
|
-
|
|
3688
|
-
- Primary responsibility
|
|
3689
|
-
- Key interfaces/APIs exposed
|
|
3690
|
-
- Dependencies on other components
|
|
3691
|
-
- Technology specifics based on tech stack choices
|
|
3692
|
-
|
|
3693
|
-
5. Create component diagrams where helpful
|
|
3694
|
-
6. After presenting all components, apply `tasks#advanced-elicitation` protocol]]
|
|
3695
|
-
|
|
3696
|
-
<<REPEAT: component>>
|
|
3697
|
-
|
|
3698
|
-
### {{component_name}}
|
|
3699
|
-
|
|
3700
|
-
**Responsibility:** {{component_description}}
|
|
3701
|
-
|
|
3702
|
-
**Key Interfaces:**
|
|
3703
|
-
|
|
3704
|
-
- {{interface_1}}
|
|
3705
|
-
- {{interface_2}}
|
|
3706
|
-
|
|
3707
|
-
**Dependencies:** {{dependencies}}
|
|
3708
|
-
|
|
3709
|
-
**Technology Stack:** {{component_tech_details}}
|
|
3710
|
-
<</REPEAT>>
|
|
3711
|
-
|
|
3712
|
-
### Component Diagrams
|
|
3713
|
-
|
|
3714
|
-
[[LLM: Create Mermaid diagrams to visualize component relationships. Options:
|
|
3715
|
-
|
|
3716
|
-
- C4 Container diagram for high-level view
|
|
3717
|
-
- Component diagram for detailed internal structure
|
|
3718
|
-
- Sequence diagrams for complex interactions
|
|
3719
|
-
Choose the most appropriate for clarity
|
|
3720
|
-
|
|
3721
|
-
After presenting the diagrams, apply `tasks#advanced-elicitation` protocol]]
|
|
3722
|
-
|
|
3723
|
-
## External APIs
|
|
3724
|
-
|
|
3725
|
-
[[LLM: For each external service integration:
|
|
3726
|
-
|
|
3727
|
-
1. Identify APIs needed based on PRD requirements and component design
|
|
3728
|
-
2. If documentation URLs are unknown, ask user for specifics
|
|
3729
|
-
3. Document authentication methods and security considerations
|
|
3730
|
-
4. List specific endpoints that will be used
|
|
3731
|
-
5. Note any rate limits or usage constraints
|
|
3732
|
-
|
|
3733
|
-
If no external APIs are needed, state this explicitly and skip to next section.]]
|
|
3734
|
-
|
|
3735
|
-
^^CONDITION: has_external_apis^^
|
|
3736
|
-
|
|
3737
|
-
<<REPEAT: external_api>>
|
|
3738
|
-
|
|
3739
|
-
### {{api_name}} API
|
|
3740
|
-
|
|
3741
|
-
- **Purpose:** {{api_purpose}}
|
|
3742
|
-
- **Documentation:** {{api_docs_url}}
|
|
3743
|
-
- **Base URL(s):** {{api_base_url}}
|
|
3744
|
-
- **Authentication:** {{auth_method}}
|
|
3745
|
-
- **Rate Limits:** {{rate_limits}}
|
|
3746
|
-
|
|
3747
|
-
**Key Endpoints Used:**
|
|
3748
|
-
<<REPEAT: endpoint>>
|
|
3749
|
-
|
|
3750
|
-
- `{{method}} {{endpoint_path}}` - {{endpoint_purpose}}
|
|
3751
|
-
<</REPEAT>>
|
|
3752
|
-
|
|
3753
|
-
**Integration Notes:** {{integration_considerations}}
|
|
3754
|
-
<</REPEAT>>
|
|
3755
|
-
|
|
3756
|
-
@{example: external_api}
|
|
3757
|
-
|
|
3758
|
-
### Stripe API
|
|
3759
|
-
|
|
3760
|
-
- **Purpose:** Payment processing and subscription management
|
|
3761
|
-
- **Documentation:** https://stripe.com/docs/api
|
|
3762
|
-
- **Base URL(s):** `https://api.stripe.com/v1`
|
|
3763
|
-
- **Authentication:** Bearer token with secret key
|
|
3764
|
-
- **Rate Limits:** 100 requests per second
|
|
3765
|
-
|
|
3766
|
-
**Key Endpoints Used:**
|
|
3767
|
-
|
|
3768
|
-
- `POST /customers` - Create customer profiles
|
|
3769
|
-
- `POST /payment_intents` - Process payments
|
|
3770
|
-
- `POST /subscriptions` - Manage subscriptions
|
|
3771
|
-
@{/example}
|
|
3772
|
-
|
|
3773
|
-
^^/CONDITION: has_external_apis^^
|
|
3774
|
-
|
|
3775
|
-
[[LLM: After presenting external APIs (or noting their absence), apply `tasks#advanced-elicitation` protocol]]
|
|
3776
|
-
|
|
3777
|
-
## Coding Standards
|
|
3778
|
-
|
|
3779
|
-
[[LLM: Define MINIMAL but CRITICAL standards for AI agents. Focus only on project-specific rules that prevent common mistakes. These will be used by dev agents.
|
|
3780
|
-
|
|
3781
|
-
After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
3782
|
-
|
|
3783
|
-
### Critical Fullstack Rules
|
|
3784
|
-
|
|
3785
|
-
<<REPEAT: critical_rule>>
|
|
3786
|
-
|
|
3787
|
-
- **{{rule_name}}:** {{rule_description}}
|
|
3788
|
-
<</REPEAT>>
|
|
3789
|
-
|
|
3790
|
-
@{example: critical_rules}
|
|
3791
|
-
|
|
3792
|
-
- **Type Sharing:** Always define types in packages/shared and import from there
|
|
3793
|
-
- **API Calls:** Never make direct HTTP calls - use the service layer
|
|
3794
|
-
- **Environment Variables:** Access only through config objects, never process.env directly
|
|
3795
|
-
- **Error Handling:** All API routes must use the standard error handler
|
|
3796
|
-
- **State Updates:** Never mutate state directly - use proper state management patterns
|
|
3797
|
-
@{/example}
|
|
3798
|
-
|
|
3799
|
-
### Naming Conventions
|
|
3800
|
-
|
|
3801
|
-
| Element | Frontend | Backend | Example |
|
|
3802
|
-
| :-------------- | :------------------- | :--------- | :------------------ |
|
|
3803
|
-
| Components | PascalCase | - | `UserProfile.tsx` |
|
|
3804
|
-
| Hooks | camelCase with 'use' | - | `useAuth.ts` |
|
|
3805
|
-
| API Routes | - | kebab-case | `/api/user-profile` |
|
|
3806
|
-
| Database Tables | - | snake_case | `user_profiles` |
|
|
3807
|
-
|
|
3808
|
-
## Epics
|
|
3809
|
-
|
|
3810
|
-
[[LLM: First, present a high-level list of all epics for user approval, the epic_list and immediately execute tasks#advanced-elicitation display. Each epic should have a title and a short (1 sentence) goal statement. This allows the user to review the overall structure before diving into details.
|
|
3811
|
-
|
|
3812
|
-
CRITICAL: Epics MUST be logically sequential following agile best practices:
|
|
3813
|
-
|
|
3814
|
-
- Each epic should deliver a significant, end-to-end, fully deployable increment of testable functionality
|
|
3815
|
-
- Epic 1 must establish foundational project infrastructure (app setup, Git, CI/CD, core services) unless we are adding new functionality to an existing app, while also delivering an initial piece of functionality, even as simple as a health-check route or display of a simple canary page
|
|
3816
|
-
- Each subsequent epic builds upon previous epics' functionality delivering major blocks of functionality that provide tangible value to users or business when deployed
|
|
3817
|
-
- Not every project needs multiple epics, an epic needs to deliver value. For example, an API completed can deliver value even if a UI is not complete and planned for a separate epic.
|
|
3818
|
-
- Err on the side of less epics, but let the user know your rationale and offer options for splitting them if it seems some are too large or focused on disparate things.
|
|
3819
|
-
- Cross Cutting Concerns should flow through epics and stories and not be final stories. For example, adding a logging framework as a last story of an epic, or at the end of a project as a final epic or story would be terrible as we would not have logging from the beginning.]]
|
|
3820
|
-
|
|
3821
|
-
<<REPEAT: epic_list>>
|
|
3822
|
-
|
|
3823
|
-
- Epic{{epic_number}} {{epic_title}}: {{short_goal}}
|
|
3824
|
-
|
|
3825
|
-
<</REPEAT>>
|
|
3826
|
-
|
|
3827
|
-
@{example: epic_list}
|
|
3360
|
+
### Epic Approach
|
|
3828
3361
|
|
|
3829
|
-
|
|
3830
|
-
2. Core Business Entities: Create and manage primary domain objects with CRUD operations
|
|
3831
|
-
3. User Workflows & Interactions: Enable key user journeys and business processes
|
|
3832
|
-
4. Reporting & Analytics: Provide insights and data visualization for users
|
|
3362
|
+
[[LLM: Explain the rationale for epic structure - typically single epic for brownfield unless multiple unrelated features]]
|
|
3833
3363
|
|
|
3834
|
-
|
|
3364
|
+
**Epic Structure Decision**: [[LLM: Single Epic or Multiple Epics with rationale]]
|
|
3835
3365
|
|
|
3836
|
-
|
|
3366
|
+
## Epic 1: {{enhancement_title}}
|
|
3837
3367
|
|
|
3838
|
-
|
|
3368
|
+
[[LLM: Comprehensive epic that delivers the brownfield enhancement while maintaining existing functionality]]
|
|
3839
3369
|
|
|
3840
|
-
|
|
3370
|
+
**Epic Goal**: [[LLM: 2-3 sentences describing the complete enhancement objective and value]]
|
|
3841
3371
|
|
|
3842
|
-
|
|
3372
|
+
**Integration Requirements**: [[LLM: Key integration points with existing system]]
|
|
3843
3373
|
|
|
3844
|
-
[[LLM: CRITICAL STORY SEQUENCING
|
|
3374
|
+
[[LLM: CRITICAL STORY SEQUENCING FOR BROWNFIELD:
|
|
3845
3375
|
|
|
3846
|
-
- Stories
|
|
3847
|
-
- Each story should
|
|
3848
|
-
-
|
|
3849
|
-
-
|
|
3850
|
-
- Focus on
|
|
3851
|
-
-
|
|
3852
|
-
-
|
|
3853
|
-
-
|
|
3854
|
-
-
|
|
3855
|
-
- Each story should result in working, testable code before the agent's context window fills]]
|
|
3376
|
+
- Stories must ensure existing functionality remains intact
|
|
3377
|
+
- Each story should include verification that existing features still work
|
|
3378
|
+
- Stories should be sequenced to minimize risk to existing system
|
|
3379
|
+
- Include rollback considerations for each story
|
|
3380
|
+
- Focus on incremental integration rather than big-bang changes
|
|
3381
|
+
- Size stories for AI agent execution in existing codebase context
|
|
3382
|
+
- MANDATORY: Present the complete story sequence and ask: "This story sequence is designed to minimize risk to your existing system. Does this order make sense given your project's architecture and constraints?"
|
|
3383
|
+
- Stories must be logically sequential with clear dependencies identified
|
|
3384
|
+
- Each story must deliver value while maintaining system integrity]]
|
|
3856
3385
|
|
|
3857
3386
|
<<REPEAT: story>>
|
|
3858
3387
|
|
|
3859
|
-
### Story
|
|
3388
|
+
### Story 1.{{story_number}} {{story_title}}
|
|
3860
3389
|
|
|
3861
3390
|
As a {{user_type}},
|
|
3862
3391
|
I want {{action}},
|
|
@@ -3864,29 +3393,24 @@ so that {{benefit}}.
|
|
|
3864
3393
|
|
|
3865
3394
|
#### Acceptance Criteria
|
|
3866
3395
|
|
|
3867
|
-
[[LLM: Define
|
|
3868
|
-
|
|
3869
|
-
- Precisely define what "done" means from a functional perspective
|
|
3870
|
-
- Are unambiguous and serve as basis for verification
|
|
3871
|
-
- Include any critical non-functional requirements from the PRD
|
|
3872
|
-
- Consider local testability for backend/data components
|
|
3873
|
-
- Specify UI/UX requirements and framework adherence where applicable
|
|
3874
|
-
- Avoid cross-cutting concerns that should be in other stories or PRD sections]]
|
|
3396
|
+
[[LLM: Define criteria that include both new functionality and existing system integrity]]
|
|
3875
3397
|
|
|
3876
3398
|
<<REPEAT: criteria>>
|
|
3877
3399
|
|
|
3878
3400
|
- {{criterion number}}: {{criteria}}
|
|
3879
3401
|
|
|
3880
|
-
<</REPEAT>>
|
|
3881
|
-
<</REPEAT>>
|
|
3882
3402
|
<</REPEAT>>
|
|
3883
3403
|
|
|
3884
|
-
|
|
3404
|
+
#### Integration Verification
|
|
3885
3405
|
|
|
3886
|
-
|
|
3406
|
+
[[LLM: Specific verification steps to ensure existing functionality remains intact]]
|
|
3887
3407
|
|
|
3888
|
-
[[LLM:
|
|
3889
|
-
|
|
3408
|
+
- IV1: [[LLM: Existing functionality verification requirement]]
|
|
3409
|
+
- IV2: [[LLM: Integration point verification requirement]]
|
|
3410
|
+
- IV3: [[LLM: Performance impact verification requirement]]
|
|
3411
|
+
|
|
3412
|
+
<</REPEAT>>
|
|
3413
|
+
==================== END: templates#brownfield-prd-tmpl ====================
|
|
3890
3414
|
|
|
3891
3415
|
==================== START: checklists#pm-checklist ====================
|
|
3892
3416
|
# Product Manager (PM) Requirements Checklist
|
|
@@ -4645,7 +4169,7 @@ Create subsections for each major flow. After presenting all flows, apply `tasks
|
|
|
4645
4169
|
|
|
4646
4170
|
```mermaid
|
|
4647
4171
|
{{flow_diagram}}
|
|
4648
|
-
```
|
|
4172
|
+
```
|
|
4649
4173
|
|
|
4650
4174
|
**Edge Cases & Error Handling:**
|
|
4651
4175
|
|
|
@@ -6357,7 +5881,7 @@ Document the choice and key services that will be used.]]
|
|
|
6357
5881
|
|
|
6358
5882
|
### Repository Structure
|
|
6359
5883
|
|
|
6360
|
-
[[LLM: Define the repository approach based on PRD requirements and platform choice:
|
|
5884
|
+
[[LLM: Define the repository approach based on PRD requirements and platform choice, explain your rationale or ask quetsions to the user if unsure:
|
|
6361
5885
|
|
|
6362
5886
|
1. For modern fullstack apps, monorepo is often preferred
|
|
6363
5887
|
2. Consider tooling (Nx, Turborepo, Lerna, npm workspaces)
|
|
@@ -6382,9 +5906,9 @@ Document the choice and key services that will be used.]]
|
|
|
6382
5906
|
|
|
6383
5907
|
Use appropriate diagram type for clarity.]]
|
|
6384
5908
|
|
|
6385
|
-
|
|
5909
|
+
```mermaid
|
|
6386
5910
|
{{architecture_diagram}}
|
|
6387
|
-
```
|
|
5911
|
+
```
|
|
6388
5912
|
|
|
6389
5913
|
### Architectural Patterns
|
|
6390
5914
|
|
|
@@ -6495,7 +6019,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6495
6019
|
model_interface;
|
|
6496
6020
|
}
|
|
6497
6021
|
}
|
|
6498
|
-
|
|
6022
|
+
```
|
|
6499
6023
|
|
|
6500
6024
|
**Relationships:**
|
|
6501
6025
|
|
|
@@ -6519,7 +6043,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6519
6043
|
|
|
6520
6044
|
**TypeScript Interface:**
|
|
6521
6045
|
|
|
6522
|
-
|
|
6046
|
+
```typescript
|
|
6523
6047
|
interface User {
|
|
6524
6048
|
id: string;
|
|
6525
6049
|
email: string;
|
|
@@ -6535,7 +6059,7 @@ interface UserProfile {
|
|
|
6535
6059
|
bio?: string;
|
|
6536
6060
|
preferences: Record<string, any>;
|
|
6537
6061
|
}
|
|
6538
|
-
```
|
|
6062
|
+
```
|
|
6539
6063
|
|
|
6540
6064
|
**Relationships:**
|
|
6541
6065
|
|
|
@@ -6573,16 +6097,16 @@ servers:
|
|
|
6573
6097
|
'[object Object]': null
|
|
6574
6098
|
description:
|
|
6575
6099
|
'[object Object]': null
|
|
6576
|
-
|
|
6100
|
+
```
|
|
6577
6101
|
|
|
6578
6102
|
^^/CONDITION: has_rest_api^^
|
|
6579
6103
|
|
|
6580
6104
|
^^CONDITION: has_graphql_api^^
|
|
6581
6105
|
|
|
6582
|
-
|
|
6106
|
+
```graphql
|
|
6583
6107
|
# GraphQL Schema
|
|
6584
6108
|
{{graphql_schema}}
|
|
6585
|
-
```
|
|
6109
|
+
```
|
|
6586
6110
|
|
|
6587
6111
|
^^/CONDITION: has_graphql_api^^
|
|
6588
6112
|
|
|
@@ -6595,7 +6119,7 @@ servers:
|
|
|
6595
6119
|
trpc_routers;
|
|
6596
6120
|
}
|
|
6597
6121
|
}
|
|
6598
|
-
|
|
6122
|
+
```
|
|
6599
6123
|
|
|
6600
6124
|
^^/CONDITION: has_trpc_api^^
|
|
6601
6125
|
|
|
@@ -6740,19 +6264,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6740
6264
|
|
|
6741
6265
|
**Component Organization:**
|
|
6742
6266
|
|
|
6743
|
-
`````text
|
|
6744
|
-
{{component_structure}}
|
|
6745
6267
|
```text
|
|
6268
|
+
{{component_structure}}
|
|
6269
|
+
```
|
|
6746
6270
|
|
|
6747
6271
|
**Component Template:**
|
|
6748
6272
|
|
|
6749
|
-
|
|
6273
|
+
```typescript
|
|
6750
6274
|
{
|
|
6751
6275
|
{
|
|
6752
6276
|
component_template;
|
|
6753
6277
|
}
|
|
6754
6278
|
}
|
|
6755
|
-
```
|
|
6279
|
+
```
|
|
6756
6280
|
|
|
6757
6281
|
### State Management Architecture
|
|
6758
6282
|
|
|
@@ -6766,7 +6290,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6766
6290
|
state_structure;
|
|
6767
6291
|
}
|
|
6768
6292
|
}
|
|
6769
|
-
|
|
6293
|
+
```
|
|
6770
6294
|
|
|
6771
6295
|
**State Management Patterns:**
|
|
6772
6296
|
|
|
@@ -6781,17 +6305,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6781
6305
|
|
|
6782
6306
|
```text
|
|
6783
6307
|
{{route_structure}}
|
|
6784
|
-
```
|
|
6308
|
+
```
|
|
6785
6309
|
|
|
6786
6310
|
**Protected Route Pattern:**
|
|
6787
6311
|
|
|
6788
|
-
|
|
6312
|
+
```typescript
|
|
6789
6313
|
{
|
|
6790
6314
|
{
|
|
6791
6315
|
protected_route_example;
|
|
6792
6316
|
}
|
|
6793
6317
|
}
|
|
6794
|
-
```
|
|
6318
|
+
```
|
|
6795
6319
|
|
|
6796
6320
|
### Frontend Services Layer
|
|
6797
6321
|
|
|
@@ -6805,17 +6329,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6805
6329
|
api_client_setup;
|
|
6806
6330
|
}
|
|
6807
6331
|
}
|
|
6808
|
-
|
|
6332
|
+
```
|
|
6809
6333
|
|
|
6810
6334
|
**Service Example:**
|
|
6811
6335
|
|
|
6812
|
-
|
|
6336
|
+
```typescript
|
|
6813
6337
|
{
|
|
6814
6338
|
{
|
|
6815
6339
|
service_example;
|
|
6816
6340
|
}
|
|
6817
6341
|
}
|
|
6818
|
-
```
|
|
6342
|
+
```
|
|
6819
6343
|
|
|
6820
6344
|
## Backend Architecture
|
|
6821
6345
|
|
|
@@ -6830,11 +6354,11 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6830
6354
|
^^CONDITION: serverless^^
|
|
6831
6355
|
**Function Organization:**
|
|
6832
6356
|
|
|
6833
|
-
|
|
6357
|
+
```text
|
|
6834
6358
|
|
|
6835
6359
|
{{function_structure}}
|
|
6836
6360
|
|
|
6837
|
-
|
|
6361
|
+
```
|
|
6838
6362
|
|
|
6839
6363
|
**Function Template:**
|
|
6840
6364
|
|
|
@@ -6844,26 +6368,26 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6844
6368
|
function_template;
|
|
6845
6369
|
}
|
|
6846
6370
|
}
|
|
6847
|
-
|
|
6371
|
+
```
|
|
6848
6372
|
|
|
6849
6373
|
^^/CONDITION: serverless^^
|
|
6850
6374
|
|
|
6851
6375
|
^^CONDITION: traditional_server^^
|
|
6852
6376
|
**Controller/Route Organization:**
|
|
6853
6377
|
|
|
6854
|
-
`````text
|
|
6855
|
-
{{controller_structure}}
|
|
6856
6378
|
```text
|
|
6379
|
+
{{controller_structure}}
|
|
6380
|
+
```
|
|
6857
6381
|
|
|
6858
6382
|
**Controller Template:**
|
|
6859
6383
|
|
|
6860
|
-
|
|
6384
|
+
```typescript
|
|
6861
6385
|
{
|
|
6862
6386
|
{
|
|
6863
6387
|
controller_template;
|
|
6864
6388
|
}
|
|
6865
6389
|
}
|
|
6866
|
-
```
|
|
6390
|
+
```
|
|
6867
6391
|
|
|
6868
6392
|
^^/CONDITION: traditional_server^^
|
|
6869
6393
|
|
|
@@ -6875,17 +6399,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6875
6399
|
|
|
6876
6400
|
```sql
|
|
6877
6401
|
{{database_schema}}
|
|
6878
|
-
|
|
6402
|
+
```
|
|
6879
6403
|
|
|
6880
6404
|
**Data Access Layer:**
|
|
6881
6405
|
|
|
6882
|
-
|
|
6406
|
+
```typescript
|
|
6883
6407
|
{
|
|
6884
6408
|
{
|
|
6885
6409
|
repository_pattern;
|
|
6886
6410
|
}
|
|
6887
6411
|
}
|
|
6888
|
-
```
|
|
6412
|
+
```
|
|
6889
6413
|
|
|
6890
6414
|
### Authentication and Authorization
|
|
6891
6415
|
|
|
@@ -6895,17 +6419,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6895
6419
|
|
|
6896
6420
|
```mermaid
|
|
6897
6421
|
{{auth_flow_diagram}}
|
|
6898
|
-
|
|
6422
|
+
```
|
|
6899
6423
|
|
|
6900
6424
|
**Middleware/Guards:**
|
|
6901
6425
|
|
|
6902
|
-
|
|
6426
|
+
```typescript
|
|
6903
6427
|
{
|
|
6904
6428
|
{
|
|
6905
6429
|
auth_middleware;
|
|
6906
6430
|
}
|
|
6907
6431
|
}
|
|
6908
|
-
```
|
|
6432
|
+
```
|
|
6909
6433
|
|
|
6910
6434
|
## Unified Project Structure
|
|
6911
6435
|
|
|
@@ -6965,7 +6489,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6965
6489
|
├── package.json # Root package.json
|
|
6966
6490
|
├── {{monorepo_config}} # Monorepo configuration
|
|
6967
6491
|
└── README.md
|
|
6968
|
-
|
|
6492
|
+
```
|
|
6969
6493
|
|
|
6970
6494
|
@{example: vercel_structure}
|
|
6971
6495
|
apps/
|
|
@@ -6987,19 +6511,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
6987
6511
|
|
|
6988
6512
|
**Prerequisites:**
|
|
6989
6513
|
|
|
6990
|
-
|
|
6514
|
+
```bash
|
|
6991
6515
|
{{prerequisites_commands}}
|
|
6992
|
-
```
|
|
6516
|
+
```
|
|
6993
6517
|
|
|
6994
6518
|
**Initial Setup:**
|
|
6995
6519
|
|
|
6996
6520
|
```bash
|
|
6997
6521
|
{{setup_commands}}
|
|
6998
|
-
|
|
6522
|
+
```
|
|
6999
6523
|
|
|
7000
6524
|
**Development Commands:**
|
|
7001
6525
|
|
|
7002
|
-
|
|
6526
|
+
```bash
|
|
7003
6527
|
# Start all services
|
|
7004
6528
|
{{start_all_command}}
|
|
7005
6529
|
|
|
@@ -7011,7 +6535,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7011
6535
|
|
|
7012
6536
|
# Run tests
|
|
7013
6537
|
{{test_commands}}
|
|
7014
|
-
```
|
|
6538
|
+
```
|
|
7015
6539
|
|
|
7016
6540
|
### Environment Configuration
|
|
7017
6541
|
|
|
@@ -7026,7 +6550,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7026
6550
|
|
|
7027
6551
|
# Shared
|
|
7028
6552
|
{{shared_env_vars}}
|
|
7029
|
-
|
|
6553
|
+
```
|
|
7030
6554
|
|
|
7031
6555
|
## Deployment Architecture
|
|
7032
6556
|
|
|
@@ -7049,9 +6573,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7049
6573
|
|
|
7050
6574
|
### CI/CD Pipeline
|
|
7051
6575
|
|
|
7052
|
-
|
|
6576
|
+
```yaml
|
|
7053
6577
|
'[object Object]': null
|
|
7054
|
-
```
|
|
6578
|
+
```
|
|
7055
6579
|
|
|
7056
6580
|
### Environments
|
|
7057
6581
|
|
|
@@ -7109,7 +6633,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7109
6633
|
|
|
7110
6634
|
### Testing Pyramid
|
|
7111
6635
|
|
|
7112
|
-
|
|
6636
|
+
```text
|
|
7113
6637
|
|
|
7114
6638
|
E2E Tests
|
|
7115
6639
|
/ \
|
|
@@ -7118,17 +6642,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7118
6642
|
/ \
|
|
7119
6643
|
Frontend Unit Backend Unit
|
|
7120
6644
|
|
|
7121
|
-
```
|
|
6645
|
+
```
|
|
7122
6646
|
|
|
7123
6647
|
### Test Organization
|
|
7124
6648
|
|
|
7125
6649
|
**Frontend Tests:**
|
|
7126
6650
|
|
|
7127
|
-
```
|
|
6651
|
+
```text
|
|
7128
6652
|
|
|
7129
6653
|
{{frontend_test_structure}}
|
|
7130
6654
|
|
|
7131
|
-
|
|
6655
|
+
```
|
|
7132
6656
|
|
|
7133
6657
|
**Backend Tests:**
|
|
7134
6658
|
|
|
@@ -7136,15 +6660,15 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7136
6660
|
|
|
7137
6661
|
{{backend_test_structure}}
|
|
7138
6662
|
|
|
7139
|
-
```
|
|
6663
|
+
```
|
|
7140
6664
|
|
|
7141
6665
|
**E2E Tests:**
|
|
7142
6666
|
|
|
7143
|
-
|
|
6667
|
+
```text
|
|
7144
6668
|
|
|
7145
6669
|
{{e2e_test_structure}}
|
|
7146
6670
|
|
|
7147
|
-
|
|
6671
|
+
```
|
|
7148
6672
|
|
|
7149
6673
|
### Test Examples
|
|
7150
6674
|
|
|
@@ -7156,17 +6680,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7156
6680
|
frontend_test_example;
|
|
7157
6681
|
}
|
|
7158
6682
|
}
|
|
7159
|
-
|
|
6683
|
+
```
|
|
7160
6684
|
|
|
7161
6685
|
**Backend API Test:**
|
|
7162
6686
|
|
|
7163
|
-
|
|
6687
|
+
```typescript
|
|
7164
6688
|
{
|
|
7165
6689
|
{
|
|
7166
6690
|
backend_test_example;
|
|
7167
6691
|
}
|
|
7168
6692
|
}
|
|
7169
|
-
```
|
|
6693
|
+
```
|
|
7170
6694
|
|
|
7171
6695
|
**E2E Test:**
|
|
7172
6696
|
|
|
@@ -7176,7 +6700,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7176
6700
|
e2e_test_example;
|
|
7177
6701
|
}
|
|
7178
6702
|
}
|
|
7179
|
-
|
|
6703
|
+
```
|
|
7180
6704
|
|
|
7181
6705
|
## Coding Standards
|
|
7182
6706
|
|
|
@@ -7217,9 +6741,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
|
|
|
7217
6741
|
|
|
7218
6742
|
### Error Flow
|
|
7219
6743
|
|
|
7220
|
-
|
|
6744
|
+
```mermaid
|
|
7221
6745
|
{{error_flow_diagram}}
|
|
7222
|
-
```
|
|
6746
|
+
```
|
|
7223
6747
|
|
|
7224
6748
|
### Error Response Format
|
|
7225
6749
|
|
|
@@ -7233,17 +6757,17 @@ interface ApiError {
|
|
|
7233
6757
|
requestId: string;
|
|
7234
6758
|
};
|
|
7235
6759
|
}
|
|
7236
|
-
|
|
6760
|
+
```
|
|
7237
6761
|
|
|
7238
6762
|
### Frontend Error Handling
|
|
7239
6763
|
|
|
7240
|
-
|
|
6764
|
+
```typescript
|
|
7241
6765
|
{
|
|
7242
6766
|
{
|
|
7243
6767
|
frontend_error_handler;
|
|
7244
6768
|
}
|
|
7245
6769
|
}
|
|
7246
|
-
```
|
|
6770
|
+
```
|
|
7247
6771
|
|
|
7248
6772
|
### Backend Error Handling
|
|
7249
6773
|
|
|
@@ -7253,7 +6777,7 @@ interface ApiError {
|
|
|
7253
6777
|
backend_error_handler;
|
|
7254
6778
|
}
|
|
7255
6779
|
}
|
|
7256
|
-
|
|
6780
|
+
```
|
|
7257
6781
|
|
|
7258
6782
|
## Monitoring and Observability
|
|
7259
6783
|
|
|
@@ -8802,16 +8326,11 @@ workflow:
|
|
|
8802
8326
|
- modernization
|
|
8803
8327
|
- integration-enhancement
|
|
8804
8328
|
|
|
8805
|
-
|
|
8806
|
-
complex_enhancement_sequence:
|
|
8807
|
-
- step: scope_assessment
|
|
8808
|
-
agent: any
|
|
8809
|
-
action: assess complexity
|
|
8810
|
-
notes: "First, assess if this is a simple change (use simple_enhancement_sequence) or complex enhancement requiring full planning."
|
|
8811
|
-
|
|
8329
|
+
sequence:
|
|
8812
8330
|
- step: project_analysis
|
|
8813
|
-
agent:
|
|
8814
|
-
action: analyze existing project
|
|
8331
|
+
agent: architect
|
|
8332
|
+
action: analyze existing project and use task document-project
|
|
8333
|
+
creates: multiple documents per the document-project template
|
|
8815
8334
|
notes: "Review existing documentation, codebase structure, and identify integration points. Document current system understanding before proceeding."
|
|
8816
8335
|
|
|
8817
8336
|
- agent: pm
|
|
@@ -8840,71 +8359,37 @@ workflow:
|
|
|
8840
8359
|
action: move_to_ide
|
|
8841
8360
|
notes: "All planning artifacts complete. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
8842
8361
|
|
|
8843
|
-
# For Simple Enhancements (1-3 Stories, Following Existing Patterns)
|
|
8844
|
-
simple_enhancement_sequence:
|
|
8845
|
-
- step: enhancement_type
|
|
8846
|
-
action: choose approach
|
|
8847
|
-
notes: "Choose between creating single story (very small change) or epic (1-3 related stories)."
|
|
8848
|
-
|
|
8849
|
-
- agent: pm|po|sm
|
|
8850
|
-
creates: brownfield_epic OR brownfield_story
|
|
8851
|
-
uses: brownfield-create-epic OR brownfield-create-story
|
|
8852
|
-
notes: "Create focused enhancement with existing system integration. Choose agent based on team preference and context."
|
|
8853
|
-
|
|
8854
|
-
- workflow_end:
|
|
8855
|
-
action: move_to_ide
|
|
8856
|
-
notes: "Enhancement defined. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
8857
|
-
|
|
8858
8362
|
flow_diagram: |
|
|
8859
8363
|
```mermaid
|
|
8860
8364
|
graph TD
|
|
8861
|
-
A[Start: Brownfield Enhancement] --> B
|
|
8862
|
-
B
|
|
8863
|
-
|
|
8864
|
-
|
|
8865
|
-
|
|
8866
|
-
|
|
8867
|
-
F
|
|
8868
|
-
G -->
|
|
8869
|
-
|
|
8870
|
-
H
|
|
8871
|
-
|
|
8872
|
-
|
|
8873
|
-
D -->|1 Story| K[pm/po/sm: brownfield-create-story]
|
|
8874
|
-
D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic]
|
|
8875
|
-
K --> M[Move to IDE Environment]
|
|
8876
|
-
L --> M
|
|
8877
|
-
|
|
8878
|
-
style J fill:#90EE90
|
|
8879
|
-
style M fill:#90EE90
|
|
8880
|
-
style E fill:#FFE4B5
|
|
8881
|
-
style F fill:#FFE4B5
|
|
8882
|
-
style K fill:#FFB6C1
|
|
8883
|
-
style L fill:#FFB6C1
|
|
8365
|
+
A[Start: Brownfield Enhancement] --> B[analyst: analyze existing project]
|
|
8366
|
+
B --> C[pm: brownfield-prd.md]
|
|
8367
|
+
C --> D[architect: brownfield-architecture.md]
|
|
8368
|
+
D --> E[po: validate with po-master-checklist]
|
|
8369
|
+
E --> F{PO finds issues?}
|
|
8370
|
+
F -->|Yes| G[Return to relevant agent for fixes]
|
|
8371
|
+
F -->|No| H[Move to IDE Environment]
|
|
8372
|
+
G --> E
|
|
8373
|
+
|
|
8374
|
+
style H fill:#90EE90
|
|
8375
|
+
style C fill:#FFE4B5
|
|
8376
|
+
style D fill:#FFE4B5
|
|
8884
8377
|
```
|
|
8885
8378
|
|
|
8886
8379
|
decision_guidance:
|
|
8887
|
-
|
|
8888
|
-
- Enhancement requires
|
|
8380
|
+
when_to_use:
|
|
8381
|
+
- Enhancement requires coordinated stories
|
|
8889
8382
|
- Architectural changes are needed
|
|
8890
8383
|
- Significant integration work required
|
|
8891
8384
|
- Risk assessment and mitigation planning necessary
|
|
8892
8385
|
- Multiple team members will work on related changes
|
|
8893
8386
|
|
|
8894
|
-
use_simple_sequence_when:
|
|
8895
|
-
- Enhancement can be completed in 1-3 stories
|
|
8896
|
-
- Follows existing project patterns
|
|
8897
|
-
- Integration complexity is minimal
|
|
8898
|
-
- Risk to existing system is low
|
|
8899
|
-
- Change is isolated with clear boundaries
|
|
8900
|
-
|
|
8901
8387
|
handoff_prompts:
|
|
8902
8388
|
analyst_to_pm: "Existing project analysis complete. Create comprehensive brownfield PRD with integration strategy."
|
|
8903
8389
|
pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the integration architecture."
|
|
8904
8390
|
architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for integration safety."
|
|
8905
8391
|
po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document."
|
|
8906
|
-
|
|
8907
|
-
complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
8392
|
+
complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
8908
8393
|
==================== END: workflows#brownfield-fullstack ====================
|
|
8909
8394
|
|
|
8910
8395
|
==================== START: workflows#brownfield-service ====================
|
|
@@ -8922,16 +8407,11 @@ workflow:
|
|
|
8922
8407
|
- performance-optimization
|
|
8923
8408
|
- integration-enhancement
|
|
8924
8409
|
|
|
8925
|
-
|
|
8926
|
-
complex_enhancement_sequence:
|
|
8927
|
-
- step: scope_assessment
|
|
8928
|
-
agent: any
|
|
8929
|
-
action: assess complexity
|
|
8930
|
-
notes: "First, assess if this is a simple service change (use simple_enhancement_sequence) or complex enhancement requiring full planning."
|
|
8931
|
-
|
|
8410
|
+
sequence:
|
|
8932
8411
|
- step: service_analysis
|
|
8933
|
-
|
|
8934
|
-
action: analyze existing
|
|
8412
|
+
agent: architect
|
|
8413
|
+
action: analyze existing project and use task document-project
|
|
8414
|
+
creates: multiple documents per the document-project template
|
|
8935
8415
|
notes: "Review existing service documentation, codebase, performance metrics, and identify integration dependencies."
|
|
8936
8416
|
|
|
8937
8417
|
- agent: pm
|
|
@@ -8960,71 +8440,37 @@ workflow:
|
|
|
8960
8440
|
action: move_to_ide
|
|
8961
8441
|
notes: "All planning artifacts complete. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
8962
8442
|
|
|
8963
|
-
# For Simple Service Enhancements (1-3 Stories, Following Existing Patterns)
|
|
8964
|
-
simple_enhancement_sequence:
|
|
8965
|
-
- step: enhancement_type
|
|
8966
|
-
action: choose approach
|
|
8967
|
-
notes: "Choose between creating single story (simple API endpoint) or epic (1-3 related service changes)."
|
|
8968
|
-
|
|
8969
|
-
- agent: pm|po|sm
|
|
8970
|
-
creates: brownfield_epic OR brownfield_story
|
|
8971
|
-
uses: brownfield-create-epic OR brownfield-create-story
|
|
8972
|
-
notes: "Create focused service enhancement with existing API integration. Choose agent based on team preference and context."
|
|
8973
|
-
|
|
8974
|
-
- workflow_end:
|
|
8975
|
-
action: move_to_ide
|
|
8976
|
-
notes: "Service enhancement defined. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
8977
|
-
|
|
8978
8443
|
flow_diagram: |
|
|
8979
8444
|
```mermaid
|
|
8980
8445
|
graph TD
|
|
8981
|
-
A[Start: Service Enhancement] --> B
|
|
8982
|
-
B
|
|
8983
|
-
|
|
8984
|
-
|
|
8985
|
-
|
|
8986
|
-
|
|
8987
|
-
F
|
|
8988
|
-
G -->
|
|
8989
|
-
|
|
8990
|
-
H
|
|
8991
|
-
|
|
8992
|
-
|
|
8993
|
-
D -->|1 Story| K[pm/po/sm: brownfield-create-story]
|
|
8994
|
-
D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic]
|
|
8995
|
-
K --> M[Move to IDE Environment]
|
|
8996
|
-
L --> M
|
|
8997
|
-
|
|
8998
|
-
style J fill:#90EE90
|
|
8999
|
-
style M fill:#90EE90
|
|
9000
|
-
style E fill:#FFE4B5
|
|
9001
|
-
style F fill:#FFE4B5
|
|
9002
|
-
style K fill:#FFB6C1
|
|
9003
|
-
style L fill:#FFB6C1
|
|
8446
|
+
A[Start: Service Enhancement] --> B[analyst: analyze existing service]
|
|
8447
|
+
B --> C[pm: brownfield-prd.md]
|
|
8448
|
+
C --> D[architect: brownfield-architecture.md]
|
|
8449
|
+
D --> E[po: validate with po-master-checklist]
|
|
8450
|
+
E --> F{PO finds issues?}
|
|
8451
|
+
F -->|Yes| G[Return to relevant agent for fixes]
|
|
8452
|
+
F -->|No| H[Move to IDE Environment]
|
|
8453
|
+
G --> E
|
|
8454
|
+
|
|
8455
|
+
style H fill:#90EE90
|
|
8456
|
+
style C fill:#FFE4B5
|
|
8457
|
+
style D fill:#FFE4B5
|
|
9004
8458
|
```
|
|
9005
8459
|
|
|
9006
8460
|
decision_guidance:
|
|
9007
|
-
|
|
9008
|
-
- Service enhancement requires
|
|
8461
|
+
when_to_use:
|
|
8462
|
+
- Service enhancement requires coordinated stories
|
|
9009
8463
|
- API versioning or breaking changes needed
|
|
9010
8464
|
- Database schema changes required
|
|
9011
8465
|
- Performance or scalability improvements needed
|
|
9012
8466
|
- Multiple integration points affected
|
|
9013
8467
|
|
|
9014
|
-
use_simple_sequence_when:
|
|
9015
|
-
- Adding simple endpoints or modifying existing ones
|
|
9016
|
-
- Enhancement follows existing service patterns
|
|
9017
|
-
- API compatibility maintained
|
|
9018
|
-
- Risk to existing service is low
|
|
9019
|
-
- Change is isolated with clear boundaries
|
|
9020
|
-
|
|
9021
8468
|
handoff_prompts:
|
|
9022
8469
|
analyst_to_pm: "Service analysis complete. Create comprehensive brownfield PRD with service integration strategy."
|
|
9023
8470
|
pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the service architecture."
|
|
9024
8471
|
architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for service integration safety."
|
|
9025
8472
|
po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document."
|
|
9026
|
-
|
|
9027
|
-
complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
8473
|
+
complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
9028
8474
|
==================== END: workflows#brownfield-service ====================
|
|
9029
8475
|
|
|
9030
8476
|
==================== START: workflows#brownfield-ui ====================
|
|
@@ -9041,16 +8487,11 @@ workflow:
|
|
|
9041
8487
|
- design-refresh
|
|
9042
8488
|
- frontend-enhancement
|
|
9043
8489
|
|
|
9044
|
-
|
|
9045
|
-
complex_enhancement_sequence:
|
|
9046
|
-
- step: scope_assessment
|
|
9047
|
-
agent: any
|
|
9048
|
-
action: assess complexity
|
|
9049
|
-
notes: "First, assess if this is a simple UI change (use simple_enhancement_sequence) or complex enhancement requiring full planning."
|
|
9050
|
-
|
|
8490
|
+
sequence:
|
|
9051
8491
|
- step: ui_analysis
|
|
9052
|
-
agent:
|
|
9053
|
-
action: analyze existing
|
|
8492
|
+
agent: architect
|
|
8493
|
+
action: analyze existing project and use task document-project
|
|
8494
|
+
creates: multiple documents per the document-project template
|
|
9054
8495
|
notes: "Review existing frontend application, user feedback, analytics data, and identify improvement areas."
|
|
9055
8496
|
|
|
9056
8497
|
- agent: pm
|
|
@@ -9087,74 +8528,40 @@ workflow:
|
|
|
9087
8528
|
action: move_to_ide
|
|
9088
8529
|
notes: "All planning artifacts complete. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
9089
8530
|
|
|
9090
|
-
# For Simple UI Enhancements (1-3 Stories, Following Existing Design)
|
|
9091
|
-
simple_enhancement_sequence:
|
|
9092
|
-
- step: enhancement_type
|
|
9093
|
-
action: choose approach
|
|
9094
|
-
notes: "Choose between creating single story (simple component change) or epic (1-3 related UI changes)."
|
|
9095
|
-
|
|
9096
|
-
- agent: pm|po|sm
|
|
9097
|
-
creates: brownfield_epic OR brownfield_story
|
|
9098
|
-
uses: brownfield-create-epic OR brownfield-create-story
|
|
9099
|
-
notes: "Create focused UI enhancement with existing design system integration. Choose agent based on team preference and context."
|
|
9100
|
-
|
|
9101
|
-
- workflow_end:
|
|
9102
|
-
action: move_to_ide
|
|
9103
|
-
notes: "UI enhancement defined. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
9104
|
-
|
|
9105
8531
|
flow_diagram: |
|
|
9106
8532
|
```mermaid
|
|
9107
8533
|
graph TD
|
|
9108
|
-
A[Start: UI Enhancement] --> B
|
|
9109
|
-
B
|
|
9110
|
-
|
|
9111
|
-
|
|
9112
|
-
|
|
9113
|
-
|
|
9114
|
-
|
|
9115
|
-
G
|
|
9116
|
-
H -->
|
|
9117
|
-
|
|
9118
|
-
I
|
|
9119
|
-
|
|
9120
|
-
|
|
9121
|
-
D -->|1 Story| L[pm/po/sm: brownfield-create-story]
|
|
9122
|
-
D -->|2-3 Stories| M[pm/po/sm: brownfield-create-epic]
|
|
9123
|
-
L --> N[Move to IDE Environment]
|
|
9124
|
-
M --> N
|
|
9125
|
-
|
|
9126
|
-
style K fill:#90EE90
|
|
9127
|
-
style N fill:#90EE90
|
|
8534
|
+
A[Start: UI Enhancement] --> B[analyst: analyze existing UI]
|
|
8535
|
+
B --> C[pm: brownfield-prd.md]
|
|
8536
|
+
C --> D[ux-expert: front-end-spec.md]
|
|
8537
|
+
D --> E[architect: brownfield-architecture.md]
|
|
8538
|
+
E --> F[po: validate with po-master-checklist]
|
|
8539
|
+
F --> G{PO finds issues?}
|
|
8540
|
+
G -->|Yes| H[Return to relevant agent for fixes]
|
|
8541
|
+
G -->|No| I[Move to IDE Environment]
|
|
8542
|
+
H --> F
|
|
8543
|
+
|
|
8544
|
+
style I fill:#90EE90
|
|
8545
|
+
style C fill:#FFE4B5
|
|
8546
|
+
style D fill:#FFE4B5
|
|
9128
8547
|
style E fill:#FFE4B5
|
|
9129
|
-
style F fill:#FFE4B5
|
|
9130
|
-
style G fill:#FFE4B5
|
|
9131
|
-
style L fill:#FFB6C1
|
|
9132
|
-
style M fill:#FFB6C1
|
|
9133
8548
|
```
|
|
9134
8549
|
|
|
9135
8550
|
decision_guidance:
|
|
9136
|
-
|
|
9137
|
-
- UI enhancement requires
|
|
8551
|
+
when_to_use:
|
|
8552
|
+
- UI enhancement requires coordinated stories
|
|
9138
8553
|
- Design system changes needed
|
|
9139
8554
|
- New component patterns required
|
|
9140
8555
|
- User research and testing needed
|
|
9141
8556
|
- Multiple team members will work on related changes
|
|
9142
8557
|
|
|
9143
|
-
use_simple_sequence_when:
|
|
9144
|
-
- Enhancement can be completed in 1-3 stories
|
|
9145
|
-
- Follows existing design patterns exactly
|
|
9146
|
-
- Component changes are isolated
|
|
9147
|
-
- Risk to existing UI is low
|
|
9148
|
-
- Change maintains current user experience
|
|
9149
|
-
|
|
9150
8558
|
handoff_prompts:
|
|
9151
8559
|
analyst_to_pm: "UI analysis complete. Create comprehensive brownfield PRD with UI integration strategy."
|
|
9152
8560
|
pm_to_ux: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the UI/UX specification."
|
|
9153
8561
|
ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md, then create the frontend architecture."
|
|
9154
8562
|
architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for UI integration safety."
|
|
9155
8563
|
po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document."
|
|
9156
|
-
|
|
9157
|
-
complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
8564
|
+
complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
9158
8565
|
==================== END: workflows#brownfield-ui ====================
|
|
9159
8566
|
|
|
9160
8567
|
==================== START: workflows#greenfield-fullstack ====================
|
|
@@ -9172,8 +8579,7 @@ workflow:
|
|
|
9172
8579
|
- prototype
|
|
9173
8580
|
- mvp
|
|
9174
8581
|
|
|
9175
|
-
|
|
9176
|
-
complex_project_sequence:
|
|
8582
|
+
sequence:
|
|
9177
8583
|
- agent: analyst
|
|
9178
8584
|
creates: project-brief.md
|
|
9179
8585
|
optional_steps:
|
|
@@ -9238,91 +8644,50 @@ workflow:
|
|
|
9238
8644
|
action: move_to_ide
|
|
9239
8645
|
notes: "All planning artifacts complete. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
9240
8646
|
|
|
9241
|
-
# For Simple Projects (Prototypes, MVPs, Quick Experiments)
|
|
9242
|
-
simple_project_sequence:
|
|
9243
|
-
- step: project_scope
|
|
9244
|
-
action: assess complexity
|
|
9245
|
-
notes: "First, assess if this needs full planning (use complex_project_sequence) or can be a simple prototype/MVP."
|
|
9246
|
-
|
|
9247
|
-
- agent: analyst
|
|
9248
|
-
creates: project-brief.md
|
|
9249
|
-
optional_steps:
|
|
9250
|
-
- brainstorming_session
|
|
9251
|
-
notes: "Creates focused project brief for simple project. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder."
|
|
9252
|
-
|
|
9253
|
-
- agent: pm
|
|
9254
|
-
creates: simple-project-prd.md
|
|
9255
|
-
uses: create doc simple-project-prd OR create-epic OR create-story
|
|
9256
|
-
requires: project-brief.md
|
|
9257
|
-
notes: "Create simple prd, simple epic or story instead of full PRD for rapid development. Choose based on scope."
|
|
9258
|
-
|
|
9259
|
-
- workflow_end:
|
|
9260
|
-
action: move_to_ide
|
|
9261
|
-
notes: "Simple project defined. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
9262
|
-
|
|
9263
8647
|
flow_diagram: |
|
|
9264
8648
|
```mermaid
|
|
9265
8649
|
graph TD
|
|
9266
|
-
A[Start: Greenfield Project] --> B
|
|
9267
|
-
B
|
|
9268
|
-
|
|
9269
|
-
|
|
9270
|
-
|
|
9271
|
-
|
|
9272
|
-
|
|
9273
|
-
|
|
9274
|
-
|
|
9275
|
-
|
|
9276
|
-
|
|
9277
|
-
G --> H
|
|
9278
|
-
H
|
|
9279
|
-
|
|
9280
|
-
I
|
|
9281
|
-
J -->
|
|
9282
|
-
|
|
9283
|
-
|
|
9284
|
-
|
|
9285
|
-
|
|
9286
|
-
|
|
9287
|
-
|
|
9288
|
-
|
|
9289
|
-
|
|
9290
|
-
|
|
9291
|
-
|
|
9292
|
-
G -.-> G1[Optional: technical research]
|
|
9293
|
-
D -.-> D1[Optional: brainstorming]
|
|
9294
|
-
|
|
9295
|
-
style M fill:#90EE90
|
|
9296
|
-
style O fill:#90EE90
|
|
9297
|
-
style F3 fill:#E6E6FA
|
|
9298
|
-
style F4 fill:#E6E6FA
|
|
8650
|
+
A[Start: Greenfield Project] --> B[analyst: project-brief.md]
|
|
8651
|
+
B --> C[pm: prd.md]
|
|
8652
|
+
C --> D[ux-expert: front-end-spec.md]
|
|
8653
|
+
D --> D2{Generate v0 prompt?}
|
|
8654
|
+
D2 -->|Yes| D3[ux-expert: create v0 prompt]
|
|
8655
|
+
D2 -->|No| E[architect: fullstack-architecture.md]
|
|
8656
|
+
D3 --> D4[User: generate UI in v0/Lovable]
|
|
8657
|
+
D4 --> E
|
|
8658
|
+
E --> F{Architecture suggests PRD changes?}
|
|
8659
|
+
F -->|Yes| G[pm: update prd.md]
|
|
8660
|
+
F -->|No| H[po: validate all artifacts]
|
|
8661
|
+
G --> H
|
|
8662
|
+
H --> I{PO finds issues?}
|
|
8663
|
+
I -->|Yes| J[Return to relevant agent for fixes]
|
|
8664
|
+
I -->|No| K[Move to IDE Environment]
|
|
8665
|
+
J --> H
|
|
8666
|
+
|
|
8667
|
+
B -.-> B1[Optional: brainstorming]
|
|
8668
|
+
B -.-> B2[Optional: market research]
|
|
8669
|
+
D -.-> D1[Optional: user research]
|
|
8670
|
+
E -.-> E1[Optional: technical research]
|
|
8671
|
+
|
|
8672
|
+
style K fill:#90EE90
|
|
8673
|
+
style D3 fill:#E6E6FA
|
|
8674
|
+
style D4 fill:#E6E6FA
|
|
8675
|
+
style B fill:#FFE4B5
|
|
9299
8676
|
style C fill:#FFE4B5
|
|
8677
|
+
style D fill:#FFE4B5
|
|
9300
8678
|
style E fill:#FFE4B5
|
|
9301
|
-
style F fill:#FFE4B5
|
|
9302
|
-
style G fill:#FFE4B5
|
|
9303
|
-
style D fill:#FFB6C1
|
|
9304
|
-
style N fill:#FFB6C1
|
|
9305
8679
|
```
|
|
9306
8680
|
|
|
9307
8681
|
decision_guidance:
|
|
9308
|
-
|
|
8682
|
+
when_to_use:
|
|
9309
8683
|
- Building production-ready applications
|
|
9310
8684
|
- Multiple team members will be involved
|
|
9311
|
-
- Complex feature requirements
|
|
8685
|
+
- Complex feature requirements
|
|
9312
8686
|
- Need comprehensive documentation
|
|
9313
8687
|
- Long-term maintenance expected
|
|
9314
8688
|
- Enterprise or customer-facing applications
|
|
9315
8689
|
|
|
9316
|
-
use_simple_sequence_when:
|
|
9317
|
-
- Building prototypes or MVPs
|
|
9318
|
-
- Solo developer or small team
|
|
9319
|
-
- Simple requirements (1-3 stories)
|
|
9320
|
-
- Quick experiments or proof-of-concepts
|
|
9321
|
-
- Short-term or throwaway projects
|
|
9322
|
-
- Learning or educational projects
|
|
9323
|
-
|
|
9324
8690
|
handoff_prompts:
|
|
9325
|
-
# Complex sequence prompts
|
|
9326
8691
|
analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD."
|
|
9327
8692
|
pm_to_ux: "PRD is ready. Save it as docs/prd.md in your project, then create the UI/UX specification."
|
|
9328
8693
|
ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md in your project, then create the fullstack architecture."
|
|
@@ -9330,11 +8695,7 @@ workflow:
|
|
|
9330
8695
|
architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/."
|
|
9331
8696
|
updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency."
|
|
9332
8697
|
po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document."
|
|
9333
|
-
|
|
9334
|
-
|
|
9335
|
-
# Simple sequence prompts
|
|
9336
|
-
simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for rapid development."
|
|
9337
|
-
simple_complete: "Simple project defined. Move to IDE environment to begin development."
|
|
8698
|
+
complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
9338
8699
|
==================== END: workflows#greenfield-fullstack ====================
|
|
9339
8700
|
|
|
9340
8701
|
==================== START: workflows#greenfield-service ====================
|
|
@@ -9353,8 +8714,7 @@ workflow:
|
|
|
9353
8714
|
- api-prototype
|
|
9354
8715
|
- simple-service
|
|
9355
8716
|
|
|
9356
|
-
|
|
9357
|
-
complex_service_sequence:
|
|
8717
|
+
sequence:
|
|
9358
8718
|
- agent: analyst
|
|
9359
8719
|
creates: project-brief.md
|
|
9360
8720
|
optional_steps:
|
|
@@ -9394,65 +8754,33 @@ workflow:
|
|
|
9394
8754
|
action: move_to_ide
|
|
9395
8755
|
notes: "All planning artifacts complete. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
9396
8756
|
|
|
9397
|
-
# For Simple Services (Simple APIs, Single Purpose Services)
|
|
9398
|
-
simple_service_sequence:
|
|
9399
|
-
- step: service_scope
|
|
9400
|
-
action: assess complexity
|
|
9401
|
-
notes: "First, assess if this needs full planning (use complex_service_sequence) or can be a simple API/service."
|
|
9402
|
-
|
|
9403
|
-
- agent: analyst
|
|
9404
|
-
creates: project-brief.md
|
|
9405
|
-
optional_steps:
|
|
9406
|
-
- brainstorming_session
|
|
9407
|
-
notes: "Creates focused project brief for simple service. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder."
|
|
9408
|
-
|
|
9409
|
-
- agent: pm
|
|
9410
|
-
creates: simple_epic OR single_story
|
|
9411
|
-
uses: create-epic OR create-story
|
|
9412
|
-
requires: project-brief.md
|
|
9413
|
-
notes: "Create simple epic or story for API endpoints instead of full PRD for rapid development."
|
|
9414
|
-
|
|
9415
|
-
- workflow_end:
|
|
9416
|
-
action: move_to_ide
|
|
9417
|
-
notes: "Simple service defined. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
9418
|
-
|
|
9419
8757
|
flow_diagram: |
|
|
9420
8758
|
```mermaid
|
|
9421
8759
|
graph TD
|
|
9422
|
-
A[Start: Service Development] --> B
|
|
9423
|
-
B
|
|
9424
|
-
|
|
9425
|
-
|
|
9426
|
-
|
|
9427
|
-
E
|
|
9428
|
-
F --> G
|
|
9429
|
-
G
|
|
9430
|
-
|
|
9431
|
-
H
|
|
9432
|
-
I -->
|
|
9433
|
-
|
|
9434
|
-
|
|
9435
|
-
|
|
9436
|
-
|
|
9437
|
-
|
|
9438
|
-
|
|
9439
|
-
|
|
9440
|
-
C -.-> C1[Optional: brainstorming]
|
|
9441
|
-
C -.-> C2[Optional: market research]
|
|
9442
|
-
F -.-> F1[Optional: technical research]
|
|
9443
|
-
D -.-> D1[Optional: brainstorming]
|
|
9444
|
-
|
|
9445
|
-
style L fill:#90EE90
|
|
9446
|
-
style N fill:#90EE90
|
|
8760
|
+
A[Start: Service Development] --> B[analyst: project-brief.md]
|
|
8761
|
+
B --> C[pm: prd.md]
|
|
8762
|
+
C --> D[architect: architecture.md]
|
|
8763
|
+
D --> E{Architecture suggests PRD changes?}
|
|
8764
|
+
E -->|Yes| F[pm: update prd.md]
|
|
8765
|
+
E -->|No| G[po: validate all artifacts]
|
|
8766
|
+
F --> G
|
|
8767
|
+
G --> H{PO finds issues?}
|
|
8768
|
+
H -->|Yes| I[Return to relevant agent for fixes]
|
|
8769
|
+
H -->|No| J[Move to IDE Environment]
|
|
8770
|
+
I --> G
|
|
8771
|
+
|
|
8772
|
+
B -.-> B1[Optional: brainstorming]
|
|
8773
|
+
B -.-> B2[Optional: market research]
|
|
8774
|
+
D -.-> D1[Optional: technical research]
|
|
8775
|
+
|
|
8776
|
+
style J fill:#90EE90
|
|
8777
|
+
style B fill:#FFE4B5
|
|
9447
8778
|
style C fill:#FFE4B5
|
|
9448
|
-
style
|
|
9449
|
-
style F fill:#FFE4B5
|
|
9450
|
-
style D fill:#FFB6C1
|
|
9451
|
-
style M fill:#FFB6C1
|
|
8779
|
+
style D fill:#FFE4B5
|
|
9452
8780
|
```
|
|
9453
8781
|
|
|
9454
8782
|
decision_guidance:
|
|
9455
|
-
|
|
8783
|
+
when_to_use:
|
|
9456
8784
|
- Building production APIs or microservices
|
|
9457
8785
|
- Multiple endpoints and complex business logic
|
|
9458
8786
|
- Need comprehensive documentation and testing
|
|
@@ -9460,27 +8788,14 @@ workflow:
|
|
|
9460
8788
|
- Long-term maintenance expected
|
|
9461
8789
|
- Enterprise or external-facing APIs
|
|
9462
8790
|
|
|
9463
|
-
use_simple_sequence_when:
|
|
9464
|
-
- Building simple APIs or single-purpose services
|
|
9465
|
-
- Few endpoints with straightforward logic
|
|
9466
|
-
- Prototyping or proof-of-concept APIs
|
|
9467
|
-
- Solo developer or small team
|
|
9468
|
-
- Internal tools or utilities
|
|
9469
|
-
- Learning or experimental projects
|
|
9470
|
-
|
|
9471
8791
|
handoff_prompts:
|
|
9472
|
-
# Complex sequence prompts
|
|
9473
8792
|
analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD."
|
|
9474
8793
|
pm_to_architect: "PRD is ready. Save it as docs/prd.md in your project, then create the service architecture."
|
|
9475
8794
|
architect_review: "Architecture complete. Save it as docs/architecture.md. Do you suggest any changes to the PRD stories or need new stories added?"
|
|
9476
8795
|
architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/."
|
|
9477
8796
|
updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency."
|
|
9478
8797
|
po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document."
|
|
9479
|
-
|
|
9480
|
-
|
|
9481
|
-
# Simple sequence prompts
|
|
9482
|
-
simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for API development."
|
|
9483
|
-
simple_complete: "Simple service defined. Move to IDE environment to begin development."
|
|
8798
|
+
complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
9484
8799
|
==================== END: workflows#greenfield-service ====================
|
|
9485
8800
|
|
|
9486
8801
|
==================== START: workflows#greenfield-ui ====================
|
|
@@ -9499,8 +8814,7 @@ workflow:
|
|
|
9499
8814
|
- ui-prototype
|
|
9500
8815
|
- simple-interface
|
|
9501
8816
|
|
|
9502
|
-
|
|
9503
|
-
complex_ui_sequence:
|
|
8817
|
+
sequence:
|
|
9504
8818
|
- agent: analyst
|
|
9505
8819
|
creates: project-brief.md
|
|
9506
8820
|
optional_steps:
|
|
@@ -9559,74 +8873,42 @@ workflow:
|
|
|
9559
8873
|
action: move_to_ide
|
|
9560
8874
|
notes: "All planning artifacts complete. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
9561
8875
|
|
|
9562
|
-
# For Simple UIs (Simple Interfaces, Few Components)
|
|
9563
|
-
simple_ui_sequence:
|
|
9564
|
-
- step: ui_scope
|
|
9565
|
-
action: assess complexity
|
|
9566
|
-
notes: "First, assess if this needs full planning (use complex_ui_sequence) or can be a simple interface."
|
|
9567
|
-
|
|
9568
|
-
- agent: analyst
|
|
9569
|
-
creates: project-brief.md
|
|
9570
|
-
optional_steps:
|
|
9571
|
-
- brainstorming_session
|
|
9572
|
-
notes: "Creates focused project brief for simple UI. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder."
|
|
9573
|
-
|
|
9574
|
-
- agent: ux-expert
|
|
9575
|
-
creates: simple_wireframes OR quick_spec
|
|
9576
|
-
uses: create-epic OR create-story
|
|
9577
|
-
requires: project-brief.md
|
|
9578
|
-
notes: "Create simple wireframes and component list instead of full UI/UX spec for rapid development."
|
|
9579
|
-
|
|
9580
|
-
- workflow_end:
|
|
9581
|
-
action: move_to_ide
|
|
9582
|
-
notes: "Simple UI defined. Move to IDE environment to begin development. Explain to the user the IDE Development Workflow next steps: data#bmad-kb:IDE Development Workflow"
|
|
9583
|
-
|
|
9584
8876
|
flow_diagram: |
|
|
9585
8877
|
```mermaid
|
|
9586
8878
|
graph TD
|
|
9587
|
-
A[Start: UI Development] --> B
|
|
9588
|
-
B
|
|
9589
|
-
|
|
9590
|
-
|
|
9591
|
-
|
|
9592
|
-
|
|
9593
|
-
|
|
9594
|
-
|
|
9595
|
-
|
|
9596
|
-
|
|
9597
|
-
|
|
9598
|
-
G --> H
|
|
9599
|
-
H
|
|
9600
|
-
|
|
9601
|
-
I
|
|
9602
|
-
J -->
|
|
9603
|
-
|
|
9604
|
-
|
|
9605
|
-
|
|
9606
|
-
|
|
9607
|
-
|
|
9608
|
-
|
|
9609
|
-
|
|
9610
|
-
|
|
9611
|
-
|
|
9612
|
-
|
|
9613
|
-
G -.-> G1[Optional: technical research]
|
|
9614
|
-
D -.-> D1[Optional: brainstorming]
|
|
9615
|
-
|
|
9616
|
-
style M fill:#90EE90
|
|
9617
|
-
style O fill:#90EE90
|
|
9618
|
-
style F3 fill:#E6E6FA
|
|
9619
|
-
style F4 fill:#E6E6FA
|
|
8879
|
+
A[Start: UI Development] --> B[analyst: project-brief.md]
|
|
8880
|
+
B --> C[pm: prd.md]
|
|
8881
|
+
C --> D[ux-expert: front-end-spec.md]
|
|
8882
|
+
D --> D2{Generate v0 prompt?}
|
|
8883
|
+
D2 -->|Yes| D3[ux-expert: create v0 prompt]
|
|
8884
|
+
D2 -->|No| E[architect: front-end-architecture.md]
|
|
8885
|
+
D3 --> D4[User: generate UI in v0/Lovable]
|
|
8886
|
+
D4 --> E
|
|
8887
|
+
E --> F{Architecture suggests PRD changes?}
|
|
8888
|
+
F -->|Yes| G[pm: update prd.md]
|
|
8889
|
+
F -->|No| H[po: validate all artifacts]
|
|
8890
|
+
G --> H
|
|
8891
|
+
H --> I{PO finds issues?}
|
|
8892
|
+
I -->|Yes| J[Return to relevant agent for fixes]
|
|
8893
|
+
I -->|No| K[Move to IDE Environment]
|
|
8894
|
+
J --> H
|
|
8895
|
+
|
|
8896
|
+
B -.-> B1[Optional: brainstorming]
|
|
8897
|
+
B -.-> B2[Optional: market research]
|
|
8898
|
+
D -.-> D1[Optional: user research]
|
|
8899
|
+
E -.-> E1[Optional: technical research]
|
|
8900
|
+
|
|
8901
|
+
style K fill:#90EE90
|
|
8902
|
+
style D3 fill:#E6E6FA
|
|
8903
|
+
style D4 fill:#E6E6FA
|
|
8904
|
+
style B fill:#FFE4B5
|
|
9620
8905
|
style C fill:#FFE4B5
|
|
8906
|
+
style D fill:#FFE4B5
|
|
9621
8907
|
style E fill:#FFE4B5
|
|
9622
|
-
style F fill:#FFE4B5
|
|
9623
|
-
style G fill:#FFE4B5
|
|
9624
|
-
style D fill:#FFB6C1
|
|
9625
|
-
style N fill:#FFB6C1
|
|
9626
8908
|
```
|
|
9627
8909
|
|
|
9628
8910
|
decision_guidance:
|
|
9629
|
-
|
|
8911
|
+
when_to_use:
|
|
9630
8912
|
- Building production frontend applications
|
|
9631
8913
|
- Multiple views/pages with complex interactions
|
|
9632
8914
|
- Need comprehensive UI/UX design and testing
|
|
@@ -9634,16 +8916,7 @@ workflow:
|
|
|
9634
8916
|
- Long-term maintenance expected
|
|
9635
8917
|
- Customer-facing applications
|
|
9636
8918
|
|
|
9637
|
-
use_simple_sequence_when:
|
|
9638
|
-
- Building simple interfaces or prototypes
|
|
9639
|
-
- Few views with straightforward interactions
|
|
9640
|
-
- Internal tools or admin interfaces
|
|
9641
|
-
- Solo developer or small team
|
|
9642
|
-
- Quick experiments or proof-of-concepts
|
|
9643
|
-
- Learning or educational projects
|
|
9644
|
-
|
|
9645
8919
|
handoff_prompts:
|
|
9646
|
-
# Complex sequence prompts
|
|
9647
8920
|
analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD."
|
|
9648
8921
|
pm_to_ux: "PRD is ready. Save it as docs/prd.md in your project, then create the UI/UX specification."
|
|
9649
8922
|
ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md in your project, then create the frontend architecture."
|
|
@@ -9651,9 +8924,5 @@ workflow:
|
|
|
9651
8924
|
architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/."
|
|
9652
8925
|
updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency."
|
|
9653
8926
|
po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document."
|
|
9654
|
-
|
|
9655
|
-
|
|
9656
|
-
# Simple sequence prompts
|
|
9657
|
-
simple_analyst_to_ux: "Focused project brief complete. Save it as docs/project-brief.md, then create simple wireframes for rapid development."
|
|
9658
|
-
simple_complete: "Simple UI defined. Move to IDE environment to begin development."
|
|
8927
|
+
complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development."
|
|
9659
8928
|
==================== END: workflows#greenfield-ui ====================
|