diff --git a/bmad-core/agents/bmad-orchestrator.md b/bmad-core/agents/bmad-orchestrator.md index f09820ff..d4c98d5d 100644 --- a/bmad-core/agents/bmad-orchestrator.md +++ b/bmad-core/agents/bmad-orchestrator.md @@ -24,25 +24,25 @@ persona: - Always use numbered lists for choices - Process (*) commands immediately startup: - - Announce: Hey! I'm BMad, your BMAD-METHOD orchestrator. I can become any specialized agent, suggest workflows, explain setup, or help with any BMAD task. Type *help for options. + - Announce: Introduce yourself, what you are capable of, and let the user know they can type *help for options. - Assess user goal against available agents and workflows in this bundle - If clear match to an agent's expertise, suggest transformation - If project-oriented, explore available workflows and guide selection - Load resources only when needed commands: - - '*help" - Show commands/workflows/agents' - - '*chat-mode" - Conversational mode with advanced-elicitation' - - '*kb-mode" - Load knowledge base for full BMAD help' - - '*status" - Show current context/agent/progress' - - '*agent {name}" - Transform into agent (list if unspecified)' - - '*exit" - Return to BMad or exit (confirm if exiting BMad)' - - '*task {name}" - Run task (list if unspecified)' - - '*workflow {type}" - Start/list workflows' - - '*workflow-guidance" - Get help selecting the right workflow for your project' - - '*checklist {name}" - Execute checklist (list if unspecified)' - - '*yolo" - Toggle skip confirmations' - - '*party-mode" - Group chat with all agents' - - '*doc-out" - Output full document' + - `*help` - display the help-display-template menu for user selection + - `*chat-mode` - Conversational mode with advanced-elicitation + - `*kb-mode` - Load knowledge base for full BMAD help + - `*status` - Show current context/agent/progress + - `*agent {name}` - Transform into agent (list if unspecified) + - `*exit` - Return to BMad or exit (confirm if exiting BMad) + - `*task {name}` - Run task (list if unspecified) + - `*workflow {type}` - Start workflow + - `*workflow-guidance` - Get help selecting the right workflow for your project + - `*checklist {name}` - Execute checklist (list if unspecified) + - `*yolo` - Toggle skip confirmations + - `*party-mode` - Group chat with all agents + - `*doc-out` - Output full document help-format: - When *help is called, focus on agent capabilities and what each can do - List actual agent names with their specializations and deliverables @@ -54,10 +54,6 @@ help-format: - " Specializes in: Game concepts, mechanics, level design" - " Can create: Game design documents, level designs, game briefs" help-display-template: | - 🎭 BMad Orchestrator - Your Gateway to Specialized Agents - - I coordinate specialized agents for different tasks. Tell me what you need, and I'll connect you with the right expert! - Orchestrator Commands: *help: Show this guide *chat-mode: Start conversational mode for detailed assistance @@ -88,6 +84,7 @@ help-display-template: | *workflow {name}: {workflow description}] 💡 Tip: Each agent has their own tasks, templates, and checklists. Switch to an agent to see what they can do! + fuzzy-matching: - 85% confidence threshold - Show numbered list if unsure @@ -105,17 +102,10 @@ workflow-guidance: - Understand each workflow's purpose, options, and decision points - Ask clarifying questions based on the workflow's structure - Guide users through workflow selection when multiple options exist - - For workflows with divergent paths (e.g., simple vs complex), help users choose the right path + - For workflows with divergent paths, help users choose the right path - Adapt questions to the specific domain (e.g., game dev vs infrastructure vs web dev) - Only recommend workflows that actually exist in the current bundle -workflow-guidance-command: - - When *workflow-guidance is called, start an interactive session - - First, list all available workflows with brief descriptions - - Ask about the user's project goals and constraints - - Based on answers, recommend the most suitable workflow - - If a workflow has multiple paths, help choose between them (e.g., complex vs simple project flow) - - Explain what documents will be created and which agents will be involved - - Offer to start the recommended workflow immediately + - When *workflow-guidance is called, start an interactive session and list all available workflows with brief descriptions dependencies: tasks: - advanced-elicitation diff --git a/bmad-core/agents/pm.md b/bmad-core/agents/pm.md index 05d3bd77..648e5ed4 100644 --- a/bmad-core/agents/pm.md +++ b/bmad-core/agents/pm.md @@ -48,7 +48,6 @@ dependencies: templates: - prd-tmpl - brownfield-prd-tmpl - - simple-project-prd-tmpl checklists: - pm-checklist - change-checklist diff --git a/bmad-core/templates/simple-project-prd-tmpl.md b/bmad-core/templates/simple-project-prd-tmpl.md deleted file mode 100644 index ffbcfb80..00000000 --- a/bmad-core/templates/simple-project-prd-tmpl.md +++ /dev/null @@ -1,461 +0,0 @@ -# {{Project Name}} Product Requirements Document (PRD) - -[[LLM: If available, review any provided document or ask if any are optionally available: Project Brief]] - -## Goals and Background Context - -[[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]] - -### Goals - -[[LLM: Bullet list of 1 line desired outcomes the PRD will deliver if successful - user and project desires]] - -### Background Context - -[[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...]] - -### Change Log - -[[LLM: Track document versions and changes]] - -| Date | Version | Description | Author | -| :--- | :------ | :---------- | :----- | - -## Requirements - -[[LLM: Draft the list of functional and non functional requirements under the two child sections, and immediately execute tasks#advanced-elicitation display]] - -### Functional - -[[LLM: Each Requirement will be a bullet markdown and an identifier sequence starting with FR`.]] -@{example: - FR6: The Todo List uses AI to detect and warn against adding potentially duplicate todo items that are worded differently.} - -### Non Functional - -[[LLM: Each Requirement will be a bullet markdown and an identifier sequence starting with NFR`.]] -@{example: - NFR1: AWS service usage **must** aim to stay within free-tier limits where feasible.} - -^^CONDITION: has_ui^^ - -## User Interface Design Goals - -[[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: - -1. Pre-fill all subsections with educated guesses based on project context -2. Present the complete rendered section to user -3. Clearly let the user know where assumptions were made -4. Ask targeted questions for unclear/missing elements or areas needing more specification -5. This is NOT detailed UI spec - focus on product vision and user goals -6. After section completion, immediately apply `tasks#advanced-elicitation` protocol]] - -### Overall UX Vision - -### Key Interaction Paradigms - -### Core Screens and Views - -[[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]] - -@{example} - -- Login Screen -- Main Dashboard -- Item Detail Page -- Settings Page - @{/example} - -### Accessibility: { None, WCAG, etc } - -### Branding - -[[LLM: Any known branding elements or style guides that must be incorporated?]] - -@{example} - -- 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. -- Attached is the full color pallet and tokens for our corporate branding. - @{/example} - -### Target Device and Platforms - -@{example} -"Web Responsive, and all mobile platforms", "IPhone Only", "ASCII Windows Desktop" -@{/example} - -^^/CONDITION: has_ui^^ - -## Technical Assumptions - -[[LLM: Gather technical decisions that will be used for this simple technical PRD that includes architecture decisions. Steps: - -1. Check if `data#technical-preferences` or an attached `technical-preferences` file exists - use it to pre-populate choices -2. Ask user about: languages, frameworks, starter templates, libraries, APIs, deployment targets -3. For unknowns, offer guidance based on project goals and MVP scope -4. Document ALL technical choices with rationale (why this choice fits the project) -5. These become constraints for the Architect - be specific and complete -6. After section completion, apply `tasks#advanced-elicitation` protocol.]] - -### Repository Structure: { Monorepo, Polyrepo, etc...} - -### Service Architecture - -[[LLM: CRITICAL DECISION - Document the high-level service architecture (e.g., Monolith, Microservices, Serverless functions within a Monorepo).]] - -## Testing requirements - -[[LLM: CRITICAL DECISION - Document the testing requirements, unit only, integration, e2e, manual, need for manual testing convenience methods).]] - -### Additional Technical Assumptions and Requests - -[[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]] - -## Data Models - -[[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: - -1. Review PRD requirements and identify key business entities -2. For each model, explain its purpose and relationships -3. Include key attributes and data types -4. Show relationships between models -5. Create TypeScript interfaces that can be shared -6. Discuss design decisions with user - -Create a clear conceptual model before moving to database schema. - -After presenting all data models, apply `tasks#advanced-elicitation` protocol]] - -<> - -### {{model_name}} - -**Purpose:** {{model_purpose}} - -**Key Attributes:** - -- {{attribute_1}}: {{type_1}} - {{description_1}} -- {{attribute_2}}: {{type_2}} - {{description_2}} - -**TypeScript Interface:** - -```typescript -{ - { - model_interface; - } -} -``` - -**Relationships:** - -- {{relationship_1}} -- {{relationship_2}} - <> - -@{example: data_model} - -### User - -**Purpose:** Represents authenticated users in the system - -**Key Attributes:** - -- id: string - Unique identifier -- email: string - User's email address -- name: string - Display name -- role: enum - User permission level -- timestamps: Date - Created and updated times - -**TypeScript Interface:** - -```typescript -interface User { - id: string; - email: string; - name: string; - role: "admin" | "user" | "guest"; - createdAt: Date; - updatedAt: Date; - profile?: UserProfile; -} - -interface UserProfile { - avatarUrl?: string; - bio?: string; - preferences: Record; -} -``` - -**Relationships:** - -- Has many Posts (1:n) -- Has one Profile (1:1) - @{/example} - -## REST API Spec - -[[LLM: Based on the chosen API style from Tech Stack: - -1. If REST API, create an OpenAPI 3.0 specification -2. If GraphQL, provide the GraphQL schema -3. If tRPC, show router definitions -4. Include all endpoints from epics/stories -5. Define request/response schemas based on data models -6. Document authentication requirements -7. Include example requests/responses - -Use appropriate format for the chosen API style. If no API (e.g., static site), skip this section.]] - -^^CONDITION: has_rest_api^^ - -```yml -openapi: 3.0.0 -info: - title: - '[object Object]': null - version: - '[object Object]': null - description: - '[object Object]': null -servers: - - url: - '[object Object]': null - description: - '[object Object]': null -``` - -^^/CONDITION: has_rest_api^^ - -^^CONDITION: has_graphql_api^^ - -```graphql -# GraphQL Schema -{{graphql_schema}} -``` - -^^/CONDITION: has_graphql_api^^ - -^^CONDITION: has_trpc_api^^ - -```typescript -// tRPC Router Definitions -{ - { - trpc_routers; - } -} -``` - -^^/CONDITION: has_trpc_api^^ - -[[LLM: After presenting the API spec (or noting its absence if not applicable), apply `tasks#advanced-elicitation` protocol]] - -## Components - -[[LLM: Based on the architectural patterns, tech stack, and data models from above: - -1. Identify major logical components/services across the fullstack -2. Consider both frontend and backend components -3. Define clear boundaries and interfaces between components -4. For each component, specify: - -- Primary responsibility -- Key interfaces/APIs exposed -- Dependencies on other components -- Technology specifics based on tech stack choices - -5. Create component diagrams where helpful -6. After presenting all components, apply `tasks#advanced-elicitation` protocol]] - -<> - -### {{component_name}} - -**Responsibility:** {{component_description}} - -**Key Interfaces:** - -- {{interface_1}} -- {{interface_2}} - -**Dependencies:** {{dependencies}} - -**Technology Stack:** {{component_tech_details}} -<> - -### Component Diagrams - -[[LLM: Create Mermaid diagrams to visualize component relationships. Options: - -- C4 Container diagram for high-level view -- Component diagram for detailed internal structure -- Sequence diagrams for complex interactions - Choose the most appropriate for clarity - -After presenting the diagrams, apply `tasks#advanced-elicitation` protocol]] - -## External APIs - -[[LLM: For each external service integration: - -1. Identify APIs needed based on PRD requirements and component design -2. If documentation URLs are unknown, ask user for specifics -3. Document authentication methods and security considerations -4. List specific endpoints that will be used -5. Note any rate limits or usage constraints - -If no external APIs are needed, state this explicitly and skip to next section.]] - -^^CONDITION: has_external_apis^^ - -<> - -### {{api_name}} API - -- **Purpose:** {{api_purpose}} -- **Documentation:** {{api_docs_url}} -- **Base URL(s):** {{api_base_url}} -- **Authentication:** {{auth_method}} -- **Rate Limits:** {{rate_limits}} - -**Key Endpoints Used:** -<> - -- `{{method}} {{endpoint_path}}` - {{endpoint_purpose}} - <> - -**Integration Notes:** {{integration_considerations}} -<> - -@{example: external_api} - -### Stripe API - -- **Purpose:** Payment processing and subscription management -- **Documentation:** https://stripe.com/docs/api -- **Base URL(s):** `https://api.stripe.com/v1` -- **Authentication:** Bearer token with secret key -- **Rate Limits:** 100 requests per second - -**Key Endpoints Used:** - -- `POST /customers` - Create customer profiles -- `POST /payment_intents` - Process payments -- `POST /subscriptions` - Manage subscriptions - @{/example} - -^^/CONDITION: has_external_apis^^ - -[[LLM: After presenting external APIs (or noting their absence), apply `tasks#advanced-elicitation` protocol]] - -## Coding Standards - -[[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. - -After presenting this section, apply `tasks#advanced-elicitation` protocol]] - -### Critical Fullstack Rules - -<> - -- **{{rule_name}}:** {{rule_description}} - <> - -@{example: critical_rules} - -- **Type Sharing:** Always define types in packages/shared and import from there -- **API Calls:** Never make direct HTTP calls - use the service layer -- **Environment Variables:** Access only through config objects, never process.env directly -- **Error Handling:** All API routes must use the standard error handler -- **State Updates:** Never mutate state directly - use proper state management patterns - @{/example} - -### Naming Conventions - -| Element | Frontend | Backend | Example | -| :-------------- | :------------------- | :--------- | :------------------ | -| Components | PascalCase | - | `UserProfile.tsx` | -| Hooks | camelCase with 'use' | - | `useAuth.ts` | -| API Routes | - | kebab-case | `/api/user-profile` | -| Database Tables | - | snake_case | `user_profiles` | - -## Epics - -[[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. - -CRITICAL: Epics MUST be logically sequential following agile best practices: - -- Each epic should deliver a significant, end-to-end, fully deployable increment of testable functionality -- 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 -- Each subsequent epic builds upon previous epics' functionality delivering major blocks of functionality that provide tangible value to users or business when deployed -- 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. -- 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. -- 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.]] - -<> - -- Epic{{epic_number}} {{epic_title}}: {{short_goal}} - -<> - -@{example: epic_list} - -1. Foundation & Core Infrastructure: Establish project setup, authentication, and basic user management -2. Core Business Entities: Create and manage primary domain objects with CRUD operations -3. User Workflows & Interactions: Enable key user journeys and business processes -4. Reporting & Analytics: Provide insights and data visualization for users - -@{/example} - -[[LLM: After the epic list is approved, present each `epic_details` with all its stories and acceptance criteria as a complete review unit and immediately execute tasks#advanced-elicitation display, before moving on to the next epic.]] - -<> - -## Epic {{epic_number}} {{epic_title}} - -{{epic_goal}} [[LLM: Expanded goal - 2-3 sentences describing the objective and value all the stories will achieve]] - -[[LLM: CRITICAL STORY SEQUENCING REQUIREMENTS: - -- Stories within each epic MUST be logically sequential -- Each story should be a "vertical slice" delivering complete functionality -- No story should depend on work from a later story or epic -- Identify and note any direct prerequisite stories -- 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. -- Ensure each story delivers clear user or business value, try to avoid enablers and build them into stories that deliver value. -- Size stories for AI agent execution: Each story must be completable by a single AI agent in one focused session without context overflow -- Think "junior developer working for 2-4 hours" - stories must be small, focused, and self-contained -- If a story seems complex, break it down further as long as it can deliver a vertical slice -- Each story should result in working, testable code before the agent's context window fills]] - -<> - -### Story {{epic_number}}.{{story_number}} {{story_title}} - -As a {{user_type}}, -I want {{action}}, -so that {{benefit}}. - -#### Acceptance Criteria - -[[LLM: Define clear, comprehensive, and testable acceptance criteria that: - -- Precisely define what "done" means from a functional perspective -- Are unambiguous and serve as basis for verification -- Include any critical non-functional requirements from the PRD -- Consider local testability for backend/data components -- Specify UI/UX requirements and framework adherence where applicable -- Avoid cross-cutting concerns that should be in other stories or PRD sections]] - -<> - -- {{criterion number}}: {{criteria}} - -<> -<> -<> - -## Next Steps - -### Design Architect Prompt - -[[LLM: This section will contain the prompt for the Design Architect, keep it short and to the point to initiate create architecture mode using this document as input.]] diff --git a/bmad-core/workflows/brownfield-fullstack.yml b/bmad-core/workflows/brownfield-fullstack.yml index 2bfa2977..f49b858a 100644 --- a/bmad-core/workflows/brownfield-fullstack.yml +++ b/bmad-core/workflows/brownfield-fullstack.yml @@ -11,16 +11,11 @@ workflow: - modernization - integration-enhancement - # For Complex Enhancements (Multiple Stories, Architectural Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: project_analysis - agent: analyst - action: analyze existing project + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing documentation, codebase structure, and identify integration points. Document current system understanding before proceeding." - agent: pm @@ -49,68 +44,34 @@ workflow: action: move_to_ide 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" - # For Simple Enhancements (1-3 Stories, Following Existing Patterns) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (very small change) or epic (1-3 related stories)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused enhancement with existing system integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Brownfield Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing project] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: Brownfield Enhancement] --> B[analyst: analyze existing project] + B --> C[pm: brownfield-prd.md] + C --> D[architect: brownfield-architecture.md] + D --> E[po: validate with po-master-checklist] + E --> F{PO finds issues?} + F -->|Yes| G[Return to relevant agent for fixes] + F -->|No| H[Move to IDE Environment] + G --> E - C --> E[pm: brownfield-prd.md] - E --> F[architect: brownfield-architecture.md] - F --> G[po: validate with po-master-checklist] - G --> H{PO finds issues?} - H -->|Yes| I[Return to relevant agent for fixes] - H -->|No| J[Move to IDE Environment] - I --> G - - D -->|1 Story| K[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic] - K --> M[Move to IDE Environment] - L --> M - - style J fill:#90EE90 - style M fill:#90EE90 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style K fill:#FFB6C1 - style L fill:#FFB6C1 + style H fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: - - Enhancement requires multiple coordinated stories (4+) + when_to_use: + - Enhancement requires coordinated stories - Architectural changes are needed - Significant integration work required - Risk assessment and mitigation planning necessary - Multiple team members will work on related changes - use_simple_sequence_when: - - Enhancement can be completed in 1-3 stories - - Follows existing project patterns - - Integration complexity is minimal - - Risk to existing system is low - - Change is isolated with clear boundaries - handoff_prompts: analyst_to_pm: "Existing project analysis complete. Create comprehensive brownfield PRD with integration strategy." pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the integration architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "Enhancement defined with existing system integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." diff --git a/bmad-core/workflows/brownfield-service.yml b/bmad-core/workflows/brownfield-service.yml index 119bb56c..68ea485d 100644 --- a/bmad-core/workflows/brownfield-service.yml +++ b/bmad-core/workflows/brownfield-service.yml @@ -12,16 +12,11 @@ workflow: - performance-optimization - integration-enhancement - # For Complex Service Enhancements (Multiple Stories, Architectural Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple service change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: service_analysis - agent: analyst - action: analyze existing service + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing service documentation, codebase, performance metrics, and identify integration dependencies." - agent: pm @@ -50,68 +45,34 @@ workflow: action: move_to_ide 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" - # For Simple Service Enhancements (1-3 Stories, Following Existing Patterns) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (simple API endpoint) or epic (1-3 related service changes)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused service enhancement with existing API integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Service Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing service] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: Service Enhancement] --> B[analyst: analyze existing service] + B --> C[pm: brownfield-prd.md] + C --> D[architect: brownfield-architecture.md] + D --> E[po: validate with po-master-checklist] + E --> F{PO finds issues?} + F -->|Yes| G[Return to relevant agent for fixes] + F -->|No| H[Move to IDE Environment] + G --> E - C --> E[pm: brownfield-prd.md] - E --> F[architect: brownfield-architecture.md] - F --> G[po: validate with po-master-checklist] - G --> H{PO finds issues?} - H -->|Yes| I[Return to relevant agent for fixes] - H -->|No| J[Move to IDE Environment] - I --> G - - D -->|1 Story| K[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic] - K --> M[Move to IDE Environment] - L --> M - - style J fill:#90EE90 - style M fill:#90EE90 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style K fill:#FFB6C1 - style L fill:#FFB6C1 + style H fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: - - Service enhancement requires multiple coordinated stories (4+) + when_to_use: + - Service enhancement requires coordinated stories - API versioning or breaking changes needed - Database schema changes required - Performance or scalability improvements needed - Multiple integration points affected - use_simple_sequence_when: - - Adding simple endpoints or modifying existing ones - - Enhancement follows existing service patterns - - API compatibility maintained - - Risk to existing service is low - - Change is isolated with clear boundaries - handoff_prompts: analyst_to_pm: "Service analysis complete. Create comprehensive brownfield PRD with service integration strategy." pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the service architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for service integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "Service enhancement defined with existing API integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." diff --git a/bmad-core/workflows/brownfield-ui.yml b/bmad-core/workflows/brownfield-ui.yml index 446eca26..20287667 100644 --- a/bmad-core/workflows/brownfield-ui.yml +++ b/bmad-core/workflows/brownfield-ui.yml @@ -11,16 +11,11 @@ workflow: - design-refresh - frontend-enhancement - # For Complex UI Enhancements (Multiple Stories, Design Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple UI change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: ui_analysis - agent: analyst - action: analyze existing UI + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing frontend application, user feedback, analytics data, and identify improvement areas." - agent: pm @@ -57,71 +52,37 @@ workflow: action: move_to_ide 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" - # For Simple UI Enhancements (1-3 Stories, Following Existing Design) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (simple component change) or epic (1-3 related UI changes)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused UI enhancement with existing design system integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: UI Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing UI] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: UI Enhancement] --> B[analyst: analyze existing UI] + B --> C[pm: brownfield-prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> E[architect: brownfield-architecture.md] + E --> F[po: validate with po-master-checklist] + F --> G{PO finds issues?} + G -->|Yes| H[Return to relevant agent for fixes] + G -->|No| I[Move to IDE Environment] + H --> F - C --> E[pm: brownfield-prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> G[architect: brownfield-architecture.md] - G --> H[po: validate with po-master-checklist] - H --> I{PO finds issues?} - I -->|Yes| J[Return to relevant agent for fixes] - I -->|No| K[Move to IDE Environment] - J --> H - - D -->|1 Story| L[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| M[pm/po/sm: brownfield-create-epic] - L --> N[Move to IDE Environment] - M --> N - - style K fill:#90EE90 - style N fill:#90EE90 + style I fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style L fill:#FFB6C1 - style M fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: - - UI enhancement requires multiple coordinated stories (4+) + when_to_use: + - UI enhancement requires coordinated stories - Design system changes needed - New component patterns required - User research and testing needed - Multiple team members will work on related changes - use_simple_sequence_when: - - Enhancement can be completed in 1-3 stories - - Follows existing design patterns exactly - - Component changes are isolated - - Risk to existing UI is low - - Change maintains current user experience - handoff_prompts: analyst_to_pm: "UI analysis complete. Create comprehensive brownfield PRD with UI integration strategy." pm_to_ux: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the UI/UX specification." ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md, then create the frontend architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for UI integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "UI enhancement defined with existing design integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." diff --git a/bmad-core/workflows/greenfield-fullstack.yml b/bmad-core/workflows/greenfield-fullstack.yml index 713e09c6..64aa5a31 100644 --- a/bmad-core/workflows/greenfield-fullstack.yml +++ b/bmad-core/workflows/greenfield-fullstack.yml @@ -12,8 +12,7 @@ workflow: - prototype - mvp - # For Complex Projects (Production-Ready, Multiple Features) - complex_project_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -78,91 +77,50 @@ workflow: action: move_to_ide 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" - # For Simple Projects (Prototypes, MVPs, Quick Experiments) - simple_project_sequence: - - step: project_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_project_sequence) or can be a simple prototype/MVP." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple project. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: pm - creates: simple-project-prd.md - uses: create doc simple-project-prd OR create-epic OR create-story - requires: project-brief.md - notes: "Create simple prd, simple epic or story instead of full PRD for rapid development. Choose based on scope." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Greenfield Project] --> B{Project Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: Greenfield Project] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> D2{Generate v0 prompt?} + D2 -->|Yes| D3[ux-expert: create v0 prompt] + D2 -->|No| E[architect: fullstack-architecture.md] + D3 --> D4[User: generate UI in v0/Lovable] + D4 --> E + E --> F{Architecture suggests PRD changes?} + F -->|Yes| G[pm: update prd.md] + F -->|No| H[po: validate all artifacts] + G --> H + H --> I{PO finds issues?} + I -->|Yes| J[Return to relevant agent for fixes] + I -->|No| K[Move to IDE Environment] + J --> H - C --> E[pm: prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> F2{Generate v0 prompt?} - F2 -->|Yes| F3[ux-expert: create v0 prompt] - F2 -->|No| G[architect: fullstack-architecture.md] - F3 --> F4[User: generate UI in v0/Lovable] - F4 --> G - G --> H{Architecture suggests PRD changes?} - H -->|Yes| I[pm: update prd.md] - H -->|No| J[po: validate all artifacts] - I --> J - J --> K{PO finds issues?} - K -->|Yes| L[Return to relevant agent for fixes] - K -->|No| M[Move to IDE Environment] - L --> J + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: user research] + E -.-> E1[Optional: technical research] - D --> N[pm: simple epic or story] - N --> O[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: user research] - G -.-> G1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style M fill:#90EE90 - style O fill:#90EE90 - style F3 fill:#E6E6FA - style F4 fill:#E6E6FA + style K fill:#90EE90 + style D3 fill:#E6E6FA + style D4 fill:#E6E6FA + style B fill:#FFE4B5 style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style D fill:#FFB6C1 - style N fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production-ready applications - Multiple team members will be involved - - Complex feature requirements (4+ stories) + - Complex feature requirements - Need comprehensive documentation - Long-term maintenance expected - Enterprise or customer-facing applications - use_simple_sequence_when: - - Building prototypes or MVPs - - Solo developer or small team - - Simple requirements (1-3 stories) - - Quick experiments or proof-of-concepts - - Short-term or throwaway projects - - Learning or educational projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_ux: "PRD is ready. Save it as docs/prd.md in your project, then create the UI/UX specification." ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md in your project, then create the fullstack architecture." @@ -170,8 +128,4 @@ workflow: architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for rapid development." - simple_complete: "Simple project defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." diff --git a/bmad-core/workflows/greenfield-service.yml b/bmad-core/workflows/greenfield-service.yml index 32d1ff5a..2f27909a 100644 --- a/bmad-core/workflows/greenfield-service.yml +++ b/bmad-core/workflows/greenfield-service.yml @@ -13,8 +13,7 @@ workflow: - api-prototype - simple-service - # For Complex Services (Production APIs, Multiple Endpoints) - complex_service_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -54,65 +53,33 @@ workflow: action: move_to_ide 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" - # For Simple Services (Simple APIs, Single Purpose Services) - simple_service_sequence: - - step: service_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_service_sequence) or can be a simple API/service." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple service. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: pm - creates: simple_epic OR single_story - uses: create-epic OR create-story - requires: project-brief.md - notes: "Create simple epic or story for API endpoints instead of full PRD for rapid development." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Service Development] --> B{Service Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: Service Development] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[architect: architecture.md] + D --> E{Architecture suggests PRD changes?} + E -->|Yes| F[pm: update prd.md] + E -->|No| G[po: validate all artifacts] + F --> G + G --> H{PO finds issues?} + H -->|Yes| I[Return to relevant agent for fixes] + H -->|No| J[Move to IDE Environment] + I --> G - C --> E[pm: prd.md] - E --> F[architect: architecture.md] - F --> G{Architecture suggests PRD changes?} - G -->|Yes| H[pm: update prd.md] - G -->|No| I[po: validate all artifacts] - H --> I - I --> J{PO finds issues?} - J -->|Yes| K[Return to relevant agent for fixes] - J -->|No| L[Move to IDE Environment] - K --> I + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: technical research] - D --> M[pm: simple epic or story] - M --> N[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style L fill:#90EE90 - style N fill:#90EE90 + style J fill:#90EE90 + style B fill:#FFE4B5 style C fill:#FFE4B5 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style D fill:#FFB6C1 - style M fill:#FFB6C1 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production APIs or microservices - Multiple endpoints and complex business logic - Need comprehensive documentation and testing @@ -120,24 +87,11 @@ workflow: - Long-term maintenance expected - Enterprise or external-facing APIs - use_simple_sequence_when: - - Building simple APIs or single-purpose services - - Few endpoints with straightforward logic - - Prototyping or proof-of-concept APIs - - Solo developer or small team - - Internal tools or utilities - - Learning or experimental projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_architect: "PRD is ready. Save it as docs/prd.md in your project, then create the service architecture." architect_review: "Architecture complete. Save it as docs/architecture.md. Do you suggest any changes to the PRD stories or need new stories added?" architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for API development." - simple_complete: "Simple service defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." diff --git a/bmad-core/workflows/greenfield-ui.yml b/bmad-core/workflows/greenfield-ui.yml index 5d6480e1..9b1989ae 100644 --- a/bmad-core/workflows/greenfield-ui.yml +++ b/bmad-core/workflows/greenfield-ui.yml @@ -13,8 +13,7 @@ workflow: - ui-prototype - simple-interface - # For Complex UIs (Production Apps, Multiple Views) - complex_ui_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -73,74 +72,42 @@ workflow: action: move_to_ide 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" - # For Simple UIs (Simple Interfaces, Few Components) - simple_ui_sequence: - - step: ui_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_ui_sequence) or can be a simple interface." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple UI. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: ux-expert - creates: simple_wireframes OR quick_spec - uses: create-epic OR create-story - requires: project-brief.md - notes: "Create simple wireframes and component list instead of full UI/UX spec for rapid development." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: UI Development] --> B{UI Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: UI Development] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> D2{Generate v0 prompt?} + D2 -->|Yes| D3[ux-expert: create v0 prompt] + D2 -->|No| E[architect: front-end-architecture.md] + D3 --> D4[User: generate UI in v0/Lovable] + D4 --> E + E --> F{Architecture suggests PRD changes?} + F -->|Yes| G[pm: update prd.md] + F -->|No| H[po: validate all artifacts] + G --> H + H --> I{PO finds issues?} + I -->|Yes| J[Return to relevant agent for fixes] + I -->|No| K[Move to IDE Environment] + J --> H - C --> E[pm: prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> F2{Generate v0 prompt?} - F2 -->|Yes| F3[ux-expert: create v0 prompt] - F2 -->|No| G[architect: front-end-architecture.md] - F3 --> F4[User: generate UI in v0/Lovable] - F4 --> G - G --> H{Architecture suggests PRD changes?} - H -->|Yes| I[pm: update prd.md] - H -->|No| J[po: validate all artifacts] - I --> J - J --> K{PO finds issues?} - K -->|Yes| L[Return to relevant agent for fixes] - K -->|No| M[Move to IDE Environment] - L --> J + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: user research] + E -.-> E1[Optional: technical research] - D --> N[ux-expert: simple wireframes] - N --> O[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: user research] - G -.-> G1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style M fill:#90EE90 - style O fill:#90EE90 - style F3 fill:#E6E6FA - style F4 fill:#E6E6FA + style K fill:#90EE90 + style D3 fill:#E6E6FA + style D4 fill:#E6E6FA + style B fill:#FFE4B5 style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style D fill:#FFB6C1 - style N fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production frontend applications - Multiple views/pages with complex interactions - Need comprehensive UI/UX design and testing @@ -148,16 +115,7 @@ workflow: - Long-term maintenance expected - Customer-facing applications - use_simple_sequence_when: - - Building simple interfaces or prototypes - - Few views with straightforward interactions - - Internal tools or admin interfaces - - Solo developer or small team - - Quick experiments or proof-of-concepts - - Learning or educational projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_ux: "PRD is ready. Save it as docs/prd.md in your project, then create the UI/UX specification." ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md in your project, then create the frontend architecture." @@ -165,8 +123,4 @@ workflow: architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_ux: "Focused project brief complete. Save it as docs/project-brief.md, then create simple wireframes for rapid development." - simple_complete: "Simple UI defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." diff --git a/dist/agents/architect.txt b/dist/agents/architect.txt index e64e9353..1ce784ea 100644 --- a/dist/agents/architect.txt +++ b/dist/agents/architect.txt @@ -2040,9 +2040,9 @@ Document the choice and key services that will be used.]] Use appropriate diagram type for clarity.]] -````mermaid +```mermaid {{architecture_diagram}} -```text +``` ### Architectural Patterns @@ -2153,7 +2153,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] model_interface; } } -```` +``` **Relationships:** @@ -2177,7 +2177,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript interface User { id: string; email: string; @@ -2231,16 +2231,16 @@ servers: '[object Object]': null description: '[object Object]': null -```` +``` ^^/CONDITION: has_rest_api^^ ^^CONDITION: has_graphql_api^^ -````graphql +```graphql # GraphQL Schema {{graphql_schema}} -```text +``` ^^/CONDITION: has_graphql_api^^ @@ -2253,7 +2253,7 @@ servers: trpc_routers; } } -```` +``` ^^/CONDITION: has_trpc_api^^ @@ -2398,19 +2398,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Component Organization:** -`````text -{{component_structure}} ```text +{{component_structure}} +``` **Component Template:** -````typescript +```typescript { { component_template; } } -```text +``` ### State Management Architecture @@ -2424,7 +2424,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] state_structure; } } -````` +``` **State Management Patterns:** @@ -2443,13 +2443,13 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Protected Route Pattern:** -````typescript +```typescript { { protected_route_example; } } -```text +``` ### Frontend Services Layer @@ -2463,17 +2463,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] api_client_setup; } } -```` +``` **Service Example:** -````typescript +```typescript { { service_example; } } -```text +``` ## Backend Architecture @@ -2488,11 +2488,11 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ^^CONDITION: serverless^^ **Function Organization:** -```` +```text {{function_structure}} -````text +``` **Function Template:** @@ -2502,26 +2502,26 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] function_template; } } -```` +``` ^^/CONDITION: serverless^^ ^^CONDITION: traditional_server^^ **Controller/Route Organization:** -`````text -{{controller_structure}} ```text +{{controller_structure}} +``` **Controller Template:** -````typescript +```typescript { { controller_template; } } -```text +``` ^^/CONDITION: traditional_server^^ @@ -2533,17 +2533,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```sql {{database_schema}} -````` +``` **Data Access Layer:** -````typescript +```typescript { { repository_pattern; } } -```text +``` ### Authentication and Authorization @@ -2553,17 +2553,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```mermaid {{auth_flow_diagram}} -```` +``` **Middleware/Guards:** -````typescript +```typescript { { auth_middleware; } } -```text +``` ## Unified Project Structure @@ -2623,7 +2623,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ├── package.json # Root package.json ├── {{monorepo_config}} # Monorepo configuration └── README.md -```` +``` @{example: vercel_structure} apps/ @@ -2645,19 +2645,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Prerequisites:** -````bash +```bash {{prerequisites_commands}} -```text +``` **Initial Setup:** ```bash {{setup_commands}} -```` +``` **Development Commands:** -````bash +```bash # Start all services {{start_all_command}} @@ -2669,7 +2669,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Run tests {{test_commands}} -```text +``` ### Environment Configuration @@ -2684,7 +2684,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Shared {{shared_env_vars}} -```` +``` ## Deployment Architecture @@ -2707,9 +2707,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### CI/CD Pipeline -````yaml +```yaml '[object Object]': null -```text +``` ### Environments @@ -2767,7 +2767,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Testing Pyramid -```` +```text E2E Tests / \ @@ -2776,17 +2776,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] / \ Frontend Unit Backend Unit -```text +``` ### Test Organization **Frontend Tests:** -``` +```text {{frontend_test_structure}} -````text +``` **Backend Tests:** @@ -2794,15 +2794,15 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] {{backend_test_structure}} -```text +``` **E2E Tests:** -```` +```text {{e2e_test_structure}} -````text +``` ### Test Examples @@ -2814,17 +2814,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] frontend_test_example; } } -```` +``` **Backend API Test:** -````typescript +```typescript { { backend_test_example; } } -```text +``` **E2E Test:** @@ -2834,7 +2834,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] e2e_test_example; } } -```` +``` ## Coding Standards @@ -2875,9 +2875,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Error Flow -````mermaid +```mermaid {{error_flow_diagram}} -```text +``` ### Error Response Format @@ -2891,17 +2891,17 @@ interface ApiError { requestId: string; }; } -```` +``` ### Frontend Error Handling -````typescript +```typescript { { frontend_error_handler; } } -```text +``` ### Backend Error Handling @@ -2911,7 +2911,7 @@ interface ApiError { backend_error_handler; } } -```` +``` ## Monitoring and Observability diff --git a/dist/agents/bmad-master.txt b/dist/agents/bmad-master.txt index ce707e94..63fec604 100644 --- a/dist/agents/bmad-master.txt +++ b/dist/agents/bmad-master.txt @@ -2137,7 +2137,7 @@ You are now operating as a Documentation Indexer. Your goal is to ensure all doc The index should be organized as follows: -`````markdown +```markdown # Documentation Index ## Root Documents @@ -2170,7 +2170,7 @@ Documents within the `another-folder/` directory: Description of nested document. -````text +``` ### Index Entry Format @@ -2180,10 +2180,7 @@ Each entry should follow this format: ### [Document Title](relative/path/to/file.md) Brief description of the document's purpose and contents. -```` -````` - -```` +``` ### Rules of Operation @@ -2261,7 +2258,6 @@ Please provide: 5. Whether to include hidden files/folders (starting with `.`) Would you like to proceed with documentation indexing? Please provide the required input above. -```` ==================== END: tasks#index-docs ==================== ==================== START: tasks#shard-doc ==================== @@ -4999,9 +4995,9 @@ Document the choice and key services that will be used.]] Use appropriate diagram type for clarity.]] -````mermaid +```mermaid {{architecture_diagram}} -```text +``` ### Architectural Patterns @@ -5112,7 +5108,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] model_interface; } } -```` +``` **Relationships:** @@ -5136,7 +5132,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript interface User { id: string; email: string; @@ -5190,16 +5186,16 @@ servers: '[object Object]': null description: '[object Object]': null -```` +``` ^^/CONDITION: has_rest_api^^ ^^CONDITION: has_graphql_api^^ -````graphql +```graphql # GraphQL Schema {{graphql_schema}} -```text +``` ^^/CONDITION: has_graphql_api^^ @@ -5212,7 +5208,7 @@ servers: trpc_routers; } } -```` +``` ^^/CONDITION: has_trpc_api^^ @@ -5357,19 +5353,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Component Organization:** -`````text -{{component_structure}} ```text +{{component_structure}} +``` **Component Template:** -````typescript +```typescript { { component_template; } } -```text +``` ### State Management Architecture @@ -5383,7 +5379,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] state_structure; } } -````` +``` **State Management Patterns:** @@ -5402,13 +5398,13 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Protected Route Pattern:** -````typescript +```typescript { { protected_route_example; } } -```text +``` ### Frontend Services Layer @@ -5422,17 +5418,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] api_client_setup; } } -```` +``` **Service Example:** -````typescript +```typescript { { service_example; } } -```text +``` ## Backend Architecture @@ -5447,11 +5443,11 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ^^CONDITION: serverless^^ **Function Organization:** -```` +```text {{function_structure}} -````text +``` **Function Template:** @@ -5461,26 +5457,26 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] function_template; } } -```` +``` ^^/CONDITION: serverless^^ ^^CONDITION: traditional_server^^ **Controller/Route Organization:** -`````text -{{controller_structure}} ```text +{{controller_structure}} +``` **Controller Template:** -````typescript +```typescript { { controller_template; } } -```text +``` ^^/CONDITION: traditional_server^^ @@ -5492,17 +5488,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```sql {{database_schema}} -````` +``` **Data Access Layer:** -````typescript +```typescript { { repository_pattern; } } -```text +``` ### Authentication and Authorization @@ -5512,17 +5508,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```mermaid {{auth_flow_diagram}} -```` +``` **Middleware/Guards:** -````typescript +```typescript { { auth_middleware; } } -```text +``` ## Unified Project Structure @@ -5582,7 +5578,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ├── package.json # Root package.json ├── {{monorepo_config}} # Monorepo configuration └── README.md -```` +``` @{example: vercel_structure} apps/ @@ -5604,19 +5600,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Prerequisites:** -````bash +```bash {{prerequisites_commands}} -```text +``` **Initial Setup:** ```bash {{setup_commands}} -```` +``` **Development Commands:** -````bash +```bash # Start all services {{start_all_command}} @@ -5628,7 +5624,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Run tests {{test_commands}} -```text +``` ### Environment Configuration @@ -5643,7 +5639,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Shared {{shared_env_vars}} -```` +``` ## Deployment Architecture @@ -5666,9 +5662,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### CI/CD Pipeline -````yaml +```yaml '[object Object]': null -```text +``` ### Environments @@ -5726,7 +5722,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Testing Pyramid -```` +```text E2E Tests / \ @@ -5735,17 +5731,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] / \ Frontend Unit Backend Unit -```text +``` ### Test Organization **Frontend Tests:** -``` +```text {{frontend_test_structure}} -````text +``` **Backend Tests:** @@ -5753,15 +5749,15 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] {{backend_test_structure}} -```text +``` **E2E Tests:** -```` +```text {{e2e_test_structure}} -````text +``` ### Test Examples @@ -5773,17 +5769,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] frontend_test_example; } } -```` +``` **Backend API Test:** -````typescript +```typescript { { backend_test_example; } } -```text +``` **E2E Test:** @@ -5793,7 +5789,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] e2e_test_example; } } -```` +``` ## Coding Standards @@ -5834,9 +5830,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Error Flow -````mermaid +```mermaid {{error_flow_diagram}} -```text +``` ### Error Response Format @@ -5850,17 +5846,17 @@ interface ApiError { requestId: string; }; } -```` +``` ### Frontend Error Handling -````typescript +```typescript { { frontend_error_handler; } } -```text +``` ### Backend Error Handling @@ -5870,7 +5866,7 @@ interface ApiError { backend_error_handler; } } -```` +``` ## Monitoring and Observability diff --git a/dist/agents/pm.txt b/dist/agents/pm.txt index a841b9d9..832cb93b 100644 --- a/dist/agents/pm.txt +++ b/dist/agents/pm.txt @@ -1732,13 +1732,13 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript { { model_interface; } } -```text +``` **Relationships:** @@ -1778,7 +1778,7 @@ interface UserProfile { bio?: string; preferences: Record; } -```` +``` **Relationships:** @@ -1802,7 +1802,7 @@ Use appropriate format for the chosen API style. If no API (e.g., static site), ^^CONDITION: has_rest_api^^ -````yml +```yml openapi: 3.0.0 info: title: @@ -1816,7 +1816,7 @@ servers: '[object Object]': null description: '[object Object]': null -```text +``` ^^/CONDITION: has_rest_api^^ @@ -1825,7 +1825,7 @@ servers: ```graphql # GraphQL Schema {{graphql_schema}} -```` +``` ^^/CONDITION: has_graphql_api^^ diff --git a/dist/expansion-packs/expansion-creator/agents/bmad-the-creator.txt b/dist/expansion-packs/expansion-creator/agents/bmad-the-creator.txt index a96dd742..966ade1f 100644 --- a/dist/expansion-packs/expansion-creator/agents/bmad-the-creator.txt +++ b/dist/expansion-packs/expansion-creator/agents/bmad-the-creator.txt @@ -449,7 +449,7 @@ Create `expansion-packs/{pack-name}/plan.md` with: ## Approval User approval received: [ ] Yes -```text +``` Important: Wait for user approval before proceeding to Phase 2 @@ -582,34 +582,36 @@ IMPORTANT: Only proceed after plan.md is approved #### 3.1 Create Directory Structure ``` + expansion-packs/ └── {pack-name}/ - ├── plan.md (ALREADY CREATED) - ├── manifest.yml - ├── README.md - ├── agents/ - │ ├── {pack-name}-orchestrator.md (REQUIRED - Custom themed orchestrator) - │ └── {agent-id}.md (YAML-in-Markdown with persona) - ├── data/ - │ ├── {domain}-best-practices.md - │ ├── {domain}-terminology.md - │ └── {domain}-standards.md - ├── tasks/ - │ ├── create-doc.md (REQUIRED - Core utility) - │ ├── execute-checklist.md (REQUIRED - Core utility) - │ └── {task-name}.md (Domain-specific tasks) - ├── utils/ - │ ├── template-format.md (REQUIRED - Core utility) - │ └── workflow-management.md (REQUIRED - Core utility) - ├── templates/ - │ └── {template-name}.md - ├── checklists/ - │ └── {checklist-name}.md - ├── workflows/ - │ └── {domain}-workflow.md (REQUIRED if multiple agents) - └── agent-teams/ - └── {domain}-team.yml (REQUIRED if multiple agents) -```text +├── plan.md (ALREADY CREATED) +├── manifest.yml +├── README.md +├── agents/ +│ ├── {pack-name}-orchestrator.md (REQUIRED - Custom themed orchestrator) +│ └── {agent-id}.md (YAML-in-Markdown with persona) +├── data/ +│ ├── {domain}-best-practices.md +│ ├── {domain}-terminology.md +│ └── {domain}-standards.md +├── tasks/ +│ ├── create-doc.md (REQUIRED - Core utility) +│ ├── execute-checklist.md (REQUIRED - Core utility) +│ └── {task-name}.md (Domain-specific tasks) +├── utils/ +│ ├── template-format.md (REQUIRED - Core utility) +│ └── workflow-management.md (REQUIRED - Core utility) +├── templates/ +│ └── {template-name}.md +├── checklists/ +│ └── {checklist-name}.md +├── workflows/ +│ └── {domain}-workflow.md (REQUIRED if multiple agents) +└── agent-teams/ +└── {domain}-team.yml (REQUIRED if multiple agents) + +``` #### 3.2 Create Manifest @@ -745,7 +747,7 @@ cp bmad-core/tasks/execute-checklist.md expansion-packs/{pack-name}/tasks/ mkdir -p expansion-packs/{pack-name}/utils cp bmad-core/utils/template-format.md expansion-packs/{pack-name}/utils/ cp bmad-core/utils/workflow-management.md expansion-packs/{pack-name}/utils/ -```text +``` **Step 3: Technical Implementation** @@ -995,10 +997,10 @@ _{Professional background and expertise}_ - `{file2}.{ext}` - {description} 2. **Launch Orchestrator**: + ```bash npm run agent {pack-name}-orchestrator ``` -```` 3. **Follow Numbered Options**: {Character Name} will present numbered choices for each decision @@ -1028,14 +1030,12 @@ _{Professional background and expertise}_ ### Knowledge Base [Embedded domain expertise] - ```` #### 6.3 Advanced Data File Documentation with Validation For each required data file, provide comprehensive guidance: -```markdown ## Required User Data Files ### {filename}.{ext} @@ -1045,7 +1045,6 @@ For each required data file, provide comprehensive guidance: - **Location**: Place in `bmad-core/data/` - **Validation**: {how agents will verify the file is correct} - **Example Structure**: -```` {sample content showing exact format} @@ -1321,6 +1320,14 @@ Embedded knowledge (automatic): - [ ] Template conditional content tested with different scenarios - [ ] Workflow decision trees validated with sample use cases - [ ] Character interactions tested for consistency and professional authenticity + +``` + +``` + +``` + +``` ==================== END: tasks#generate-expansion-pack ==================== ==================== START: templates#agent-tmpl ==================== diff --git a/dist/teams/team-all.txt b/dist/teams/team-all.txt index 8ef3c341..27fa3daf 100644 --- a/dist/teams/team-all.txt +++ b/dist/teams/team-all.txt @@ -4046,9 +4046,9 @@ Document the choice and key services that will be used.]] Use appropriate diagram type for clarity.]] -````mermaid +```mermaid {{architecture_diagram}} -```text +``` ### Architectural Patterns @@ -4159,7 +4159,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] model_interface; } } -```` +``` **Relationships:** @@ -4183,7 +4183,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript interface User { id: string; email: string; @@ -4237,16 +4237,16 @@ servers: '[object Object]': null description: '[object Object]': null -```` +``` ^^/CONDITION: has_rest_api^^ ^^CONDITION: has_graphql_api^^ -````graphql +```graphql # GraphQL Schema {{graphql_schema}} -```text +``` ^^/CONDITION: has_graphql_api^^ @@ -4259,7 +4259,7 @@ servers: trpc_routers; } } -```` +``` ^^/CONDITION: has_trpc_api^^ @@ -4404,19 +4404,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Component Organization:** -`````text -{{component_structure}} ```text +{{component_structure}} +``` **Component Template:** -````typescript +```typescript { { component_template; } } -```text +``` ### State Management Architecture @@ -4430,7 +4430,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] state_structure; } } -````` +``` **State Management Patterns:** @@ -4449,13 +4449,13 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Protected Route Pattern:** -````typescript +```typescript { { protected_route_example; } } -```text +``` ### Frontend Services Layer @@ -4469,17 +4469,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] api_client_setup; } } -```` +``` **Service Example:** -````typescript +```typescript { { service_example; } } -```text +``` ## Backend Architecture @@ -4494,11 +4494,11 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ^^CONDITION: serverless^^ **Function Organization:** -```` +```text {{function_structure}} -````text +``` **Function Template:** @@ -4508,26 +4508,26 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] function_template; } } -```` +``` ^^/CONDITION: serverless^^ ^^CONDITION: traditional_server^^ **Controller/Route Organization:** -`````text -{{controller_structure}} ```text +{{controller_structure}} +``` **Controller Template:** -````typescript +```typescript { { controller_template; } } -```text +``` ^^/CONDITION: traditional_server^^ @@ -4539,17 +4539,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```sql {{database_schema}} -````` +``` **Data Access Layer:** -````typescript +```typescript { { repository_pattern; } } -```text +``` ### Authentication and Authorization @@ -4559,17 +4559,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```mermaid {{auth_flow_diagram}} -```` +``` **Middleware/Guards:** -````typescript +```typescript { { auth_middleware; } } -```text +``` ## Unified Project Structure @@ -4629,7 +4629,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ├── package.json # Root package.json ├── {{monorepo_config}} # Monorepo configuration └── README.md -```` +``` @{example: vercel_structure} apps/ @@ -4651,19 +4651,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Prerequisites:** -````bash +```bash {{prerequisites_commands}} -```text +``` **Initial Setup:** ```bash {{setup_commands}} -```` +``` **Development Commands:** -````bash +```bash # Start all services {{start_all_command}} @@ -4675,7 +4675,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Run tests {{test_commands}} -```text +``` ### Environment Configuration @@ -4690,7 +4690,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Shared {{shared_env_vars}} -```` +``` ## Deployment Architecture @@ -4713,9 +4713,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### CI/CD Pipeline -````yaml +```yaml '[object Object]': null -```text +``` ### Environments @@ -4773,7 +4773,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Testing Pyramid -```` +```text E2E Tests / \ @@ -4782,17 +4782,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] / \ Frontend Unit Backend Unit -```text +``` ### Test Organization **Frontend Tests:** -``` +```text {{frontend_test_structure}} -````text +``` **Backend Tests:** @@ -4800,15 +4800,15 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] {{backend_test_structure}} -```text +``` **E2E Tests:** -```` +```text {{e2e_test_structure}} -````text +``` ### Test Examples @@ -4820,17 +4820,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] frontend_test_example; } } -```` +``` **Backend API Test:** -````typescript +```typescript { { backend_test_example; } } -```text +``` **E2E Test:** @@ -4840,7 +4840,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] e2e_test_example; } } -```` +``` ## Coding Standards @@ -4881,9 +4881,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Error Flow -````mermaid +```mermaid {{error_flow_diagram}} -```text +``` ### Error Response Format @@ -4897,17 +4897,17 @@ interface ApiError { requestId: string; }; } -```` +``` ### Frontend Error Handling -````typescript +```typescript { { frontend_error_handler; } } -```text +``` ### Backend Error Handling @@ -4917,7 +4917,7 @@ interface ApiError { backend_error_handler; } } -```` +``` ## Monitoring and Observability @@ -7205,13 +7205,13 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript { { model_interface; } } -```text +``` **Relationships:** @@ -7251,7 +7251,7 @@ interface UserProfile { bio?: string; preferences: Record; } -```` +``` **Relationships:** @@ -7275,7 +7275,7 @@ Use appropriate format for the chosen API style. If no API (e.g., static site), ^^CONDITION: has_rest_api^^ -````yml +```yml openapi: 3.0.0 info: title: @@ -7289,7 +7289,7 @@ servers: '[object Object]': null description: '[object Object]': null -```text +``` ^^/CONDITION: has_rest_api^^ @@ -7298,7 +7298,7 @@ servers: ```graphql # GraphQL Schema {{graphql_schema}} -```` +``` ^^/CONDITION: has_graphql_api^^ @@ -9450,16 +9450,11 @@ workflow: - modernization - integration-enhancement - # For Complex Enhancements (Multiple Stories, Architectural Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: project_analysis - agent: analyst - action: analyze existing project + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing documentation, codebase structure, and identify integration points. Document current system understanding before proceeding." - agent: pm @@ -9488,71 +9483,37 @@ workflow: action: move_to_ide 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" - # For Simple Enhancements (1-3 Stories, Following Existing Patterns) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (very small change) or epic (1-3 related stories)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused enhancement with existing system integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Brownfield Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing project] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: Brownfield Enhancement] --> B[analyst: analyze existing project] + B --> C[pm: brownfield-prd.md] + C --> D[architect: brownfield-architecture.md] + D --> E[po: validate with po-master-checklist] + E --> F{PO finds issues?} + F -->|Yes| G[Return to relevant agent for fixes] + F -->|No| H[Move to IDE Environment] + G --> E - C --> E[pm: brownfield-prd.md] - E --> F[architect: brownfield-architecture.md] - F --> G[po: validate with po-master-checklist] - G --> H{PO finds issues?} - H -->|Yes| I[Return to relevant agent for fixes] - H -->|No| J[Move to IDE Environment] - I --> G - - D -->|1 Story| K[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic] - K --> M[Move to IDE Environment] - L --> M - - style J fill:#90EE90 - style M fill:#90EE90 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style K fill:#FFB6C1 - style L fill:#FFB6C1 + style H fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: - - Enhancement requires multiple coordinated stories (4+) + when_to_use: + - Enhancement requires coordinated stories - Architectural changes are needed - Significant integration work required - Risk assessment and mitigation planning necessary - Multiple team members will work on related changes - use_simple_sequence_when: - - Enhancement can be completed in 1-3 stories - - Follows existing project patterns - - Integration complexity is minimal - - Risk to existing system is low - - Change is isolated with clear boundaries - handoff_prompts: analyst_to_pm: "Existing project analysis complete. Create comprehensive brownfield PRD with integration strategy." pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the integration architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "Enhancement defined with existing system integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#brownfield-fullstack ==================== ==================== START: workflows#brownfield-service ==================== @@ -9570,16 +9531,11 @@ workflow: - performance-optimization - integration-enhancement - # For Complex Service Enhancements (Multiple Stories, Architectural Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple service change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: service_analysis - agent: analyst - action: analyze existing service + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing service documentation, codebase, performance metrics, and identify integration dependencies." - agent: pm @@ -9608,71 +9564,37 @@ workflow: action: move_to_ide 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" - # For Simple Service Enhancements (1-3 Stories, Following Existing Patterns) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (simple API endpoint) or epic (1-3 related service changes)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused service enhancement with existing API integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Service Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing service] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: Service Enhancement] --> B[analyst: analyze existing service] + B --> C[pm: brownfield-prd.md] + C --> D[architect: brownfield-architecture.md] + D --> E[po: validate with po-master-checklist] + E --> F{PO finds issues?} + F -->|Yes| G[Return to relevant agent for fixes] + F -->|No| H[Move to IDE Environment] + G --> E - C --> E[pm: brownfield-prd.md] - E --> F[architect: brownfield-architecture.md] - F --> G[po: validate with po-master-checklist] - G --> H{PO finds issues?} - H -->|Yes| I[Return to relevant agent for fixes] - H -->|No| J[Move to IDE Environment] - I --> G - - D -->|1 Story| K[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic] - K --> M[Move to IDE Environment] - L --> M - - style J fill:#90EE90 - style M fill:#90EE90 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style K fill:#FFB6C1 - style L fill:#FFB6C1 + style H fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: - - Service enhancement requires multiple coordinated stories (4+) + when_to_use: + - Service enhancement requires coordinated stories - API versioning or breaking changes needed - Database schema changes required - Performance or scalability improvements needed - Multiple integration points affected - use_simple_sequence_when: - - Adding simple endpoints or modifying existing ones - - Enhancement follows existing service patterns - - API compatibility maintained - - Risk to existing service is low - - Change is isolated with clear boundaries - handoff_prompts: analyst_to_pm: "Service analysis complete. Create comprehensive brownfield PRD with service integration strategy." pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the service architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for service integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "Service enhancement defined with existing API integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#brownfield-service ==================== ==================== START: workflows#brownfield-ui ==================== @@ -9689,16 +9611,11 @@ workflow: - design-refresh - frontend-enhancement - # For Complex UI Enhancements (Multiple Stories, Design Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple UI change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: ui_analysis - agent: analyst - action: analyze existing UI + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing frontend application, user feedback, analytics data, and identify improvement areas." - agent: pm @@ -9735,74 +9652,40 @@ workflow: action: move_to_ide 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" - # For Simple UI Enhancements (1-3 Stories, Following Existing Design) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (simple component change) or epic (1-3 related UI changes)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused UI enhancement with existing design system integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: UI Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing UI] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: UI Enhancement] --> B[analyst: analyze existing UI] + B --> C[pm: brownfield-prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> E[architect: brownfield-architecture.md] + E --> F[po: validate with po-master-checklist] + F --> G{PO finds issues?} + G -->|Yes| H[Return to relevant agent for fixes] + G -->|No| I[Move to IDE Environment] + H --> F - C --> E[pm: brownfield-prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> G[architect: brownfield-architecture.md] - G --> H[po: validate with po-master-checklist] - H --> I{PO finds issues?} - I -->|Yes| J[Return to relevant agent for fixes] - I -->|No| K[Move to IDE Environment] - J --> H - - D -->|1 Story| L[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| M[pm/po/sm: brownfield-create-epic] - L --> N[Move to IDE Environment] - M --> N - - style K fill:#90EE90 - style N fill:#90EE90 + style I fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style L fill:#FFB6C1 - style M fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: - - UI enhancement requires multiple coordinated stories (4+) + when_to_use: + - UI enhancement requires coordinated stories - Design system changes needed - New component patterns required - User research and testing needed - Multiple team members will work on related changes - use_simple_sequence_when: - - Enhancement can be completed in 1-3 stories - - Follows existing design patterns exactly - - Component changes are isolated - - Risk to existing UI is low - - Change maintains current user experience - handoff_prompts: analyst_to_pm: "UI analysis complete. Create comprehensive brownfield PRD with UI integration strategy." pm_to_ux: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the UI/UX specification." ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md, then create the frontend architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for UI integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "UI enhancement defined with existing design integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#brownfield-ui ==================== ==================== START: workflows#greenfield-fullstack ==================== @@ -9820,8 +9703,7 @@ workflow: - prototype - mvp - # For Complex Projects (Production-Ready, Multiple Features) - complex_project_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -9886,91 +9768,50 @@ workflow: action: move_to_ide 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" - # For Simple Projects (Prototypes, MVPs, Quick Experiments) - simple_project_sequence: - - step: project_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_project_sequence) or can be a simple prototype/MVP." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple project. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: pm - creates: simple-project-prd.md - uses: create doc simple-project-prd OR create-epic OR create-story - requires: project-brief.md - notes: "Create simple prd, simple epic or story instead of full PRD for rapid development. Choose based on scope." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Greenfield Project] --> B{Project Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: Greenfield Project] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> D2{Generate v0 prompt?} + D2 -->|Yes| D3[ux-expert: create v0 prompt] + D2 -->|No| E[architect: fullstack-architecture.md] + D3 --> D4[User: generate UI in v0/Lovable] + D4 --> E + E --> F{Architecture suggests PRD changes?} + F -->|Yes| G[pm: update prd.md] + F -->|No| H[po: validate all artifacts] + G --> H + H --> I{PO finds issues?} + I -->|Yes| J[Return to relevant agent for fixes] + I -->|No| K[Move to IDE Environment] + J --> H - C --> E[pm: prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> F2{Generate v0 prompt?} - F2 -->|Yes| F3[ux-expert: create v0 prompt] - F2 -->|No| G[architect: fullstack-architecture.md] - F3 --> F4[User: generate UI in v0/Lovable] - F4 --> G - G --> H{Architecture suggests PRD changes?} - H -->|Yes| I[pm: update prd.md] - H -->|No| J[po: validate all artifacts] - I --> J - J --> K{PO finds issues?} - K -->|Yes| L[Return to relevant agent for fixes] - K -->|No| M[Move to IDE Environment] - L --> J + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: user research] + E -.-> E1[Optional: technical research] - D --> N[pm: simple epic or story] - N --> O[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: user research] - G -.-> G1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style M fill:#90EE90 - style O fill:#90EE90 - style F3 fill:#E6E6FA - style F4 fill:#E6E6FA + style K fill:#90EE90 + style D3 fill:#E6E6FA + style D4 fill:#E6E6FA + style B fill:#FFE4B5 style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style D fill:#FFB6C1 - style N fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production-ready applications - Multiple team members will be involved - - Complex feature requirements (4+ stories) + - Complex feature requirements - Need comprehensive documentation - Long-term maintenance expected - Enterprise or customer-facing applications - use_simple_sequence_when: - - Building prototypes or MVPs - - Solo developer or small team - - Simple requirements (1-3 stories) - - Quick experiments or proof-of-concepts - - Short-term or throwaway projects - - Learning or educational projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_ux: "PRD is ready. Save it as docs/prd.md in your project, then create the UI/UX specification." ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md in your project, then create the fullstack architecture." @@ -9978,11 +9819,7 @@ workflow: architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for rapid development." - simple_complete: "Simple project defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#greenfield-fullstack ==================== ==================== START: workflows#greenfield-service ==================== @@ -10001,8 +9838,7 @@ workflow: - api-prototype - simple-service - # For Complex Services (Production APIs, Multiple Endpoints) - complex_service_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -10042,65 +9878,33 @@ workflow: action: move_to_ide 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" - # For Simple Services (Simple APIs, Single Purpose Services) - simple_service_sequence: - - step: service_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_service_sequence) or can be a simple API/service." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple service. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: pm - creates: simple_epic OR single_story - uses: create-epic OR create-story - requires: project-brief.md - notes: "Create simple epic or story for API endpoints instead of full PRD for rapid development." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Service Development] --> B{Service Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: Service Development] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[architect: architecture.md] + D --> E{Architecture suggests PRD changes?} + E -->|Yes| F[pm: update prd.md] + E -->|No| G[po: validate all artifacts] + F --> G + G --> H{PO finds issues?} + H -->|Yes| I[Return to relevant agent for fixes] + H -->|No| J[Move to IDE Environment] + I --> G - C --> E[pm: prd.md] - E --> F[architect: architecture.md] - F --> G{Architecture suggests PRD changes?} - G -->|Yes| H[pm: update prd.md] - G -->|No| I[po: validate all artifacts] - H --> I - I --> J{PO finds issues?} - J -->|Yes| K[Return to relevant agent for fixes] - J -->|No| L[Move to IDE Environment] - K --> I + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: technical research] - D --> M[pm: simple epic or story] - M --> N[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style L fill:#90EE90 - style N fill:#90EE90 + style J fill:#90EE90 + style B fill:#FFE4B5 style C fill:#FFE4B5 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style D fill:#FFB6C1 - style M fill:#FFB6C1 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production APIs or microservices - Multiple endpoints and complex business logic - Need comprehensive documentation and testing @@ -10108,27 +9912,14 @@ workflow: - Long-term maintenance expected - Enterprise or external-facing APIs - use_simple_sequence_when: - - Building simple APIs or single-purpose services - - Few endpoints with straightforward logic - - Prototyping or proof-of-concept APIs - - Solo developer or small team - - Internal tools or utilities - - Learning or experimental projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_architect: "PRD is ready. Save it as docs/prd.md in your project, then create the service architecture." architect_review: "Architecture complete. Save it as docs/architecture.md. Do you suggest any changes to the PRD stories or need new stories added?" architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for API development." - simple_complete: "Simple service defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#greenfield-service ==================== ==================== START: workflows#greenfield-ui ==================== @@ -10147,8 +9938,7 @@ workflow: - ui-prototype - simple-interface - # For Complex UIs (Production Apps, Multiple Views) - complex_ui_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -10207,74 +9997,42 @@ workflow: action: move_to_ide 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" - # For Simple UIs (Simple Interfaces, Few Components) - simple_ui_sequence: - - step: ui_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_ui_sequence) or can be a simple interface." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple UI. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: ux-expert - creates: simple_wireframes OR quick_spec - uses: create-epic OR create-story - requires: project-brief.md - notes: "Create simple wireframes and component list instead of full UI/UX spec for rapid development." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: UI Development] --> B{UI Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: UI Development] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> D2{Generate v0 prompt?} + D2 -->|Yes| D3[ux-expert: create v0 prompt] + D2 -->|No| E[architect: front-end-architecture.md] + D3 --> D4[User: generate UI in v0/Lovable] + D4 --> E + E --> F{Architecture suggests PRD changes?} + F -->|Yes| G[pm: update prd.md] + F -->|No| H[po: validate all artifacts] + G --> H + H --> I{PO finds issues?} + I -->|Yes| J[Return to relevant agent for fixes] + I -->|No| K[Move to IDE Environment] + J --> H - C --> E[pm: prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> F2{Generate v0 prompt?} - F2 -->|Yes| F3[ux-expert: create v0 prompt] - F2 -->|No| G[architect: front-end-architecture.md] - F3 --> F4[User: generate UI in v0/Lovable] - F4 --> G - G --> H{Architecture suggests PRD changes?} - H -->|Yes| I[pm: update prd.md] - H -->|No| J[po: validate all artifacts] - I --> J - J --> K{PO finds issues?} - K -->|Yes| L[Return to relevant agent for fixes] - K -->|No| M[Move to IDE Environment] - L --> J + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: user research] + E -.-> E1[Optional: technical research] - D --> N[ux-expert: simple wireframes] - N --> O[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: user research] - G -.-> G1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style M fill:#90EE90 - style O fill:#90EE90 - style F3 fill:#E6E6FA - style F4 fill:#E6E6FA + style K fill:#90EE90 + style D3 fill:#E6E6FA + style D4 fill:#E6E6FA + style B fill:#FFE4B5 style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style D fill:#FFB6C1 - style N fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production frontend applications - Multiple views/pages with complex interactions - Need comprehensive UI/UX design and testing @@ -10282,16 +10040,7 @@ workflow: - Long-term maintenance expected - Customer-facing applications - use_simple_sequence_when: - - Building simple interfaces or prototypes - - Few views with straightforward interactions - - Internal tools or admin interfaces - - Solo developer or small team - - Quick experiments or proof-of-concepts - - Learning or educational projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_ux: "PRD is ready. Save it as docs/prd.md in your project, then create the UI/UX specification." ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md in your project, then create the frontend architecture." @@ -10299,9 +10048,5 @@ workflow: architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_ux: "Focused project brief complete. Save it as docs/project-brief.md, then create simple wireframes for rapid development." - simple_complete: "Simple UI defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#greenfield-ui ==================== diff --git a/dist/teams/team-fullstack.txt b/dist/teams/team-fullstack.txt index b58bac41..ffd487fd 100644 --- a/dist/teams/team-fullstack.txt +++ b/dist/teams/team-fullstack.txt @@ -3564,13 +3564,13 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript { { model_interface; } } -```text +``` **Relationships:** @@ -3610,7 +3610,7 @@ interface UserProfile { bio?: string; preferences: Record; } -```` +``` **Relationships:** @@ -3634,7 +3634,7 @@ Use appropriate format for the chosen API style. If no API (e.g., static site), ^^CONDITION: has_rest_api^^ -````yml +```yml openapi: 3.0.0 info: title: @@ -3648,7 +3648,7 @@ servers: '[object Object]': null description: '[object Object]': null -```text +``` ^^/CONDITION: has_rest_api^^ @@ -3657,7 +3657,7 @@ servers: ```graphql # GraphQL Schema {{graphql_schema}} -```` +``` ^^/CONDITION: has_graphql_api^^ @@ -6382,9 +6382,9 @@ Document the choice and key services that will be used.]] Use appropriate diagram type for clarity.]] -````mermaid +```mermaid {{architecture_diagram}} -```text +``` ### Architectural Patterns @@ -6495,7 +6495,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] model_interface; } } -```` +``` **Relationships:** @@ -6519,7 +6519,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript interface User { id: string; email: string; @@ -6573,16 +6573,16 @@ servers: '[object Object]': null description: '[object Object]': null -```` +``` ^^/CONDITION: has_rest_api^^ ^^CONDITION: has_graphql_api^^ -````graphql +```graphql # GraphQL Schema {{graphql_schema}} -```text +``` ^^/CONDITION: has_graphql_api^^ @@ -6595,7 +6595,7 @@ servers: trpc_routers; } } -```` +``` ^^/CONDITION: has_trpc_api^^ @@ -6740,19 +6740,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Component Organization:** -`````text -{{component_structure}} ```text +{{component_structure}} +``` **Component Template:** -````typescript +```typescript { { component_template; } } -```text +``` ### State Management Architecture @@ -6766,7 +6766,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] state_structure; } } -````` +``` **State Management Patterns:** @@ -6785,13 +6785,13 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Protected Route Pattern:** -````typescript +```typescript { { protected_route_example; } } -```text +``` ### Frontend Services Layer @@ -6805,17 +6805,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] api_client_setup; } } -```` +``` **Service Example:** -````typescript +```typescript { { service_example; } } -```text +``` ## Backend Architecture @@ -6830,11 +6830,11 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ^^CONDITION: serverless^^ **Function Organization:** -```` +```text {{function_structure}} -````text +``` **Function Template:** @@ -6844,26 +6844,26 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] function_template; } } -```` +``` ^^/CONDITION: serverless^^ ^^CONDITION: traditional_server^^ **Controller/Route Organization:** -`````text -{{controller_structure}} ```text +{{controller_structure}} +``` **Controller Template:** -````typescript +```typescript { { controller_template; } } -```text +``` ^^/CONDITION: traditional_server^^ @@ -6875,17 +6875,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```sql {{database_schema}} -````` +``` **Data Access Layer:** -````typescript +```typescript { { repository_pattern; } } -```text +``` ### Authentication and Authorization @@ -6895,17 +6895,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```mermaid {{auth_flow_diagram}} -```` +``` **Middleware/Guards:** -````typescript +```typescript { { auth_middleware; } } -```text +``` ## Unified Project Structure @@ -6965,7 +6965,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ├── package.json # Root package.json ├── {{monorepo_config}} # Monorepo configuration └── README.md -```` +``` @{example: vercel_structure} apps/ @@ -6987,19 +6987,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Prerequisites:** -````bash +```bash {{prerequisites_commands}} -```text +``` **Initial Setup:** ```bash {{setup_commands}} -```` +``` **Development Commands:** -````bash +```bash # Start all services {{start_all_command}} @@ -7011,7 +7011,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Run tests {{test_commands}} -```text +``` ### Environment Configuration @@ -7026,7 +7026,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Shared {{shared_env_vars}} -```` +``` ## Deployment Architecture @@ -7049,9 +7049,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### CI/CD Pipeline -````yaml +```yaml '[object Object]': null -```text +``` ### Environments @@ -7109,7 +7109,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Testing Pyramid -```` +```text E2E Tests / \ @@ -7118,17 +7118,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] / \ Frontend Unit Backend Unit -```text +``` ### Test Organization **Frontend Tests:** -``` +```text {{frontend_test_structure}} -````text +``` **Backend Tests:** @@ -7136,15 +7136,15 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] {{backend_test_structure}} -```text +``` **E2E Tests:** -```` +```text {{e2e_test_structure}} -````text +``` ### Test Examples @@ -7156,17 +7156,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] frontend_test_example; } } -```` +``` **Backend API Test:** -````typescript +```typescript { { backend_test_example; } } -```text +``` **E2E Test:** @@ -7176,7 +7176,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] e2e_test_example; } } -```` +``` ## Coding Standards @@ -7217,9 +7217,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Error Flow -````mermaid +```mermaid {{error_flow_diagram}} -```text +``` ### Error Response Format @@ -7233,17 +7233,17 @@ interface ApiError { requestId: string; }; } -```` +``` ### Frontend Error Handling -````typescript +```typescript { { frontend_error_handler; } } -```text +``` ### Backend Error Handling @@ -7253,7 +7253,7 @@ interface ApiError { backend_error_handler; } } -```` +``` ## Monitoring and Observability @@ -8802,16 +8802,11 @@ workflow: - modernization - integration-enhancement - # For Complex Enhancements (Multiple Stories, Architectural Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: project_analysis - agent: analyst - action: analyze existing project + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing documentation, codebase structure, and identify integration points. Document current system understanding before proceeding." - agent: pm @@ -8840,71 +8835,37 @@ workflow: action: move_to_ide 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" - # For Simple Enhancements (1-3 Stories, Following Existing Patterns) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (very small change) or epic (1-3 related stories)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused enhancement with existing system integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Brownfield Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing project] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: Brownfield Enhancement] --> B[analyst: analyze existing project] + B --> C[pm: brownfield-prd.md] + C --> D[architect: brownfield-architecture.md] + D --> E[po: validate with po-master-checklist] + E --> F{PO finds issues?} + F -->|Yes| G[Return to relevant agent for fixes] + F -->|No| H[Move to IDE Environment] + G --> E - C --> E[pm: brownfield-prd.md] - E --> F[architect: brownfield-architecture.md] - F --> G[po: validate with po-master-checklist] - G --> H{PO finds issues?} - H -->|Yes| I[Return to relevant agent for fixes] - H -->|No| J[Move to IDE Environment] - I --> G - - D -->|1 Story| K[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic] - K --> M[Move to IDE Environment] - L --> M - - style J fill:#90EE90 - style M fill:#90EE90 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style K fill:#FFB6C1 - style L fill:#FFB6C1 + style H fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: - - Enhancement requires multiple coordinated stories (4+) + when_to_use: + - Enhancement requires coordinated stories - Architectural changes are needed - Significant integration work required - Risk assessment and mitigation planning necessary - Multiple team members will work on related changes - use_simple_sequence_when: - - Enhancement can be completed in 1-3 stories - - Follows existing project patterns - - Integration complexity is minimal - - Risk to existing system is low - - Change is isolated with clear boundaries - handoff_prompts: analyst_to_pm: "Existing project analysis complete. Create comprehensive brownfield PRD with integration strategy." pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the integration architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "Enhancement defined with existing system integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#brownfield-fullstack ==================== ==================== START: workflows#brownfield-service ==================== @@ -8922,16 +8883,11 @@ workflow: - performance-optimization - integration-enhancement - # For Complex Service Enhancements (Multiple Stories, Architectural Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple service change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: service_analysis - agent: analyst - action: analyze existing service + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing service documentation, codebase, performance metrics, and identify integration dependencies." - agent: pm @@ -8960,71 +8916,37 @@ workflow: action: move_to_ide 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" - # For Simple Service Enhancements (1-3 Stories, Following Existing Patterns) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (simple API endpoint) or epic (1-3 related service changes)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused service enhancement with existing API integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Service Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing service] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: Service Enhancement] --> B[analyst: analyze existing service] + B --> C[pm: brownfield-prd.md] + C --> D[architect: brownfield-architecture.md] + D --> E[po: validate with po-master-checklist] + E --> F{PO finds issues?} + F -->|Yes| G[Return to relevant agent for fixes] + F -->|No| H[Move to IDE Environment] + G --> E - C --> E[pm: brownfield-prd.md] - E --> F[architect: brownfield-architecture.md] - F --> G[po: validate with po-master-checklist] - G --> H{PO finds issues?} - H -->|Yes| I[Return to relevant agent for fixes] - H -->|No| J[Move to IDE Environment] - I --> G - - D -->|1 Story| K[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic] - K --> M[Move to IDE Environment] - L --> M - - style J fill:#90EE90 - style M fill:#90EE90 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style K fill:#FFB6C1 - style L fill:#FFB6C1 + style H fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: - - Service enhancement requires multiple coordinated stories (4+) + when_to_use: + - Service enhancement requires coordinated stories - API versioning or breaking changes needed - Database schema changes required - Performance or scalability improvements needed - Multiple integration points affected - use_simple_sequence_when: - - Adding simple endpoints or modifying existing ones - - Enhancement follows existing service patterns - - API compatibility maintained - - Risk to existing service is low - - Change is isolated with clear boundaries - handoff_prompts: analyst_to_pm: "Service analysis complete. Create comprehensive brownfield PRD with service integration strategy." pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the service architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for service integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "Service enhancement defined with existing API integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#brownfield-service ==================== ==================== START: workflows#brownfield-ui ==================== @@ -9041,16 +8963,11 @@ workflow: - design-refresh - frontend-enhancement - # For Complex UI Enhancements (Multiple Stories, Design Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple UI change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: ui_analysis - agent: analyst - action: analyze existing UI + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing frontend application, user feedback, analytics data, and identify improvement areas." - agent: pm @@ -9087,74 +9004,40 @@ workflow: action: move_to_ide 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" - # For Simple UI Enhancements (1-3 Stories, Following Existing Design) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (simple component change) or epic (1-3 related UI changes)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused UI enhancement with existing design system integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: UI Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing UI] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: UI Enhancement] --> B[analyst: analyze existing UI] + B --> C[pm: brownfield-prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> E[architect: brownfield-architecture.md] + E --> F[po: validate with po-master-checklist] + F --> G{PO finds issues?} + G -->|Yes| H[Return to relevant agent for fixes] + G -->|No| I[Move to IDE Environment] + H --> F - C --> E[pm: brownfield-prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> G[architect: brownfield-architecture.md] - G --> H[po: validate with po-master-checklist] - H --> I{PO finds issues?} - I -->|Yes| J[Return to relevant agent for fixes] - I -->|No| K[Move to IDE Environment] - J --> H - - D -->|1 Story| L[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| M[pm/po/sm: brownfield-create-epic] - L --> N[Move to IDE Environment] - M --> N - - style K fill:#90EE90 - style N fill:#90EE90 + style I fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style L fill:#FFB6C1 - style M fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: - - UI enhancement requires multiple coordinated stories (4+) + when_to_use: + - UI enhancement requires coordinated stories - Design system changes needed - New component patterns required - User research and testing needed - Multiple team members will work on related changes - use_simple_sequence_when: - - Enhancement can be completed in 1-3 stories - - Follows existing design patterns exactly - - Component changes are isolated - - Risk to existing UI is low - - Change maintains current user experience - handoff_prompts: analyst_to_pm: "UI analysis complete. Create comprehensive brownfield PRD with UI integration strategy." pm_to_ux: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the UI/UX specification." ux_to_architect: "UI/UX spec complete. Save it as docs/front-end-spec.md, then create the frontend architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for UI integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "UI enhancement defined with existing design integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#brownfield-ui ==================== ==================== START: workflows#greenfield-fullstack ==================== @@ -9172,8 +9055,7 @@ workflow: - prototype - mvp - # For Complex Projects (Production-Ready, Multiple Features) - complex_project_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -9238,91 +9120,50 @@ workflow: action: move_to_ide 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" - # For Simple Projects (Prototypes, MVPs, Quick Experiments) - simple_project_sequence: - - step: project_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_project_sequence) or can be a simple prototype/MVP." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple project. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: pm - creates: simple-project-prd.md - uses: create doc simple-project-prd OR create-epic OR create-story - requires: project-brief.md - notes: "Create simple prd, simple epic or story instead of full PRD for rapid development. Choose based on scope." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Greenfield Project] --> B{Project Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: Greenfield Project] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> D2{Generate v0 prompt?} + D2 -->|Yes| D3[ux-expert: create v0 prompt] + D2 -->|No| E[architect: fullstack-architecture.md] + D3 --> D4[User: generate UI in v0/Lovable] + D4 --> E + E --> F{Architecture suggests PRD changes?} + F -->|Yes| G[pm: update prd.md] + F -->|No| H[po: validate all artifacts] + G --> H + H --> I{PO finds issues?} + I -->|Yes| J[Return to relevant agent for fixes] + I -->|No| K[Move to IDE Environment] + J --> H - C --> E[pm: prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> F2{Generate v0 prompt?} - F2 -->|Yes| F3[ux-expert: create v0 prompt] - F2 -->|No| G[architect: fullstack-architecture.md] - F3 --> F4[User: generate UI in v0/Lovable] - F4 --> G - G --> H{Architecture suggests PRD changes?} - H -->|Yes| I[pm: update prd.md] - H -->|No| J[po: validate all artifacts] - I --> J - J --> K{PO finds issues?} - K -->|Yes| L[Return to relevant agent for fixes] - K -->|No| M[Move to IDE Environment] - L --> J + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: user research] + E -.-> E1[Optional: technical research] - D --> N[pm: simple epic or story] - N --> O[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: user research] - G -.-> G1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style M fill:#90EE90 - style O fill:#90EE90 - style F3 fill:#E6E6FA - style F4 fill:#E6E6FA + style K fill:#90EE90 + style D3 fill:#E6E6FA + style D4 fill:#E6E6FA + style B fill:#FFE4B5 style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style D fill:#FFB6C1 - style N fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production-ready applications - Multiple team members will be involved - - Complex feature requirements (4+ stories) + - Complex feature requirements - Need comprehensive documentation - Long-term maintenance expected - Enterprise or customer-facing applications - use_simple_sequence_when: - - Building prototypes or MVPs - - Solo developer or small team - - Simple requirements (1-3 stories) - - Quick experiments or proof-of-concepts - - Short-term or throwaway projects - - Learning or educational projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_ux: "PRD is ready. Save it as docs/prd.md in your project, then create the UI/UX specification." 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 +9171,7 @@ workflow: architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for rapid development." - simple_complete: "Simple project defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#greenfield-fullstack ==================== ==================== START: workflows#greenfield-service ==================== @@ -9353,8 +9190,7 @@ workflow: - api-prototype - simple-service - # For Complex Services (Production APIs, Multiple Endpoints) - complex_service_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -9394,65 +9230,33 @@ workflow: action: move_to_ide 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" - # For Simple Services (Simple APIs, Single Purpose Services) - simple_service_sequence: - - step: service_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_service_sequence) or can be a simple API/service." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple service. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: pm - creates: simple_epic OR single_story - uses: create-epic OR create-story - requires: project-brief.md - notes: "Create simple epic or story for API endpoints instead of full PRD for rapid development." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Service Development] --> B{Service Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: Service Development] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[architect: architecture.md] + D --> E{Architecture suggests PRD changes?} + E -->|Yes| F[pm: update prd.md] + E -->|No| G[po: validate all artifacts] + F --> G + G --> H{PO finds issues?} + H -->|Yes| I[Return to relevant agent for fixes] + H -->|No| J[Move to IDE Environment] + I --> G - C --> E[pm: prd.md] - E --> F[architect: architecture.md] - F --> G{Architecture suggests PRD changes?} - G -->|Yes| H[pm: update prd.md] - G -->|No| I[po: validate all artifacts] - H --> I - I --> J{PO finds issues?} - J -->|Yes| K[Return to relevant agent for fixes] - J -->|No| L[Move to IDE Environment] - K --> I + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: technical research] - D --> M[pm: simple epic or story] - M --> N[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style L fill:#90EE90 - style N fill:#90EE90 + style J fill:#90EE90 + style B fill:#FFE4B5 style C fill:#FFE4B5 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style D fill:#FFB6C1 - style M fill:#FFB6C1 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production APIs or microservices - Multiple endpoints and complex business logic - Need comprehensive documentation and testing @@ -9460,27 +9264,14 @@ workflow: - Long-term maintenance expected - Enterprise or external-facing APIs - use_simple_sequence_when: - - Building simple APIs or single-purpose services - - Few endpoints with straightforward logic - - Prototyping or proof-of-concept APIs - - Solo developer or small team - - Internal tools or utilities - - Learning or experimental projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_architect: "PRD is ready. Save it as docs/prd.md in your project, then create the service architecture." architect_review: "Architecture complete. Save it as docs/architecture.md. Do you suggest any changes to the PRD stories or need new stories added?" architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for API development." - simple_complete: "Simple service defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#greenfield-service ==================== ==================== START: workflows#greenfield-ui ==================== @@ -9499,8 +9290,7 @@ workflow: - ui-prototype - simple-interface - # For Complex UIs (Production Apps, Multiple Views) - complex_ui_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -9559,74 +9349,42 @@ workflow: action: move_to_ide 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" - # For Simple UIs (Simple Interfaces, Few Components) - simple_ui_sequence: - - step: ui_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_ui_sequence) or can be a simple interface." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple UI. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: ux-expert - creates: simple_wireframes OR quick_spec - uses: create-epic OR create-story - requires: project-brief.md - notes: "Create simple wireframes and component list instead of full UI/UX spec for rapid development." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: UI Development] --> B{UI Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: UI Development] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[ux-expert: front-end-spec.md] + D --> D2{Generate v0 prompt?} + D2 -->|Yes| D3[ux-expert: create v0 prompt] + D2 -->|No| E[architect: front-end-architecture.md] + D3 --> D4[User: generate UI in v0/Lovable] + D4 --> E + E --> F{Architecture suggests PRD changes?} + F -->|Yes| G[pm: update prd.md] + F -->|No| H[po: validate all artifacts] + G --> H + H --> I{PO finds issues?} + I -->|Yes| J[Return to relevant agent for fixes] + I -->|No| K[Move to IDE Environment] + J --> H - C --> E[pm: prd.md] - E --> F[ux-expert: front-end-spec.md] - F --> F2{Generate v0 prompt?} - F2 -->|Yes| F3[ux-expert: create v0 prompt] - F2 -->|No| G[architect: front-end-architecture.md] - F3 --> F4[User: generate UI in v0/Lovable] - F4 --> G - G --> H{Architecture suggests PRD changes?} - H -->|Yes| I[pm: update prd.md] - H -->|No| J[po: validate all artifacts] - I --> J - J --> K{PO finds issues?} - K -->|Yes| L[Return to relevant agent for fixes] - K -->|No| M[Move to IDE Environment] - L --> J + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: user research] + E -.-> E1[Optional: technical research] - D --> N[ux-expert: simple wireframes] - N --> O[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: user research] - G -.-> G1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style M fill:#90EE90 - style O fill:#90EE90 - style F3 fill:#E6E6FA - style F4 fill:#E6E6FA + style K fill:#90EE90 + style D3 fill:#E6E6FA + style D4 fill:#E6E6FA + style B fill:#FFE4B5 style C fill:#FFE4B5 + style D fill:#FFE4B5 style E fill:#FFE4B5 - style F fill:#FFE4B5 - style G fill:#FFE4B5 - style D fill:#FFB6C1 - style N fill:#FFB6C1 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production frontend applications - Multiple views/pages with complex interactions - Need comprehensive UI/UX design and testing @@ -9634,16 +9392,7 @@ workflow: - Long-term maintenance expected - Customer-facing applications - use_simple_sequence_when: - - Building simple interfaces or prototypes - - Few views with straightforward interactions - - Internal tools or admin interfaces - - Solo developer or small team - - Quick experiments or proof-of-concepts - - Learning or educational projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_ux: "PRD is ready. Save it as docs/prd.md in your project, then create the UI/UX specification." 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 +9400,5 @@ workflow: architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_ux: "Focused project brief complete. Save it as docs/project-brief.md, then create simple wireframes for rapid development." - simple_complete: "Simple UI defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#greenfield-ui ==================== diff --git a/dist/teams/team-no-ui.txt b/dist/teams/team-no-ui.txt index 2b950f4e..4217d1c5 100644 --- a/dist/teams/team-no-ui.txt +++ b/dist/teams/team-no-ui.txt @@ -3496,13 +3496,13 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript { { model_interface; } } -```text +``` **Relationships:** @@ -3542,7 +3542,7 @@ interface UserProfile { bio?: string; preferences: Record; } -```` +``` **Relationships:** @@ -3566,7 +3566,7 @@ Use appropriate format for the chosen API style. If no API (e.g., static site), ^^CONDITION: has_rest_api^^ -````yml +```yml openapi: 3.0.0 info: title: @@ -3580,7 +3580,7 @@ servers: '[object Object]': null description: '[object Object]': null -```text +``` ^^/CONDITION: has_rest_api^^ @@ -3589,7 +3589,7 @@ servers: ```graphql # GraphQL Schema {{graphql_schema}} -```` +``` ^^/CONDITION: has_graphql_api^^ @@ -5846,9 +5846,9 @@ Document the choice and key services that will be used.]] Use appropriate diagram type for clarity.]] -````mermaid +```mermaid {{architecture_diagram}} -```text +``` ### Architectural Patterns @@ -5959,7 +5959,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] model_interface; } } -```` +``` **Relationships:** @@ -5983,7 +5983,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]] **TypeScript Interface:** -````typescript +```typescript interface User { id: string; email: string; @@ -6037,16 +6037,16 @@ servers: '[object Object]': null description: '[object Object]': null -```` +``` ^^/CONDITION: has_rest_api^^ ^^CONDITION: has_graphql_api^^ -````graphql +```graphql # GraphQL Schema {{graphql_schema}} -```text +``` ^^/CONDITION: has_graphql_api^^ @@ -6059,7 +6059,7 @@ servers: trpc_routers; } } -```` +``` ^^/CONDITION: has_trpc_api^^ @@ -6204,19 +6204,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Component Organization:** -`````text -{{component_structure}} ```text +{{component_structure}} +``` **Component Template:** -````typescript +```typescript { { component_template; } } -```text +``` ### State Management Architecture @@ -6230,7 +6230,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] state_structure; } } -````` +``` **State Management Patterns:** @@ -6249,13 +6249,13 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Protected Route Pattern:** -````typescript +```typescript { { protected_route_example; } } -```text +``` ### Frontend Services Layer @@ -6269,17 +6269,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] api_client_setup; } } -```` +``` **Service Example:** -````typescript +```typescript { { service_example; } } -```text +``` ## Backend Architecture @@ -6294,11 +6294,11 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ^^CONDITION: serverless^^ **Function Organization:** -```` +```text {{function_structure}} -````text +``` **Function Template:** @@ -6308,26 +6308,26 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] function_template; } } -```` +``` ^^/CONDITION: serverless^^ ^^CONDITION: traditional_server^^ **Controller/Route Organization:** -`````text -{{controller_structure}} ```text +{{controller_structure}} +``` **Controller Template:** -````typescript +```typescript { { controller_template; } } -```text +``` ^^/CONDITION: traditional_server^^ @@ -6339,17 +6339,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```sql {{database_schema}} -````` +``` **Data Access Layer:** -````typescript +```typescript { { repository_pattern; } } -```text +``` ### Authentication and Authorization @@ -6359,17 +6359,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ```mermaid {{auth_flow_diagram}} -```` +``` **Middleware/Guards:** -````typescript +```typescript { { auth_middleware; } } -```text +``` ## Unified Project Structure @@ -6429,7 +6429,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ├── package.json # Root package.json ├── {{monorepo_config}} # Monorepo configuration └── README.md -```` +``` @{example: vercel_structure} apps/ @@ -6451,19 +6451,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] **Prerequisites:** -````bash +```bash {{prerequisites_commands}} -```text +``` **Initial Setup:** ```bash {{setup_commands}} -```` +``` **Development Commands:** -````bash +```bash # Start all services {{start_all_command}} @@ -6475,7 +6475,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Run tests {{test_commands}} -```text +``` ### Environment Configuration @@ -6490,7 +6490,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] # Shared {{shared_env_vars}} -```` +``` ## Deployment Architecture @@ -6513,9 +6513,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### CI/CD Pipeline -````yaml +```yaml '[object Object]': null -```text +``` ### Environments @@ -6573,7 +6573,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Testing Pyramid -```` +```text E2E Tests / \ @@ -6582,17 +6582,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] / \ Frontend Unit Backend Unit -```text +``` ### Test Organization **Frontend Tests:** -``` +```text {{frontend_test_structure}} -````text +``` **Backend Tests:** @@ -6600,15 +6600,15 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] {{backend_test_structure}} -```text +``` **E2E Tests:** -```` +```text {{e2e_test_structure}} -````text +``` ### Test Examples @@ -6620,17 +6620,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] frontend_test_example; } } -```` +``` **Backend API Test:** -````typescript +```typescript { { backend_test_example; } } -```text +``` **E2E Test:** @@ -6640,7 +6640,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] e2e_test_example; } } -```` +``` ## Coding Standards @@ -6681,9 +6681,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]] ### Error Flow -````mermaid +```mermaid {{error_flow_diagram}} -```text +``` ### Error Response Format @@ -6697,17 +6697,17 @@ interface ApiError { requestId: string; }; } -```` +``` ### Frontend Error Handling -````typescript +```typescript { { frontend_error_handler; } } -```text +``` ### Backend Error Handling @@ -6717,7 +6717,7 @@ interface ApiError { backend_error_handler; } } -```` +``` ## Monitoring and Observability @@ -8268,8 +8268,7 @@ workflow: - api-prototype - simple-service - # For Complex Services (Production APIs, Multiple Endpoints) - complex_service_sequence: + sequence: - agent: analyst creates: project-brief.md optional_steps: @@ -8309,65 +8308,33 @@ workflow: action: move_to_ide 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" - # For Simple Services (Simple APIs, Single Purpose Services) - simple_service_sequence: - - step: service_scope - action: assess complexity - notes: "First, assess if this needs full planning (use complex_service_sequence) or can be a simple API/service." - - - agent: analyst - creates: project-brief.md - optional_steps: - - brainstorming_session - notes: "Creates focused project brief for simple service. SAVE OUTPUT: Copy final project-brief.md to your project's docs/ folder." - - - agent: pm - creates: simple_epic OR single_story - uses: create-epic OR create-story - requires: project-brief.md - notes: "Create simple epic or story for API endpoints instead of full PRD for rapid development." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Service Development] --> B{Service Complexity?} - B -->|Complex/Production| C[analyst: project-brief.md] - B -->|Simple/Prototype| D[analyst: focused project-brief.md] + A[Start: Service Development] --> B[analyst: project-brief.md] + B --> C[pm: prd.md] + C --> D[architect: architecture.md] + D --> E{Architecture suggests PRD changes?} + E -->|Yes| F[pm: update prd.md] + E -->|No| G[po: validate all artifacts] + F --> G + G --> H{PO finds issues?} + H -->|Yes| I[Return to relevant agent for fixes] + H -->|No| J[Move to IDE Environment] + I --> G - C --> E[pm: prd.md] - E --> F[architect: architecture.md] - F --> G{Architecture suggests PRD changes?} - G -->|Yes| H[pm: update prd.md] - G -->|No| I[po: validate all artifacts] - H --> I - I --> J{PO finds issues?} - J -->|Yes| K[Return to relevant agent for fixes] - J -->|No| L[Move to IDE Environment] - K --> I + B -.-> B1[Optional: brainstorming] + B -.-> B2[Optional: market research] + D -.-> D1[Optional: technical research] - D --> M[pm: simple epic or story] - M --> N[Move to IDE Environment] - - C -.-> C1[Optional: brainstorming] - C -.-> C2[Optional: market research] - F -.-> F1[Optional: technical research] - D -.-> D1[Optional: brainstorming] - - style L fill:#90EE90 - style N fill:#90EE90 + style J fill:#90EE90 + style B fill:#FFE4B5 style C fill:#FFE4B5 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style D fill:#FFB6C1 - style M fill:#FFB6C1 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: + when_to_use: - Building production APIs or microservices - Multiple endpoints and complex business logic - Need comprehensive documentation and testing @@ -8375,27 +8342,14 @@ workflow: - Long-term maintenance expected - Enterprise or external-facing APIs - use_simple_sequence_when: - - Building simple APIs or single-purpose services - - Few endpoints with straightforward logic - - Prototyping or proof-of-concept APIs - - Solo developer or small team - - Internal tools or utilities - - Learning or experimental projects - handoff_prompts: - # Complex sequence prompts analyst_to_pm: "Project brief is complete. Save it as docs/project-brief.md in your project, then create the PRD." pm_to_architect: "PRD is ready. Save it as docs/prd.md in your project, then create the service architecture." architect_review: "Architecture complete. Save it as docs/architecture.md. Do you suggest any changes to the PRD stories or need new stories added?" architect_to_pm: "Please update the PRD with the suggested story changes, then re-export the complete prd.md to docs/." updated_to_po: "All documents ready in docs/ folder. Please validate all artifacts for consistency." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - complex_complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." - - # Simple sequence prompts - simple_analyst_to_pm: "Focused project brief complete. Save it as docs/project-brief.md, then create simple epic or story for API development." - simple_complete: "Simple service defined. Move to IDE environment to begin development." + complete: "All planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#greenfield-service ==================== ==================== START: workflows#brownfield-service ==================== @@ -8413,16 +8367,11 @@ workflow: - performance-optimization - integration-enhancement - # For Complex Service Enhancements (Multiple Stories, Architectural Changes) - complex_enhancement_sequence: - - step: scope_assessment - agent: any - action: assess complexity - notes: "First, assess if this is a simple service change (use simple_enhancement_sequence) or complex enhancement requiring full planning." - + sequence: - step: service_analysis - agent: analyst - action: analyze existing service + agent: architect + action: analyze existing project and use task document-project + creates: multiple documents per the document-project template notes: "Review existing service documentation, codebase, performance metrics, and identify integration dependencies." - agent: pm @@ -8451,69 +8400,35 @@ workflow: action: move_to_ide 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" - # For Simple Service Enhancements (1-3 Stories, Following Existing Patterns) - simple_enhancement_sequence: - - step: enhancement_type - action: choose approach - notes: "Choose between creating single story (simple API endpoint) or epic (1-3 related service changes)." - - - agent: pm|po|sm - creates: brownfield_epic OR brownfield_story - uses: brownfield-create-epic OR brownfield-create-story - notes: "Create focused service enhancement with existing API integration. Choose agent based on team preference and context." - - - workflow_end: - action: move_to_ide - 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" - flow_diagram: | ```mermaid graph TD - A[Start: Service Enhancement] --> B{Enhancement Complexity?} - B -->|Complex/Significant| C[analyst: analyze existing service] - B -->|Simple| D{1 Story or 2-3 Stories?} + A[Start: Service Enhancement] --> B[analyst: analyze existing service] + B --> C[pm: brownfield-prd.md] + C --> D[architect: brownfield-architecture.md] + D --> E[po: validate with po-master-checklist] + E --> F{PO finds issues?} + F -->|Yes| G[Return to relevant agent for fixes] + F -->|No| H[Move to IDE Environment] + G --> E - C --> E[pm: brownfield-prd.md] - E --> F[architect: brownfield-architecture.md] - F --> G[po: validate with po-master-checklist] - G --> H{PO finds issues?} - H -->|Yes| I[Return to relevant agent for fixes] - H -->|No| J[Move to IDE Environment] - I --> G - - D -->|1 Story| K[pm/po/sm: brownfield-create-story] - D -->|2-3 Stories| L[pm/po/sm: brownfield-create-epic] - K --> M[Move to IDE Environment] - L --> M - - style J fill:#90EE90 - style M fill:#90EE90 - style E fill:#FFE4B5 - style F fill:#FFE4B5 - style K fill:#FFB6C1 - style L fill:#FFB6C1 + style H fill:#90EE90 + style C fill:#FFE4B5 + style D fill:#FFE4B5 ``` decision_guidance: - use_complex_sequence_when: - - Service enhancement requires multiple coordinated stories (4+) + when_to_use: + - Service enhancement requires coordinated stories - API versioning or breaking changes needed - Database schema changes required - Performance or scalability improvements needed - Multiple integration points affected - use_simple_sequence_when: - - Adding simple endpoints or modifying existing ones - - Enhancement follows existing service patterns - - API compatibility maintained - - Risk to existing service is low - - Change is isolated with clear boundaries - handoff_prompts: analyst_to_pm: "Service analysis complete. Create comprehensive brownfield PRD with service integration strategy." pm_to_architect: "Brownfield PRD ready. Save it as docs/brownfield-prd.md, then create the service architecture." architect_to_po: "Architecture complete. Save it as docs/brownfield-architecture.md. Please validate all artifacts for service integration safety." po_issues: "PO found issues with [document]. Please return to [agent] to fix and re-save the updated document." - simple_to_ide: "Service enhancement defined with existing API integration. Move to IDE environment to begin development." - complex_complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." + complete: "All brownfield planning artifacts validated and saved in docs/ folder. Move to IDE environment to begin development." ==================== END: workflows#brownfield-service ====================