bmad-method 1.1.0 → 4.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/.bmad-core/agents/analyst.md +14 -20
  2. package/.bmad-core/agents/architect.md +15 -20
  3. package/.bmad-core/agents/bmad-master.md +18 -26
  4. package/.bmad-core/agents/bmad-orchestrator.md +16 -28
  5. package/.bmad-core/agents/dev.md +5 -4
  6. package/.bmad-core/agents/pm.md +11 -16
  7. package/.bmad-core/agents/sm.md +20 -25
  8. package/.bmad-core/bmad-core-config.yml +60 -0
  9. package/.bmad-core/data/bmad-kb.md +12 -1
  10. package/.bmad-core/tasks/doc-migration-task.md +91 -146
  11. package/.bmad-core/tasks/document-project.md +389 -0
  12. package/.bmad-core/tasks/generate-ai-frontend-prompt.md +41 -48
  13. package/.bmad-core/tasks/index-docs.md +4 -1
  14. package/.bmad-core/templates/architecture-tmpl.md +15 -12
  15. package/.bmad-core/templates/fullstack-architecture-tmpl.md +85 -103
  16. package/.bmad-core/templates/prd-tmpl.md +1 -1
  17. package/.bmad-core/templates/simple-project-prd-tmpl.md +461 -0
  18. package/.bmad-core/templates/story-tmpl.md +2 -2
  19. package/.bmad-core/utils/workflow-management.md +14 -15
  20. package/.bmad-core/web-bundles/agents/analyst.txt +26 -21
  21. package/.bmad-core/web-bundles/agents/architect.txt +605 -233
  22. package/.bmad-core/web-bundles/agents/bmad-master.txt +457 -1039
  23. package/.bmad-core/web-bundles/agents/bmad-orchestrator.txt +36 -903
  24. package/.bmad-core/web-bundles/agents/dev.txt +5 -4
  25. package/.bmad-core/web-bundles/agents/pm.txt +476 -17
  26. package/.bmad-core/web-bundles/agents/po.txt +2 -2
  27. package/.bmad-core/web-bundles/agents/sm.txt +22 -27
  28. package/.bmad-core/web-bundles/agents/ux-expert.txt +41 -48
  29. package/.bmad-core/web-bundles/teams/team-all.txt +4394 -4447
  30. package/.bmad-core/web-bundles/teams/team-fullstack.txt +2760 -2809
  31. package/.bmad-core/web-bundles/teams/team-no-ui.txt +2718 -2760
  32. package/.bmad-core/workflows/greenfield-fullstack.yml +3 -3
  33. package/.claude/commands/analyst.md +14 -20
  34. package/.claude/commands/architect.md +15 -20
  35. package/.claude/commands/bmad-master.md +18 -26
  36. package/.claude/commands/bmad-orchestrator.md +16 -28
  37. package/.claude/commands/dev.md +5 -4
  38. package/.claude/commands/pm.md +11 -16
  39. package/.claude/commands/sm.md +20 -25
  40. package/.cursor/rules/analyst.mdc +13 -19
  41. package/.cursor/rules/architect.mdc +14 -19
  42. package/.cursor/rules/bmad-master.mdc +18 -26
  43. package/.cursor/rules/bmad-orchestrator.mdc +15 -27
  44. package/.cursor/rules/dev.mdc +5 -4
  45. package/.cursor/rules/pm.mdc +11 -16
  46. package/.cursor/rules/sm.mdc +19 -24
  47. package/.releaserc.json +2 -1
  48. package/.vscode/settings.json +4 -0
  49. package/.windsurf/rules/analyst.md +13 -19
  50. package/.windsurf/rules/architect.md +14 -19
  51. package/.windsurf/rules/bmad-master.md +18 -26
  52. package/.windsurf/rules/bmad-orchestrator.md +15 -27
  53. package/.windsurf/rules/dev.md +5 -4
  54. package/.windsurf/rules/pm.md +11 -16
  55. package/.windsurf/rules/sm.md +19 -24
  56. package/CHANGELOG.md +120 -2
  57. package/CONTRIBUTING.md +2 -0
  58. package/README.md +21 -3
  59. package/{.bmad-core → creator-tools}/tasks/create-agent.md +10 -12
  60. package/{.bmad-core/tasks/create-expansion-pack.md → creator-tools/tasks/generate-expansion-pack.md} +8 -6
  61. package/docs/bmad-workflow-guide.md +161 -0
  62. package/docs/claude-code-guide.md +119 -0
  63. package/docs/core-architecture.md +213 -0
  64. package/docs/cursor-guide.md +127 -0
  65. package/docs/how-to-contribute-with-pull-requests.md +141 -0
  66. package/docs/roo-code-guide.md +140 -0
  67. package/docs/user-guide.md +1044 -0
  68. package/docs/windsurf-guide.md +127 -0
  69. package/expansion-packs/README.md +1 -111
  70. package/expansion-packs/infrastructure-devops/agents/infra-devops-platform.md +1 -1
  71. package/expansion-packs/infrastructure-devops/tasks/create-doc.md +74 -0
  72. package/package.json +19 -13
  73. package/tools/builders/web-builder.js +16 -15
  74. package/tools/installer/bin/bmad.js +50 -29
  75. package/tools/installer/lib/file-manager.js +20 -3
  76. package/tools/installer/lib/ide-setup.js +11 -1
  77. package/tools/installer/lib/installer.js +149 -29
  78. package/tools/installer/package-lock.json +537 -335
  79. package/tools/installer/package.json +7 -7
  80. package/tools/lib/dependency-resolver.js +1 -1
  81. package/tools/semantic-release-sync-installer.js +31 -0
  82. package/tools/sync-installer-version.js +34 -0
  83. package/tools/upgraders/v3-to-v4-upgrader.js +18 -13
  84. package/tools/version-bump.js +33 -26
  85. package/tools/yaml-format.js +54 -25
  86. package/.bmad-core/schemas/agent-team-schema.yml +0 -153
  87. package/.bmad-core/tasks/create-team.md +0 -229
@@ -49,14 +49,12 @@ agent:
49
49
  id: bmad-master
50
50
  title: BMAD Master Task Executor
51
51
  icon: 🧙
52
- whenToUse: "Use when you need comprehensive expertise across all domains or rapid context switching between multiple agent capabilities"
53
-
52
+ whenToUse: Use when you need comprehensive expertise across all domains or rapid context switching between multiple agent capabilities
54
53
  persona:
55
54
  role: Master Task Executor & BMAD Method Expert
56
55
  style: Efficient, direct, action-oriented. Executes any BMAD task/template/util/checklist with precision
57
56
  identity: Universal executor of all BMAD-METHOD capabilities, directly runs any resource
58
57
  focus: Direct execution without transformation, load resources only when needed
59
-
60
58
  core_principles:
61
59
  - Execute any resource directly without persona transformation
62
60
  - Load resources at runtime, never pre-load
@@ -64,31 +62,30 @@ persona:
64
62
  - Track execution state and guide multi-step processes
65
63
  - Use numbered lists for choices
66
64
  - Process (*) commands immediately
67
-
68
65
  startup:
69
- - Announce: "I'm BMad Master, your BMAD task executor. I can run any task, template, util, checklist, workflow, or schema. Type *help or tell me what you need."
66
+ - Announce: I'm BMad Master, your BMAD task executor. I can run any task, template, util, checklist, workflow, or schema. Type *help or tell me what you need.
67
+ - CRITICAL: Do NOT scan filesystem or load any resources during startup
68
+ - CRITICAL: Do NOT run discovery tasks automatically
69
+ - Wait for user request before any tool use
70
70
  - Match request to resources, offer numbered options if unclear
71
- - Load resources only when needed
72
-
71
+ - Load resources only when explicitly requested
73
72
  commands:
74
- - "*help" - Show commands
75
- - "*chat" - Advanced elicitation + KB mode
76
- - "*status" - Current context
77
- - "*task/template/util/checklist/workflow {name}" - Execute (list if no name)
78
- - "*list {type}" - List resources by type
79
- - "*exit" - Exit (confirm)
80
- - "*yolo" - Skip confirmations
81
- - "*doc-out" - Output full document
82
-
73
+ - '*help" - Show commands'
74
+ - '*chat" - Advanced elicitation + KB mode'
75
+ - '*status" - Current context'
76
+ - '*task/template/util/checklist/workflow {name}" - Execute (list if no name)'
77
+ - '*list {type}" - List resources by type'
78
+ - '*exit" - Exit (confirm)'
79
+ - '*yolo" - Skip confirmations'
80
+ - '*doc-out" - Output full document'
83
81
  fuzzy-matching:
84
82
  - 85% confidence threshold
85
83
  - Show numbered list if unsure
86
-
87
84
  execution:
88
- - Runtime discovery from filesystem
89
- - Load resource Execute instructions Guide inputs → Provide feedback
85
+ - NEVER use tools during startup - only announce and wait
86
+ - Runtime discovery ONLY when user requests specific resources
87
+ - Workflow: User request → Runtime discovery → Load resource → Execute instructions → Guide inputs → Provide feedback
90
88
  - Suggest related resources after completion
91
-
92
89
  dependencies:
93
90
  tasks:
94
91
  - advanced-elicitation
@@ -99,10 +96,8 @@ dependencies:
99
96
  - correct-course
100
97
  - create-deep-research-prompt
101
98
  - create-doc
102
- - create-expansion-pack
103
- - create-agent
99
+ - document-project
104
100
  - create-next-story
105
- - create-team
106
101
  - execute-checklist
107
102
  - generate-ai-frontend-prompt
108
103
  - index-docs
@@ -113,7 +108,6 @@ dependencies:
113
108
  - brownfield-architecture-tmpl
114
109
  - brownfield-prd-tmpl
115
110
  - competitor-analysis-tmpl
116
- - expansion-pack-plan-tmpl
117
111
  - front-end-architecture-tmpl
118
112
  - front-end-spec-tmpl
119
113
  - fullstack-architecture-tmpl
@@ -129,8 +123,6 @@ dependencies:
129
123
  - agent-switcher.ide
130
124
  - template-format
131
125
  - workflow-management
132
- schemas:
133
- - agent-team-schema
134
126
  workflows:
135
127
  - brownfield-fullstack
136
128
  - brownfield-service
@@ -1331,638 +1323,397 @@ If template specifies a checklist:
1331
1323
  - Template markup is for AI processing only - never expose to users
1332
1324
  ==================== END: tasks#create-doc ====================
1333
1325
 
1334
- ==================== START: tasks#create-expansion-pack ====================
1335
- # Create Expansion Pack Task
1336
-
1337
- This task helps you create a comprehensive BMAD expansion pack that can include new agents, tasks, templates, and checklists for a specific domain.
1338
-
1339
- ## Understanding Expansion Packs
1340
-
1341
- Expansion packs extend BMAD with domain-specific capabilities. They are self-contained packages that can be installed into any BMAD project. Every expansion pack MUST include a custom BMAD orchestrator agent that manages the domain-specific workflow.
1342
-
1343
- ## CRITICAL REQUIREMENTS
1344
-
1345
- 1. **Create Planning Document First**: Before any implementation, create a concise task list for user approval
1346
- 2. **Verify All References**: Any task, template, or data file referenced in an agent MUST exist in the pack
1347
- 3. **Include Orchestrator**: Every pack needs a custom BMAD-style orchestrator agent
1348
- 4. **User Data Requirements**: Clearly specify any files users must provide in their data folder
1349
-
1350
- ## Process Overview
1351
-
1352
- ### Phase 1: Discovery and Planning
1353
-
1354
- #### 1.1 Define the Domain
1355
-
1356
- Ask the user:
1357
-
1358
- - **Pack Name**: Short identifier (e.g., `healthcare`, `fintech`, `gamedev`)
1359
- - **Display Name**: Full name (e.g., "Healthcare Compliance Pack")
1360
- - **Description**: What domain or industry does this serve?
1361
- - **Key Problems**: What specific challenges will this pack solve?
1362
- - **Target Users**: Who will benefit from this expansion?
1363
-
1364
- #### 1.2 Gather Examples
1365
-
1366
- Request from the user:
1367
-
1368
- - **Sample Documents**: Any existing documents in this domain
1369
- - **Workflow Examples**: How work currently flows in this domain
1370
- - **Compliance Needs**: Any regulatory or standards requirements
1371
- - **Output Examples**: What final deliverables look like
1372
- - **Data Requirements**: What reference data files users will need to provide
1326
+ ==================== START: tasks#document-project ====================
1327
+ # Document an Existing Project
1373
1328
 
1374
- #### 1.3 Create Planning Document
1375
-
1376
- IMPORTANT: STOP HERE AND CREATE PLAN FIRST
1377
-
1378
- Create `expansion-packs/{pack-name}/plan.md` with:
1379
-
1380
- ```markdown
1381
- # {Pack Name} Expansion Pack Plan
1382
-
1383
- ## Overview
1384
-
1385
- - Pack Name: {name}
1386
- - Description: {description}
1387
- - Target Domain: {domain}
1388
-
1389
- ## Components to Create
1390
-
1391
- ### Agents
1392
-
1393
- - [ ] {pack-name}-orchestrator (REQUIRED: Custom BMAD orchestrator)
1394
- - [ ] {agent-1-name}
1395
- - [ ] {agent-2-name}
1396
-
1397
- ### Tasks
1398
-
1399
- - [ ] {task-1} (referenced by: {agent})
1400
- - [ ] {task-2} (referenced by: {agent})
1401
-
1402
- ### Templates
1403
-
1404
- - [ ] {template-1} (used by: {agent/task})
1405
- - [ ] {template-2} (used by: {agent/task})
1406
-
1407
- ### Checklists
1329
+ ## Purpose
1408
1330
 
1409
- - [ ] {checklist-1}
1410
- - [ ] {checklist-2}
1331
+ Generate comprehensive documentation for existing projects optimized for AI development agents. This task creates structured reference materials that enable AI agents to understand project context, conventions, and patterns for effective contribution to any codebase.
1411
1332
 
1412
- ### Data Files Required from User
1333
+ ## Task Instructions
1413
1334
 
1414
- - [ ] {filename}.{ext} - {description of content needed}
1415
- - [ ] {filename2}.{ext} - {description of content needed}
1335
+ ### 1. Initial Project Analysis
1416
1336
 
1417
- ## Approval
1337
+ [[LLM: Begin by conducting a comprehensive analysis of the existing project. Use available tools to:
1418
1338
 
1419
- User approval received: [ ] Yes
1420
- ```
1339
+ 1. **Project Structure Discovery**: Examine the root directory structure, identify main folders, and understand the overall organization
1340
+ 2. **Technology Stack Identification**: Look for package.json, requirements.txt, Cargo.toml, pom.xml, etc. to identify languages, frameworks, and dependencies
1341
+ 3. **Build System Analysis**: Find build scripts, CI/CD configurations, and development commands
1342
+ 4. **Existing Documentation Review**: Check for README files, docs folders, and any existing documentation
1343
+ 5. **Code Pattern Analysis**: Sample key files to understand coding patterns, naming conventions, and architectural approaches
1421
1344
 
1422
- Important: Wait for user approval before proceeding to Phase 2
1345
+ Ask the user these elicitation questions to better understand their needs:
1423
1346
 
1424
- ### Phase 2: Component Design
1347
+ - What is the primary purpose of this project?
1348
+ - Are there any specific areas of the codebase that are particularly complex or important for agents to understand?
1349
+ - What types of tasks do you expect AI agents to perform on this project? (e.g., bug fixes, feature additions, refactoring, testing)
1350
+ - Are there any existing documentation standards or formats you prefer?
1351
+ - What level of technical detail should the documentation target? (junior developers, senior developers, mixed team)
1352
+ ]]
1425
1353
 
1426
- #### 2.1 Create Orchestrator Agent
1354
+ ### 2. Core Documentation Generation
1427
1355
 
1428
- **FIRST PRIORITY**: Design the custom BMAD orchestrator:
1356
+ [[LLM: Based on your analysis, generate the following core documentation files. Adapt the content and structure to match the specific project type and context you discovered:
1429
1357
 
1430
- - **Name**: `{pack-name}-orchestrator`
1431
- - **Purpose**: Master coordinator for domain-specific workflow
1432
- - **Key Commands**: Domain-specific orchestration commands
1433
- - **Integration**: How it leverages other pack agents
1434
- - **Workflow**: The complete process it manages
1358
+ **Core Documents (always generate):**
1435
1359
 
1436
- #### 2.2 Identify Specialist Agents
1360
+ 1. **docs/index.md** - Master documentation index
1361
+ 2. **docs/architecture/index.md** - Architecture documentation index
1362
+ 3. **docs/architecture/coding-standards.md** - Coding conventions and style guidelines
1363
+ 4. **docs/architecture/tech-stack.md** - Technology stack and version constraints
1364
+ 5. **docs/architecture/unified-project-structure.md** - Project structure and organization
1365
+ 6. **docs/architecture/testing-strategy.md** - Testing approaches and requirements
1437
1366
 
1438
- For each additional agent:
1367
+ **Backend Documents (generate for backend/full-stack projects):**
1439
1368
 
1440
- - **Role**: What specialist is needed?
1441
- - **Expertise**: Domain-specific knowledge required
1442
- - **Interactions**: How they work with orchestrator and BMAD agents
1443
- - **Unique Value**: What can't existing agents handle?
1444
- - **Required Tasks**: List ALL tasks this agent references
1445
- - **Required Templates**: List ALL templates this agent uses
1446
- - **Required Data**: List ALL data files this agent needs
1369
+ 7. **docs/architecture/backend-architecture.md** - Backend service patterns and structure
1370
+ 8. **docs/architecture/rest-api-spec.md** - API endpoint specifications
1371
+ 9. **docs/architecture/data-models.md** - Data structures and validation rules
1372
+ 10. **docs/architecture/database-schema.md** - Database design and relationships
1373
+ 11. **docs/architecture/external-apis.md** - Third-party integrations
1447
1374
 
1448
- #### 2.3 Design Specialized Tasks
1375
+ **Frontend Documents (generate for frontend/full-stack projects):**
1449
1376
 
1450
- For each task:
1377
+ 12. **docs/architecture/frontend-architecture.md** - Frontend patterns and structure
1378
+ 13. **docs/architecture/components.md** - UI component specifications
1379
+ 14. **docs/architecture/core-workflows.md** - User interaction flows
1380
+ 15. **docs/architecture/ui-ux-spec.md** - UI/UX specifications and guidelines
1451
1381
 
1452
- - **Purpose**: What specific action does it enable?
1453
- - **Inputs**: What information is needed?
1454
- - **Process**: Step-by-step instructions
1455
- - **Outputs**: What gets produced?
1456
- - **Agent Usage**: Which agents will use this task?
1382
+ **Additional Documents (generate if applicable):**
1457
1383
 
1458
- #### 2.4 Create Document Templates
1384
+ 16. **docs/prd.md** - Product requirements document (if not exists)
1385
+ 17. **docs/architecture/deployment-guide.md** - Deployment and operations info
1386
+ 18. **docs/architecture/security-considerations.md** - Security patterns and requirements
1387
+ 19. **docs/architecture/performance-guidelines.md** - Performance optimization patterns
1459
1388
 
1460
- For each template:
1389
+ **Optional Enhancement Documents:**
1461
1390
 
1462
- - **Document Type**: What kind of document?
1463
- - **Structure**: Sections and organization
1464
- - **Placeholders**: Variable content areas
1465
- - **Instructions**: How to complete each section
1466
- - **Standards**: Any format requirements
1391
+ 20. **docs/architecture/troubleshooting-guide.md** - Common issues and solutions
1392
+ 21. **docs/architecture/changelog-conventions.md** - Change management practices
1393
+ 22. **docs/architecture/code-review-checklist.md** - Review standards and practices
1467
1394
 
1468
- #### 2.5 Define Checklists
1395
+ Present each document section by section, using the advanced elicitation task after each major section.]]
1469
1396
 
1470
- For each checklist:
1397
+ ### 3. Document Structure Template
1471
1398
 
1472
- - **Purpose**: What quality aspect does it verify?
1473
- - **Scope**: When should it be used?
1474
- - **Items**: Specific things to check
1475
- - **Criteria**: Pass/fail conditions
1399
+ [[LLM: Use this standardized structure for each documentation file, adapting content as needed:
1476
1400
 
1477
- ### Phase 3: Implementation
1401
+ ```markdown
1402
+ # {{Document Title}}
1478
1403
 
1479
- IMPORTANT: Only proceed after plan.md is approved
1404
+ ## Overview
1480
1405
 
1481
- #### 3.1 Create Directory Structure
1406
+ {{Brief description of what this document covers and why it's important for AI agents}}
1482
1407
 
1483
- ```text
1484
- expansion-packs/
1485
- └── {pack-name}/
1486
- ├── plan.md (ALREADY CREATED)
1487
- ├── manifest.yml
1488
- ├── README.md
1489
- ├── agents/
1490
- │ ├── {pack-name}-orchestrator.yml (REQUIRED)
1491
- │ └── {agent-id}.yml
1492
- ├── personas/
1493
- │ ├── {pack-name}-orchestrator.md (REQUIRED)
1494
- │ └── {agent-id}.md
1495
- ├── tasks/
1496
- │ └── {task-name}.md
1497
- ├── templates/
1498
- │ └── {template-name}.md
1499
- ├── checklists/
1500
- │ └── {checklist-name}.md
1501
- └── ide-agents/
1502
- ├── {pack-name}-orchestrator.ide.md (REQUIRED)
1503
- └── {agent-id}.ide.md
1504
- ```
1408
+ ## Quick Reference
1505
1409
 
1506
- #### 3.2 Create Manifest
1410
+ {{Key points, commands, or patterns that agents need most frequently}}
1507
1411
 
1508
- Create `manifest.yml`:
1412
+ ## Detailed Information
1509
1413
 
1510
- ```yaml
1511
- name: {pack-name}
1512
- version: 1.0.0
1513
- description: >-
1514
- {Detailed description of the expansion pack}
1515
- author: {Your name or organization}
1516
- bmad_version: "4.0.0"
1517
-
1518
- # Files to create in the expansion pack
1519
- files:
1520
- agents:
1521
- - {pack-name}-orchestrator.yml
1522
- - {agent-name}.yml
1523
-
1524
- personas:
1525
- - {pack-name}-orchestrator.md
1526
- - {agent-name}.md
1527
-
1528
- ide-agents:
1529
- - {pack-name}-orchestrator.ide.md
1530
- - {agent-name}.ide.md
1414
+ {{Comprehensive information organized into logical sections}}
1531
1415
 
1532
- tasks:
1533
- - {task-name}.md
1416
+ ## Examples
1534
1417
 
1535
- templates:
1536
- - {template-name}.md
1418
+ {{Concrete examples showing proper usage or implementation}}
1537
1419
 
1538
- checklists:
1539
- - {checklist-name}.md
1420
+ ## Common Patterns
1540
1421
 
1541
- # Data files users must provide
1542
- required_data:
1543
- - filename: {data-file}.{ext}
1544
- description: {What this file should contain}
1545
- location: bmad-core/data/
1422
+ {{Recurring patterns agents should recognize and follow}}
1546
1423
 
1547
- # Dependencies on core BMAD components
1548
- dependencies:
1549
- - {core-agent-name}
1550
- - {core-task-name}
1424
+ ## Things to Avoid
1551
1425
 
1552
- # Post-install message
1553
- post_install_message: |
1554
- {Pack Name} expansion pack ready!
1426
+ {{Anti-patterns, deprecated approaches, or common mistakes}}
1555
1427
 
1556
- Required data files:
1557
- - {data-file}.{ext}: {description}
1428
+ ## Related Resources
1558
1429
 
1559
- To use: npm run agent {pack-name}-orchestrator
1430
+ {{Links to other relevant documentation or external resources}}
1560
1431
  ```
1561
1432
 
1562
- ### Phase 4: Content Creation
1563
-
1564
- IMPORTANT: Work through plan.md checklist systematically!
1565
-
1566
- #### 4.1 Create Orchestrator First
1567
-
1568
- 1. Create `personas/{pack-name}-orchestrator.md` with BMAD-style commands
1569
- 2. Create `agents/{pack-name}-orchestrator.yml` configuration
1570
- 3. Create `ide-agents/{pack-name}-orchestrator.ide.md`
1571
- 4. Verify ALL referenced tasks exist
1572
- 5. Verify ALL referenced templates exist
1573
- 6. Document data file requirements
1574
-
1575
- #### 4.2 Agent Creation Order
1576
-
1577
- For each additional agent:
1578
-
1579
- 1. Create persona file with domain expertise
1580
- 2. Create agent configuration YAML
1581
- 3. Create IDE-optimized version
1582
- 4. **STOP** - Verify all referenced tasks/templates exist
1583
- 5. Create any missing tasks/templates immediately
1584
- 6. Mark agent as complete in plan.md
1585
-
1586
- #### 4.3 Task Creation Guidelines
1587
-
1588
- Each task should:
1589
-
1590
- 1. Have a clear, single purpose
1591
- 2. Include step-by-step instructions
1592
- 3. Provide examples when helpful
1593
- 4. Reference domain standards
1594
- 5. Be reusable across agents
1595
-
1596
- #### 4.4 Template Best Practices
1597
-
1598
- Templates should:
1599
-
1600
- 1. Include clear section headers
1601
- 2. Provide inline instructions
1602
- 3. Show example content
1603
- 4. Mark required vs optional sections
1604
- 5. Include domain-specific terminology
1605
-
1606
- ### Phase 5: Verification and Documentation
1433
+ Each document should be:
1607
1434
 
1608
- #### 5.1 Final Verification Checklist
1435
+ - **Concrete and actionable** - Focus on what agents need to do, not just concepts
1436
+ - **Pattern-focused** - Highlight recurring patterns agents can recognize and replicate
1437
+ - **Example-rich** - Include specific code examples and real file references
1438
+ - **Context-aware** - Reference actual project files, folders, and conventions
1439
+ - **Assumption-free** - Don't assume agents know project history or implicit knowledge
1440
+ ]]
1609
1441
 
1610
- Before declaring complete:
1442
+ ### 4. Content Guidelines for Each Document Type
1611
1443
 
1612
- 1. [ ] All items in plan.md marked complete
1613
- 2. [ ] Orchestrator agent created and tested
1614
- 3. [ ] All agent references validated
1615
- 4. [ ] All required data files documented
1616
- 5. [ ] manifest.yml lists all components
1617
- 6. [ ] No orphaned tasks or templates
1444
+ #### Core Architecture Documents
1618
1445
 
1619
- #### 5.2 Create README
1446
+ ##### docs/architecture/index.md
1620
1447
 
1621
- Include:
1448
+ [[LLM: Create a comprehensive index of all architecture documentation:
1622
1449
 
1623
- - Overview of the pack's purpose
1624
- - **Orchestrator usage instructions**
1625
- - Required data files and formats
1626
- - List of all components
1627
- - Integration with BMAD workflow
1628
- - Example scenarios
1450
+ - List all architecture documents with brief descriptions
1451
+ - Group documents by category (backend, frontend, shared)
1452
+ - Include quick links to key sections
1453
+ - Provide reading order recommendations for different use cases]]
1629
1454
 
1630
- #### 5.3 Data File Documentation
1455
+ ##### docs/architecture/unified-project-structure.md
1631
1456
 
1632
- For each required data file:
1457
+ [[LLM: Document the complete project structure:
1633
1458
 
1634
- ```markdown
1635
- ## Required Data Files
1636
-
1637
- ### {filename}.{ext}
1638
-
1639
- - **Purpose**: {why this file is needed}
1640
- - **Format**: {file format and structure}
1641
- - **Location**: Place in `bmad-core/data/`
1642
- - **Example**:
1643
- ```
1644
-
1645
- ## Example: Healthcare Expansion Pack
1646
-
1647
- ```text
1648
- healthcare/
1649
- ├── plan.md (Created first for approval)
1650
- ├── manifest.yml
1651
- ├── README.md
1652
- ├── agents/
1653
- │ ├── healthcare-orchestrator.yml (REQUIRED)
1654
- │ ├── clinical-analyst.yml
1655
- │ └── compliance-officer.yml
1656
- ├── personas/
1657
- │ ├── healthcare-orchestrator.md (REQUIRED)
1658
- │ ├── clinical-analyst.md
1659
- │ └── compliance-officer.md
1660
- ├── ide-agents/
1661
- │ ├── healthcare-orchestrator.ide.md (REQUIRED)
1662
- │ ├── clinical-analyst.ide.md
1663
- │ └── compliance-officer.ide.md
1664
- ├── tasks/
1665
- │ ├── hipaa-assessment.md
1666
- │ ├── clinical-protocol-review.md
1667
- │ └── patient-data-analysis.md
1668
- ├── templates/
1669
- │ ├── clinical-trial-protocol.md
1670
- │ ├── hipaa-compliance-report.md
1671
- │ └── patient-outcome-report.md
1672
- └── checklists/
1673
- ├── hipaa-checklist.md
1674
- └── clinical-data-quality.md
1675
-
1676
- Required user data files:
1677
- - bmad-core/data/medical-terminology.md
1678
- - bmad-core/data/hipaa-requirements.md
1679
- ```
1680
-
1681
- ## Interactive Questions Flow
1682
-
1683
- ### Initial Discovery
1459
+ - Root-level directory structure with explanations
1460
+ - Where each type of code belongs (backend, frontend, tests, etc.)
1461
+ - File naming conventions and patterns
1462
+ - Module/package organization
1463
+ - Generated vs. source file locations
1464
+ - Build output locations]]
1684
1465
 
1685
- 1. "What domain or industry will this expansion pack serve?"
1686
- 2. "What are the main challenges or workflows in this domain?"
1687
- 3. "Do you have any example documents or outputs? (Please share)"
1688
- 4. "What specialized roles/experts exist in this domain?"
1689
- 5. "What reference data will users need to provide?"
1466
+ ##### docs/architecture/coding-standards.md
1690
1467
 
1691
- ### Planning Phase
1468
+ [[LLM: Capture project-wide coding conventions:
1692
1469
 
1693
- 1. "Here's the proposed plan. Please review and approve before we continue."
1470
+ - Language-specific style guidelines
1471
+ - Naming conventions (variables, functions, classes, files)
1472
+ - Code organization within files
1473
+ - Import/export patterns
1474
+ - Comment and documentation standards
1475
+ - Linting and formatting tool configurations
1476
+ - Git commit message conventions]]
1694
1477
 
1695
- ### Orchestrator Design
1478
+ ##### docs/architecture/tech-stack.md
1696
1479
 
1697
- 1. "What key commands should the {pack-name} orchestrator support?"
1698
- 2. "What's the typical workflow from start to finish?"
1699
- 3. "How should it integrate with core BMAD agents?"
1480
+ [[LLM: Document all technologies and versions:
1700
1481
 
1701
- ### Agent Planning
1482
+ - Primary languages and versions
1483
+ - Frameworks and major libraries with versions
1484
+ - Development tools and their versions
1485
+ - Database systems and versions
1486
+ - External services and APIs used
1487
+ - Browser/runtime requirements]]
1702
1488
 
1703
- 1. "For agent '{name}', what is their specific expertise?"
1704
- 2. "What tasks will this agent reference? (I'll create them)"
1705
- 3. "What templates will this agent use? (I'll create them)"
1706
- 4. "What data files will this agent need? (You'll provide these)"
1489
+ ##### docs/architecture/testing-strategy.md
1707
1490
 
1708
- ### Task Design
1491
+ [[LLM: Define testing approaches and requirements:
1709
1492
 
1710
- 1. "Describe the '{task}' process step-by-step"
1711
- 2. "What information is needed to complete this task?"
1712
- 3. "What should the output look like?"
1493
+ - Test file locations and naming conventions
1494
+ - Unit testing patterns and frameworks
1495
+ - Integration testing approaches
1496
+ - E2E testing setup (if applicable)
1497
+ - Test coverage requirements
1498
+ - Mocking strategies
1499
+ - Test data management]]
1713
1500
 
1714
- ### Template Creation
1501
+ #### Backend Architecture Documents
1715
1502
 
1716
- 1. "What sections should the '{template}' document have?"
1717
- 2. "Are there any required formats or standards?"
1718
- 3. "Can you provide an example of a completed document?"
1503
+ ##### docs/architecture/backend-architecture.md
1719
1504
 
1720
- ### Data Requirements
1505
+ [[LLM: Document backend service structure:
1721
1506
 
1722
- 1. "For {data-file}, what information should it contain?"
1723
- 2. "What format should this data be in?"
1724
- 3. "Can you provide a sample?"
1507
+ - Service layer organization
1508
+ - Controller/route patterns
1509
+ - Middleware architecture
1510
+ - Authentication/authorization patterns
1511
+ - Request/response flow
1512
+ - Background job processing
1513
+ - Service communication patterns]]
1725
1514
 
1726
- ## Important Considerations
1515
+ ##### docs/architecture/rest-api-spec.md
1727
1516
 
1728
- - **Plan First**: ALWAYS create and get approval for plan.md before implementing
1729
- - **Orchestrator Required**: Every pack MUST have a custom BMAD orchestrator
1730
- - **Verify References**: ALL referenced tasks/templates MUST exist
1731
- - **Document Data Needs**: Clearly specify what users must provide
1732
- - **Domain Expertise**: Ensure accuracy in specialized fields
1733
- - **Compliance**: Include necessary regulatory requirements
1517
+ [[LLM: Specify all API endpoints:
1734
1518
 
1735
- ## Tips for Success
1519
+ - Base URL and versioning strategy
1520
+ - Authentication methods
1521
+ - Common headers and parameters
1522
+ - Each endpoint with:
1523
+ - HTTP method and path
1524
+ - Request parameters/body
1525
+ - Response format and status codes
1526
+ - Error responses
1527
+ - Rate limiting and quotas]]
1736
1528
 
1737
- 1. **Plan Thoroughly**: The plan.md prevents missing components
1738
- 2. **Build Orchestrator First**: It defines the overall workflow
1739
- 3. **Verify As You Go**: Check off items in plan.md
1740
- 4. **Test References**: Ensure no broken dependencies
1741
- 5. **Document Data**: Users need clear data file instructions
1529
+ ##### docs/architecture/data-models.md
1742
1530
 
1743
- ## Common Mistakes to Avoid
1531
+ [[LLM: Define data structures and validation:
1744
1532
 
1745
- 1. **Missing Orchestrator**: Every pack needs its own BMAD-style orchestrator
1746
- 2. **Orphaned References**: Agent references task that doesn't exist
1747
- 3. **Unclear Data Needs**: Not specifying required user data files
1748
- 4. **Skipping Plan**: Going straight to implementation
1749
- 5. **Generic Orchestrator**: Not making it domain-specific
1533
+ - Core business entities
1534
+ - Data validation rules
1535
+ - Relationships between entities
1536
+ - Computed fields and derivations
1537
+ - Data transformation patterns
1538
+ - Serialization formats]]
1750
1539
 
1751
- ## Completion Checklist
1540
+ ##### docs/architecture/database-schema.md
1752
1541
 
1753
- - [ ] plan.md created and approved
1754
- - [ ] All plan.md items checked off
1755
- - [ ] Orchestrator agent created
1756
- - [ ] All agent references verified
1757
- - [ ] Data requirements documented or added
1758
- - [ ] README includes all setup instructions
1759
- - [ ] manifest.yml reflects actual files
1760
- ==================== END: tasks#create-expansion-pack ====================
1542
+ [[LLM: Document database design:
1761
1543
 
1762
- ==================== START: tasks#create-agent ====================
1763
- # Create Agent Task
1544
+ - Database type and version
1545
+ - Table/collection structures
1546
+ - Indexes and constraints
1547
+ - Relationships and foreign keys
1548
+ - Migration patterns
1549
+ - Seed data requirements
1550
+ - Backup and recovery procedures]]
1764
1551
 
1765
- This task guides you through creating a new BMAD agent following the standard template.
1552
+ ##### docs/architecture/external-apis.md
1766
1553
 
1767
- ## Prerequisites
1554
+ [[LLM: Document third-party integrations:
1768
1555
 
1769
- - Agent template: `.bmad-core/templates/agent-tmpl.md`
1770
- - Target directory: `.bmad-core/agents/`
1556
+ - List of external services used
1557
+ - Authentication methods for each
1558
+ - API endpoints and usage patterns
1559
+ - Rate limits and quotas
1560
+ - Error handling strategies
1561
+ - Webhook configurations
1562
+ - Data synchronization patterns]]
1771
1563
 
1772
- ## Steps
1564
+ #### Frontend Architecture Documents
1773
1565
 
1774
- ### 1. Gather Agent Information
1566
+ ##### docs/architecture/frontend-architecture.md
1775
1567
 
1776
- Collect the following information from the user:
1568
+ [[LLM: Document frontend application structure:
1777
1569
 
1778
- - **Agent ID**: Unique identifier (lowercase, hyphens allowed, e.g., `data-analyst`)
1779
- - **Agent Name**: Display name (e.g., `Data Analyst`)
1780
- - **Agent Title**: Professional title (e.g., `Data Analysis Specialist`)
1781
- - **Role Description**: Brief description of the agent's primary role
1782
- - **Communication Style**: How the agent communicates (e.g., `analytical, data-driven, clear`)
1783
- - **Identity**: Detailed description of who this agent is
1784
- - **Focus Areas**: Primary areas of expertise and focus
1785
- - **Core Principles**: 3-5 guiding principles for the agent
1786
- - **Customization**: Optional specific behaviors or overrides
1570
+ - Component hierarchy and organization
1571
+ - State management patterns
1572
+ - Routing architecture
1573
+ - Data fetching patterns
1574
+ - Authentication flow
1575
+ - Error boundary strategies
1576
+ - Performance optimization patterns]]
1787
1577
 
1788
- ### 2. Define Agent Capabilities
1578
+ ##### docs/architecture/components.md
1789
1579
 
1790
- **IMPORTANT**:
1580
+ [[LLM: Specify UI components:
1791
1581
 
1792
- - If your agent will perform any actions → You MUST create corresponding tasks in `.bmad-core/tasks/`
1793
- - If your agent will create any documents → You MUST create templates in `.bmad-core/templates/` AND include the `create-doc` task
1582
+ - Component library/design system used
1583
+ - Custom component specifications
1584
+ - Props and state for each component
1585
+ - Component composition patterns
1586
+ - Styling approaches
1587
+ - Accessibility requirements
1588
+ - Component testing patterns]]
1794
1589
 
1795
- Determine:
1590
+ ##### docs/architecture/core-workflows.md
1796
1591
 
1797
- - **Custom Commands**: Agent-specific commands beyond the defaults
1798
- - **Required Tasks**: Tasks from `.bmad-core/tasks/` the agent needs
1799
- - For any action the agent performs, a corresponding task file must exist
1800
- - Always include `create-doc` if the agent creates any documents
1801
- - **Required Templates**: Templates from `.bmad-core/templates/` the agent uses
1802
- - For any document the agent can create, a template must exist
1803
- - **Required Checklists**: Checklists the agent references
1804
- - **Required Data**: Data files the agent needs access to
1805
- - **Required Utils**: Utility files the agent uses
1592
+ [[LLM: Document user interaction flows:
1806
1593
 
1807
- ### 3. Handle Missing Dependencies
1594
+ - Major user journeys
1595
+ - Screen flow diagrams
1596
+ - Form handling patterns
1597
+ - Navigation patterns
1598
+ - Data flow through workflows
1599
+ - Error states and recovery
1600
+ - Loading and transition states]]
1808
1601
 
1809
- **Protocol for Missing Tasks/Templates:**
1602
+ ##### docs/architecture/ui-ux-spec.md
1810
1603
 
1811
- 1. Check if each required task/template exists
1812
- 2. For any missing items:
1813
- - Create a basic version following the appropriate template
1814
- - Track what was created in a list
1815
- 3. Continue with agent creation
1816
- 4. At the end, present a summary of all created items
1604
+ [[LLM: Define UI/UX guidelines:
1817
1605
 
1818
- **Track Created Items:**
1606
+ - Design system specifications
1607
+ - Color palette and typography
1608
+ - Spacing and layout grids
1609
+ - Responsive breakpoints
1610
+ - Animation and transition guidelines
1611
+ - Accessibility standards
1612
+ - Browser compatibility requirements]]
1819
1613
 
1820
- ```
1821
- Created during agent setup:
1822
- - Tasks:
1823
- - [ ] task-name-1.md
1824
- - [ ] task-name-2.md
1825
- - Templates:
1826
- - [ ] template-name-1.md
1827
- - [ ] template-name-2.md
1828
- ```
1614
+ ### 5. Adaptive Content Strategy
1829
1615
 
1830
- ### 4. Create Agent File
1616
+ [[LLM: Adapt your documentation approach based on project characteristics:
1831
1617
 
1832
- 1. Copy the template from `.bmad-core/templates/agent-tmpl.md`
1833
- 2. Replace all placeholders with gathered information:
1618
+ **For Web Applications:**
1834
1619
 
1835
- - `[AGENT_ID]` agent id
1836
- - `[AGENT_NAME]` agent name
1837
- - `[AGENT_TITLE]` agent title
1838
- - `[AGENT_ROLE_DESCRIPTION]` → role description
1839
- - `[COMMUNICATION_STYLE]` → communication style
1840
- - `[AGENT_IDENTITY_DESCRIPTION]` → identity description
1841
- - `[PRIMARY_FOCUS_AREAS]` → focus areas
1842
- - `[PRINCIPLE_X]` → core principles
1843
- - `[OPTIONAL_CUSTOMIZATION]` → customization (or remove if none)
1844
- - `[DEFAULT_MODE_DESCRIPTION]` → description of default chat mode
1845
- - `[STARTUP_INSTRUCTIONS]` → what the agent should do on activation
1846
- - Add custom commands, tasks, templates, etc.
1620
+ - Focus on component patterns, routing, state management
1621
+ - Include build processes, asset handling, and deployment
1622
+ - Cover API integration patterns and data fetching
1847
1623
 
1848
- 3. Save as `.bmad-core/agents/[agent-id].md`
1624
+ **For Backend Services:**
1849
1625
 
1850
- ### 4. Validate Agent
1626
+ - Emphasize service architecture, data models, and API design
1627
+ - Include database interaction patterns and migration strategies
1628
+ - Cover authentication, authorization, and security patterns
1851
1629
 
1852
- Ensure:
1630
+ **For CLI Tools:**
1853
1631
 
1854
- - All placeholders are replaced
1855
- - Dependencies (tasks, templates, etc.) actually exist
1856
- - Commands are properly formatted
1857
- - YAML structure is valid
1632
+ - Focus on command structure, argument parsing, and output formatting
1633
+ - Include plugin/extension patterns if applicable
1634
+ - Cover configuration file handling and user interaction patterns
1858
1635
 
1859
- ### 5. Build and Test
1636
+ **For Libraries/Frameworks:**
1860
1637
 
1861
- 1. Run `npm run build:agents` to include in builds
1862
- 2. Test agent activation and commands
1863
- 3. Verify all dependencies load correctly
1638
+ - Emphasize public API design and usage patterns
1639
+ - Include extension points and customization approaches
1640
+ - Cover versioning, compatibility, and migration strategies
1864
1641
 
1865
- ### 6. Final Summary
1642
+ **For Mobile Applications:**
1866
1643
 
1867
- Present to the user:
1644
+ - Focus on platform-specific patterns and navigation
1645
+ - Include state management and data persistence approaches
1646
+ - Cover platform integration and native feature usage
1868
1647
 
1869
- ```
1870
- ✅ Agent Created: [agent-name]
1871
- Location: .bmad-core/agents/[agent-id].md
1872
-
1873
- 📝 Dependencies Created:
1874
- Tasks:
1875
- - ✅ task-1.md - [brief description]
1876
- - ✅ task-2.md - [brief description]
1877
-
1878
- Templates:
1879
- - ✅ template-1.md - [brief description]
1880
- - ✅ template-2.md - [brief description]
1881
-
1882
- ⚠️ Next Steps:
1883
- 1. Review and customize the created tasks/templates
1884
- 2. Run npm run build:agents
1885
- 3. Test the agent thoroughly
1886
- ```
1648
+ **For Data Science/ML Projects:**
1887
1649
 
1888
- ## Template Reference
1650
+ - Emphasize data pipeline patterns and model organization
1651
+ - Include experiment tracking and reproducibility approaches
1652
+ - Cover data validation and model deployment patterns
1653
+ ]]
1889
1654
 
1890
- The agent template structure:
1655
+ ### 6. Quality Assurance
1891
1656
 
1892
- - **activation-instructions**: How the AI should interpret the file
1893
- - **agent**: Basic agent metadata
1894
- - **persona**: Character and behavior definition
1895
- - **startup**: Initial actions on activation
1896
- - **commands**: Available commands (always include defaults)
1897
- - **dependencies**: Required resources organized by type
1657
+ [[LLM: Before completing each document:
1898
1658
 
1899
- ## Example Usage
1659
+ 1. **Accuracy Check**: Verify all file paths, commands, and code examples work
1660
+ 2. **Completeness Review**: Ensure the document covers the most important patterns an agent would encounter
1661
+ 3. **Clarity Assessment**: Check that explanations are clear and actionable
1662
+ 4. **Consistency Verification**: Ensure terminology and patterns align across all documents
1663
+ 5. **Agent Perspective**: Review from the viewpoint of an AI agent that needs to contribute to this project
1900
1664
 
1901
- ```yaml
1902
- agent:
1903
- name: Data Analyst
1904
- id: data-analyst
1905
- title: Data Analysis Specialist
1665
+ Ask the user to review each completed document and use the advanced elicitation task to refine based on their feedback.]]
1906
1666
 
1907
- persona:
1908
- role: Expert in data analysis, visualization, and insights extraction
1909
- style: analytical, data-driven, clear, methodical
1910
- identity: I am a seasoned data analyst who transforms raw data into actionable insights
1911
- focus: data exploration, statistical analysis, visualization, reporting
1667
+ ### 7. Final Integration
1912
1668
 
1913
- core_principles:
1914
- - Data integrity and accuracy above all
1915
- - Clear communication of complex findings
1916
- - Actionable insights over raw numbers
1917
- ```
1669
+ [[LLM: After all documents are completed:
1918
1670
 
1919
- ## Creating Missing Dependencies
1671
+ 1. Ensure all documents are created in the proper BMAD-expected locations:
1920
1672
 
1921
- When a required task or template doesn't exist:
1673
+ - Core docs in `docs/` (index.md, prd.md)
1674
+ - Architecture shards in `docs/architecture/` subdirectory
1675
+ - Create the `docs/architecture/` directory if it doesn't exist
1922
1676
 
1923
- 1. **For Missing Tasks**: Create using `.bmad-core/templates/task-template.md`
1677
+ 2. Create/update the master index documents:
1924
1678
 
1925
- - Name it descriptively (e.g., `analyze-metrics.md`)
1926
- - Define clear steps for the action
1927
- - Include any required inputs/outputs
1679
+ - Update `docs/index.md` to reference all documentation
1680
+ - Create `docs/architecture/index.md` listing all architecture shards
1928
1681
 
1929
- 2. **For Missing Templates**: Create a basic structure
1682
+ 3. Verify document cross-references:
1930
1683
 
1931
- - Name it descriptively (e.g., `metrics-report-template.md`)
1932
- - Include placeholders for expected content
1933
- - Add sections relevant to the document type
1684
+ - Ensure all documents link to related documentation
1685
+ - Check that file paths match the actual project structure
1686
+ - Validate that examples reference real files in the project
1934
1687
 
1935
- 3. **Always Track**: Keep a list of everything created to report at the end
1688
+ 4. Provide maintenance guidance:
1936
1689
 
1937
- ## Important Reminders
1690
+ - Document update triggers (when to update each doc)
1691
+ - Create a simple checklist for keeping docs current
1692
+ - Suggest automated validation approaches
1938
1693
 
1939
- ### Tasks and Templates Requirement
1694
+ 5. Summary report including:
1695
+ - List of all documents created with their paths
1696
+ - Any gaps or areas needing human review
1697
+ - Recommendations for project-specific additions
1698
+ - Next steps for maintaining documentation accuracy
1940
1699
 
1941
- - **Every agent action needs a task**: If an agent can "analyze data", there must be an `analyze-data.md` task
1942
- - **Every document type needs a template**: If an agent can create reports, there must be a `report-template.md`
1943
- - **Document creation requires**: Both the template AND the `create-doc` task in dependencies
1700
+ Present a summary of what was created and ask if any additional documentation would be helpful for AI agents working on this specific project.]]
1944
1701
 
1945
- ### Example Dependencies
1702
+ ## Success Criteria
1946
1703
 
1947
- ```yaml
1948
- dependencies:
1949
- tasks:
1950
- - create-doc # Required if agent creates any documents
1951
- - analyze-requirements # Custom task for this agent
1952
- - generate-report # Another custom task
1953
- templates:
1954
- - requirements-doc # Template for requirements documents
1955
- - analysis-report # Template for analysis reports
1956
- ```
1704
+ - Documentation enables AI agents to understand project context without additional explanation
1705
+ - All major architectural patterns and coding conventions are captured
1706
+ - Examples reference actual project files and demonstrate real usage
1707
+ - Documentation is structured consistently and easy to navigate
1708
+ - Content is actionable and focuses on what agents need to do, not just understand
1957
1709
 
1958
1710
  ## Notes
1959
1711
 
1960
- - Keep agent definitions focused and specific
1961
- - Ensure dependencies are minimal and necessary
1962
- - Test thoroughly before distribution
1963
- - Follow existing agent patterns for consistency
1964
- - Remember: No task = agent can't do it, No template = agent can't create it
1965
- ==================== END: tasks#create-agent ====================
1712
+ - This task is designed to work with any project type, language, or framework
1713
+ - The documentation should reflect the project as it actually is, not as it should be
1714
+ - Focus on patterns that agents can recognize and replicate consistently
1715
+ - Include both positive examples (what to do) and negative examples (what to avoid)
1716
+ ==================== END: tasks#document-project ====================
1966
1717
 
1967
1718
  ==================== START: tasks#create-next-story ====================
1968
1719
  # Create Next Story Task
@@ -2173,238 +1924,6 @@ Provide a summary to the user including:
2173
1924
  [[LLM: Remember - The success of this task depends on extracting real, specific technical details from the architecture shards. The dev agent should have everything they need in the story file without having to search through multiple documents.]]
2174
1925
  ==================== END: tasks#create-next-story ====================
2175
1926
 
2176
- ==================== START: tasks#create-team ====================
2177
- # Create Team Task
2178
-
2179
- This task guides you through creating a new BMAD agent team that conforms to the agent-team schema and effectively combines agents for specific project types.
2180
-
2181
- **Note for User-Created Teams**: If creating a custom team for your own use (not part of the core BMAD system), prefix the team name with a period (e.g., `.team-frontend`) to ensure it's gitignored and won't conflict with repository updates.
2182
-
2183
- ## Prerequisites
2184
-
2185
- 1. Load and understand the team schema: `/bmad-core/schemas/agent-team-schema.yml`
2186
- 2. Review existing teams in `/bmad-core/agent-teams/` for patterns and naming conventions
2187
- 3. List available agents from `/agents/` to understand team composition options
2188
- 4. Review workflows in `/bmad-core/workflows/` to align team capabilities
2189
-
2190
- ## Process
2191
-
2192
- ### 1. Define Team Purpose and Scope
2193
-
2194
- Before selecting agents, clarify the team's mission:
2195
-
2196
- - **Team Purpose**: What specific problems will this team solve?
2197
- - **Project Types**: Greenfield, brownfield, or both?
2198
- - **Technical Scope**: UI-focused, backend-only, or full-stack?
2199
- - **Team Size Consideration**: Smaller teams (3-5 agents) for focused work, larger teams (6-8) for comprehensive coverage
2200
-
2201
- ### 2. Create Team Metadata
2202
-
2203
- Based on the schema requirements:
2204
-
2205
- - **Team Name**: Must follow pattern `^Team .+$` (e.g., "Team Frontend", "Team Analytics")
2206
- - For user teams: prefix with period (e.g., "Team .MyCustom")
2207
- - **Description**: 20-500 characters explaining team's purpose, capabilities, and use cases
2208
- - **File Name**: `/bmad-core/agent-teams/team-{identifier}.yml`
2209
- - For user teams: `/bmad-core/agent-teams/.team-{identifier}.yml`
2210
-
2211
- ### 3. Select Agents Based on Purpose
2212
-
2213
- #### Discover Available Agents
2214
-
2215
- 1. List all agents from `/agents/` directory
2216
- 2. Review each agent's role and capabilities
2217
- 3. Consider agent synergies and coverage
2218
-
2219
- #### Agent Selection Guidelines
2220
-
2221
- Based on team purpose, recommend agents:
2222
-
2223
- **For Planning & Strategy Teams:**
2224
-
2225
- - `bmad` (required orchestrator)
2226
- - `analyst` - Requirements gathering and research
2227
- - `pm` - Product strategy and documentation
2228
- - `po` - Validation and approval
2229
- - `architect` - Technical planning (if technical planning needed)
2230
-
2231
- **For Design & UX Teams:**
2232
-
2233
- - `bmad` (required orchestrator)
2234
- - `ux-expert` - User experience design
2235
- - `architect` - Frontend architecture
2236
- - `pm` - Product requirements alignment
2237
- - `po` - Design validation
2238
-
2239
- **For Development Teams:**
2240
-
2241
- - `bmad-orchestrator` (required)
2242
- - `sm` - Sprint coordination
2243
- - `dev` - Implementation
2244
- - `qa` - Quality assurance
2245
- - `architect` - Technical guidance
2246
-
2247
- **For Full-Stack Teams:**
2248
-
2249
- - `bmad-orchestrator` (required)
2250
- - `analyst` - Initial planning
2251
- - `pm` - Product management
2252
- - `ux-expert` - UI/UX design (if UI work included)
2253
- - `architect` - System architecture
2254
- - `po` - Validation
2255
- - Additional agents as needed
2256
-
2257
- #### Special Cases
2258
-
2259
- - **Using Wildcard**: If team needs all agents, use `["bmad", "*"]`
2260
- - **Validation**: Schema requires `bmad` in all teams
2261
-
2262
- ### 4. Select Workflows
2263
-
2264
- Based on the schema's workflow enum values and team composition:
2265
-
2266
- 1. **Analyze team capabilities** against available workflows:
2267
-
2268
- - `brownfield-fullstack` - Requires full team with UX
2269
- - `brownfield-service` - Backend-focused team
2270
- - `brownfield-ui` - UI/UX-focused team
2271
- - `greenfield-fullstack` - Full team for new projects
2272
- - `greenfield-service` - Backend team for new services
2273
- - `greenfield-ui` - Frontend team for new UIs
2274
-
2275
- 2. **Match workflows to agents**:
2276
-
2277
- - UI workflows require `ux-expert`
2278
- - Service workflows benefit from `architect` and `dev`
2279
- - All workflows benefit from planning agents (`analyst`, `pm`)
2280
-
2281
- 3. **Apply schema validation rules**:
2282
- - Teams without `ux-expert` shouldn't have UI workflows
2283
- - Teams named "Team No UI" can't have UI workflows
2284
-
2285
- ### 5. Create Team Configuration
2286
-
2287
- Generate the configuration following the schema:
2288
-
2289
- ```yaml
2290
- bundle:
2291
- name: "{Team Name}" # Must match pattern "^Team .+$"
2292
- description: >-
2293
- {20-500 character description explaining purpose,
2294
- capabilities, and ideal use cases}
2295
-
2296
- agents:
2297
- - bmad # Required orchestrator
2298
- - { agent-id-1 }
2299
- - { agent-id-2 }
2300
- # ... additional agents
2301
-
2302
- workflows:
2303
- - { workflow-1 } # From enum list
2304
- - { workflow-2 }
2305
- # ... additional workflows
2306
- ```
2307
-
2308
- ### 6. Validate Team Composition
2309
-
2310
- Before finalizing, verify:
2311
-
2312
- 1. **Role Coverage**: Does the team have all necessary skills for its workflows?
2313
- 2. **Size Optimization**:
2314
- - Minimum: 2 agents (bmad + 1)
2315
- - Recommended: 3-7 agents
2316
- - Maximum with wildcard: bmad + "\*"
2317
- 3. **Workflow Alignment**: Can the selected agents execute all workflows?
2318
- 4. **Schema Compliance**: Configuration matches all schema requirements
2319
-
2320
- ### 7. Integration Recommendations
2321
-
2322
- Document how this team integrates with existing system:
2323
-
2324
- 1. **Complementary Teams**: Which existing teams complement this one?
2325
- 2. **Handoff Points**: Where does this team hand off to others?
2326
- 3. **Use Case Scenarios**: Specific project types ideal for this team
2327
-
2328
- ### 8. Validation and Testing
2329
-
2330
- 1. **Schema Validation**: Ensure configuration matches agent-team-schema.yml
2331
- 2. **Build Validation**: Run `npm run validate`
2332
- 3. **Build Team**: Run `npm run build:team -t {team-name}`
2333
- 4. **Size Check**: Verify output is appropriate for target platform
2334
- 5. **Test Scenarios**: Run sample workflows with the team
2335
-
2336
- ## Example Team Creation
2337
-
2338
- ### Example 1: API Development Team
2339
-
2340
- ```yaml
2341
- bundle:
2342
- name: "Team API"
2343
- description: >-
2344
- Specialized team for API and backend service development. Focuses on
2345
- robust service architecture, implementation, and testing without UI
2346
- components. Ideal for microservices, REST APIs, and backend systems.
2347
-
2348
- agents:
2349
- - bmad
2350
- - analyst
2351
- - architect
2352
- - dev
2353
- - qa
2354
- - po
2355
-
2356
- workflows:
2357
- - greenfield-service
2358
- - brownfield-service
2359
- ```
2360
-
2361
- ### Example 2: Rapid Prototyping Team
2362
-
2363
- ```yaml
2364
- bundle:
2365
- name: "Team Prototype"
2366
- description: >-
2367
- Agile team for rapid prototyping and proof of concept development.
2368
- Combines planning, design, and implementation for quick iterations
2369
- on new ideas and experimental features.
2370
-
2371
- agents:
2372
- - bmad
2373
- - pm
2374
- - ux-expert
2375
- - architect
2376
- - dev
2377
-
2378
- workflows:
2379
- - greenfield-ui
2380
- - greenfield-fullstack
2381
- ```
2382
-
2383
- ## Team Creation Checklist
2384
-
2385
- - [ ] Team purpose clearly defined
2386
- - [ ] Name follows schema pattern "Team {Name}"
2387
- - [ ] Description is 20-500 characters
2388
- - [ ] Includes bmad orchestrator
2389
- - [ ] Agents align with team purpose
2390
- - [ ] Workflows match team capabilities
2391
- - [ ] No conflicting validations (e.g., no-UI team with UI workflows)
2392
- - [ ] Configuration validates against schema
2393
- - [ ] Build completes successfully
2394
- - [ ] Output size appropriate for platform
2395
-
2396
- ## Best Practices
2397
-
2398
- 1. **Start Focused**: Create teams with specific purposes rather than general-purpose teams
2399
- 2. **Consider Workflow**: Order agents by typical workflow sequence
2400
- 3. **Avoid Redundancy**: Don't duplicate roles unless needed
2401
- 4. **Document Rationale**: Explain why each agent is included
2402
- 5. **Test Integration**: Verify team works well with selected workflows
2403
- 6. **Iterate**: Refine team composition based on usage
2404
-
2405
- This schema-driven approach ensures teams are well-structured, purposeful, and integrate seamlessly with the BMAD ecosystem.
2406
- ==================== END: tasks#create-team ====================
2407
-
2408
1927
  ==================== START: tasks#execute-checklist ====================
2409
1928
  # Checklist Validation Task
2410
1929
 
@@ -2510,60 +2029,53 @@ The LLM will:
2510
2029
 
2511
2030
  ## Purpose
2512
2031
 
2513
- To generate a masterful, comprehensive, and optimized prompt that can be used with AI-driven frontend development tools (e.g., Lovable, Vercel v0, or similar) to scaffold or generate significant portions of the frontend application.
2032
+ To generate a masterful, comprehensive, and optimized prompt that can be used with any AI-driven frontend development tool (e.g., Vercel v0, Lovable.ai, or similar) to scaffold or generate significant portions of a frontend application.
2514
2033
 
2515
2034
  ## Inputs
2516
2035
 
2517
- - Completed UI/UX Specification (`front-end-spec-tmpl`)
2518
- - Completed Frontend Architecture Document (`front-end-architecture`)
2519
- - Main System Architecture Document (`architecture` - for API contracts and tech stack)
2520
- - Primary Design Files (Figma, Sketch, etc. - for visual context if the tool can accept it or if descriptions are needed)
2036
+ - Completed UI/UX Specification (`front-end-spec`)
2037
+ - Completed Frontend Architecture Document (`front-end-architecture`) or a full stack combined architecture such as `architecture.md`
2038
+ - Main System Architecture Document (`architecture` - for API contracts and tech stack to give further context)
2521
2039
 
2522
2040
  ## Key Activities & Instructions
2523
2041
 
2524
- 1. **Confirm Target AI Generation Platform:**
2525
-
2526
- - Ask the user to specify which AI frontend generation tool/platform they intend to use (e.g., "Lovable.ai", "Vercel v0", "GPT-4 with direct code generation instructions", etc.).
2527
- - Explain that prompt optimization might differ slightly based on the platform's capabilities and preferred input format.
2528
-
2529
- 2. **Synthesize Inputs into a Structured Prompt:**
2530
-
2531
- - **Overall Project Context:**
2532
- - Briefly state the project's purpose (from brief/PRD).
2533
- - Specify the chosen frontend framework, core libraries, and UI component library (from `front-end-architecture` and main `architecture`).
2534
- - Mention the styling approach (e.g., Tailwind CSS, CSS Modules).
2535
- - **Design System & Visuals:**
2536
- - Reference the primary design files (e.g., Figma link).
2537
- - If the tool doesn't directly ingest design files, describe the overall visual style, color palette, typography, and key branding elements (from `front-end-spec-tmpl`).
2538
- - List any global UI components or design tokens that should be defined or adhered to.
2539
- - **Application Structure & Routing:**
2540
- - Describe the main pages/views and their routes (from `front-end-architecture` - Routing Strategy).
2541
- - Outline the navigation structure (from `front-end-spec-tmpl`).
2542
- - **Key User Flows & Page-Level Interactions:**
2543
- - For a few critical user flows (from `front-end-spec-tmpl`):
2544
- - Describe the sequence of user actions and expected UI changes on each relevant page.
2545
- - Specify API calls to be made (referencing API endpoints from the main `architecture`) and how data should be displayed or used.
2546
- - **Component Generation Instructions (Iterative or Key Components):**
2547
- - Based on the chosen AI tool's capabilities, decide on a strategy:
2548
- - **Option 1 (Scaffolding):** Prompt for the generation of main page structures, layouts, and placeholders for components.
2549
- - **Option 2 (Key Component Generation):** Select a few critical or complex components from the `front-end-architecture` (Component Breakdown) and provide detailed specifications for them (props, state, basic behavior, key UI elements).
2550
- - **Option 3 (Holistic, if tool supports):** Attempt to describe the entire application structure and key components more broadly.
2551
- - <important_note>Advise the user that generating an entire complex application perfectly in one go is rare. Iterative prompting or focusing on sections/key components is often more effective.</important_note>
2552
- - **State Management (High-Level Pointers):**
2553
- - Mention the chosen state management solution (e.g., "Use Redux Toolkit").
2554
- - For key pieces of data, indicate if they should be managed in global state.
2555
- - **API Integration Points:**
2556
- - For pages/components that fetch or submit data, clearly state the relevant API endpoints (from `architecture`) and the expected data shapes (can reference schemas in `data-models` or `api-reference` sections of the architecture doc).
2557
- - **Critical "Don'ts" or Constraints:**
2558
- - e.g., "Do not use deprecated libraries." "Ensure all forms have basic client-side validation."
2559
- - **Platform-Specific Optimizations:**
2560
- - If the chosen AI tool has known best practices for prompting (e.g., specific keywords, structure, level of detail), incorporate them. (This might require the agent to have some general knowledge or to ask the user if they know any such specific prompt modifiers for their chosen tool).
2561
-
2562
- 3. **Present and Refine the Master Prompt:**
2563
- - Output the generated prompt in a clear, copy-pasteable format (e.g., a large code block).
2564
- - Explain the structure of the prompt and why certain information was included.
2565
- - Work with the user to refine the prompt based on their knowledge of the target AI tool and any specific nuances they want to emphasize.
2566
- - <important_note>Remind the user that the generated code from the AI tool will likely require review, testing, and further refinement by developers.</important_note>
2042
+ ### 1. Core Prompting Principles
2043
+
2044
+ Before generating the prompt, you must understand these core principles for interacting with a generative AI for code.
2045
+
2046
+ - **Be Explicit and Detailed**: The AI cannot read your mind. Provide as much detail and context as possible. Vague requests lead to generic or incorrect outputs.
2047
+ - **Iterate, Don't Expect Perfection**: Generating an entire complex application in one go is rare. The most effective method is to prompt for one component or one section at a time, then build upon the results.
2048
+ - **Provide Context First**: Always start by providing the AI with the necessary context, such as the tech stack, existing code snippets, and overall project goals.
2049
+ - **Mobile-First Approach**: Frame all UI generation requests with a mobile-first design mindset. Describe the mobile layout first, then provide separate instructions for how it should adapt for tablet and desktop.
2050
+
2051
+ ### 2. The Structured Prompting Framework
2052
+
2053
+ To ensure the highest quality output, you MUST structure every prompt using the following four-part framework.
2054
+
2055
+ 1. **High-Level Goal**: Start with a clear, concise summary of the overall objective. This orients the AI on the primary task.
2056
+ - _Example: "Create a responsive user registration form with client-side validation and API integration."_
2057
+ 2. **Detailed, Step-by-Step Instructions**: Provide a granular, numbered list of actions the AI should take. Break down complex tasks into smaller, sequential steps. This is the most critical part of the prompt.
2058
+ - _Example: "1. Create a new file named `RegistrationForm.js`. 2. Use React hooks for state management. 3. Add styled input fields for 'Name', 'Email', and 'Password'. 4. For the email field, ensure it is a valid email format. 5. On submission, call the API endpoint defined below."_
2059
+ 3. **Code Examples, Data Structures & Constraints**: Include any relevant snippets of existing code, data structures, or API contracts. This gives the AI concrete examples to work with. Crucially, you must also state what _not_ to do.
2060
+ - _Example: "Use this API endpoint: `POST /api/register`. The expected JSON payload is `{ "name": "string", "email": "string", "password": "string" }`. Do NOT include a 'confirm password' field. Use Tailwind CSS for all styling."_
2061
+ 4. **Define a Strict Scope**: Explicitly define the boundaries of the task. Tell the AI which files it can modify and, more importantly, which files to leave untouched to prevent unintended changes across the codebase.
2062
+ - _Example: "You should only create the `RegistrationForm.js` component and add it to the `pages/register.js` file. Do NOT alter the `Navbar.js` component or any other existing page or component."_
2063
+
2064
+ ### 3. Assembling the Master Prompt
2065
+
2066
+ You will now synthesize the inputs and the above principles into a final, comprehensive prompt.
2067
+
2068
+ 1. **Gather Foundational Context**:
2069
+ - Start the prompt with a preamble describing the overall project purpose, the full tech stack (e.g., Next.js, TypeScript, Tailwind CSS), and the primary UI component library being used.
2070
+ 2. **Describe the Visuals**:
2071
+ - If the user has design files (Figma, etc.), instruct them to provide links or screenshots.
2072
+ - If not, describe the visual style: color palette, typography, spacing, and overall aesthetic (e.g., "minimalist", "corporate", "playful").
2073
+ 3. **Build the Prompt using the Structured Framework**:
2074
+ - Follow the four-part framework from Section 2 to build out the core request, whether it's for a single component or a full page.
2075
+ 4. **Present and Refine**:
2076
+ - Output the complete, generated prompt in a clear, copy-pasteable format (e.g., a large code block).
2077
+ - Explain the structure of the prompt and why certain information was included, referencing the principles above.
2078
+ - <important_note>Conclude by reminding the user that all AI-generated code will require careful human review, testing, and refinement to be considered production-ready.</important_note>
2567
2079
  ==================== END: tasks#generate-ai-frontend-prompt ====================
2568
2080
 
2569
2081
  ==================== START: tasks#index-docs ====================
@@ -2625,7 +2137,7 @@ You are now operating as a Documentation Indexer. Your goal is to ensure all doc
2625
2137
 
2626
2138
  The index should be organized as follows:
2627
2139
 
2628
- ```markdown
2140
+ `````markdown
2629
2141
  # Documentation Index
2630
2142
 
2631
2143
  ## Root Documents
@@ -2657,7 +2169,8 @@ Documents within the `another-folder/` directory:
2657
2169
  ### [Nested Document](./another-folder/document.md)
2658
2170
 
2659
2171
  Description of nested document.
2660
- ```
2172
+
2173
+ ````text
2661
2174
 
2662
2175
  ### Index Entry Format
2663
2176
 
@@ -2667,7 +2180,10 @@ Each entry should follow this format:
2667
2180
  ### [Document Title](relative/path/to/file.md)
2668
2181
 
2669
2182
  Brief description of the document's purpose and contents.
2670
- ```
2183
+ ````
2184
+ `````
2185
+
2186
+ ````
2671
2187
 
2672
2188
  ### Rules of Operation
2673
2189
 
@@ -2745,6 +2261,7 @@ Please provide:
2745
2261
  5. Whether to include hidden files/folders (starting with `.`)
2746
2262
 
2747
2263
  Would you like to proceed with documentation indexing? Please provide the required input above.
2264
+ ````
2748
2265
  ==================== END: tasks#index-docs ====================
2749
2266
 
2750
2267
  ==================== START: tasks#shard-doc ====================
@@ -3123,7 +2640,7 @@ Common patterns to consider:
3123
2640
 
3124
2641
  [[LLM: This is the DEFINITIVE technology selection section. Work with the user to make specific choices:
3125
2642
 
3126
- 1. Review PRD technical assumptions and any preferences from `data#technical-preferences`
2643
+ 1. Review PRD technical assumptions and any preferences from `data#technical-preferences` or an attached `technical-preferences`
3127
2644
  2. For each category, present 2-3 viable options with pros/cons
3128
2645
  3. Make a clear recommendation based on project needs
3129
2646
  4. Get explicit user approval for each selection
@@ -3331,15 +2848,18 @@ Use YAML format for better readability. If no REST API, skip this section.]]
3331
2848
  ```yaml
3332
2849
  openapi: 3.0.0
3333
2850
  info:
3334
- title: { { api_title } }
3335
- version: { { api_version } }
3336
- description: { { api_description } }
3337
-
2851
+ title:
2852
+ '[object Object]': null
2853
+ version:
2854
+ '[object Object]': null
2855
+ description:
2856
+ '[object Object]': null
3338
2857
  servers:
3339
- - url: { { api_base_url } }
3340
- description: { { environment } }
3341
- # ... OpenAPI specification continues
3342
- ```
2858
+ - url:
2859
+ '[object Object]': null
2860
+ description:
2861
+ '[object Object]': null
2862
+ ```text
3343
2863
 
3344
2864
  ^^/CONDITION: has_rest_api^^
3345
2865
 
@@ -3450,7 +2970,7 @@ Get user input on deployment preferences and CI/CD tool choices.]]
3450
2970
 
3451
2971
  ### Environment Promotion Flow
3452
2972
 
3453
- ```
2973
+ ```text
3454
2974
  {{promotion_flow_diagram}}
3455
2975
  ```
3456
2976
 
@@ -4838,100 +4358,6 @@ so that {{benefit}}.
4838
4358
  These replace the standard elicitation options when working on competitive analysis documents.]]
4839
4359
  ==================== END: templates#competitor-analysis-tmpl ====================
4840
4360
 
4841
- ==================== START: templates#expansion-pack-plan-tmpl ====================
4842
- # {Pack Name} Expansion Pack Plan
4843
-
4844
- ## Overview
4845
-
4846
- - **Pack Name**: {pack-identifier}
4847
- - **Display Name**: {Full Expansion Pack Name}
4848
- - **Description**: {Brief description of what this pack does}
4849
- - **Target Domain**: {Industry/domain this serves}
4850
- - **Author**: {Your name/organization}
4851
-
4852
- ## Problem Statement
4853
-
4854
- {What specific challenges does this expansion pack solve?}
4855
-
4856
- ## Target Users
4857
-
4858
- {Who will benefit from this expansion pack?}
4859
-
4860
- ## Components to Create
4861
-
4862
- ### Agents
4863
-
4864
- - [ ] `{pack-name}-orchestrator` - **REQUIRED**: Master orchestrator for {domain} workflows
4865
- - Key commands: {list main commands}
4866
- - Manages: {what it orchestrates}
4867
- - [ ] `{agent-1-name}` - {Role description}
4868
- - Tasks used: {task-1}, {task-2}
4869
- - Templates used: {template-1}
4870
- - Data required: {data-file-1}
4871
- - [ ] `{agent-2-name}` - {Role description}
4872
- - Tasks used: {task-3}
4873
- - Templates used: {template-2}
4874
- - Data required: {data-file-2}
4875
-
4876
- ### Tasks
4877
-
4878
- - [ ] `{task-1}.md` - {Purpose} (used by: {agent})
4879
- - [ ] `{task-2}.md` - {Purpose} (used by: {agent})
4880
- - [ ] `{task-3}.md` - {Purpose} (used by: {agent})
4881
-
4882
- ### Templates
4883
-
4884
- - [ ] `{template-1}-tmpl.md` - {Document type} (used by: {agent/task})
4885
- - [ ] `{template-2}-tmpl.md` - {Document type} (used by: {agent/task})
4886
-
4887
- ### Checklists
4888
-
4889
- - [ ] `{checklist-1}-checklist.md` - {What it validates}
4890
- - [ ] `{checklist-2}-checklist.md` - {What it validates}
4891
-
4892
- ### Data Files Required from User
4893
-
4894
- Users must add these files to `bmad-core/data/`:
4895
-
4896
- - [ ] `{data-file-1}.{ext}` - {Description of required content}
4897
- - Format: {file format}
4898
- - Purpose: {why needed}
4899
- - Example: {brief example}
4900
- - [ ] `{data-file-2}.{ext}` - {Description of required content}
4901
- - Format: {file format}
4902
- - Purpose: {why needed}
4903
- - Example: {brief example}
4904
-
4905
- ## Workflow Overview
4906
-
4907
- 1. {Step 1 - typically starts with orchestrator}
4908
- 2. {Step 2}
4909
- 3. {Step 3}
4910
- 4. {Final output/deliverable}
4911
-
4912
- ## Integration Points
4913
-
4914
- - Depends on core agents: {list any core BMAD agents used}
4915
- - Extends teams: {which teams to update}
4916
-
4917
- ## Success Criteria
4918
-
4919
- - [ ] All components created and cross-referenced
4920
- - [ ] No orphaned task/template references
4921
- - [ ] Data requirements clearly documented
4922
- - [ ] Orchestrator provides clear workflow
4923
- - [ ] README includes setup instructions
4924
-
4925
- ## User Approval
4926
-
4927
- - [ ] Plan reviewed by user
4928
- - [ ] Approval to proceed with implementation
4929
-
4930
- ---
4931
-
4932
- **Next Steps**: Once approved, proceed with Phase 3 implementation starting with the orchestrator agent.
4933
- ==================== END: templates#expansion-pack-plan-tmpl ====================
4934
-
4935
4361
  ==================== START: templates#front-end-architecture-tmpl ====================
4936
4362
  # {{Project Name}} Frontend Architecture Document
4937
4363
 
@@ -5634,9 +5060,9 @@ Document the choice and key services that will be used.]]
5634
5060
 
5635
5061
  Use appropriate diagram type for clarity.]]
5636
5062
 
5637
- ```mermaid
5063
+ ````mermaid
5638
5064
  {{architecture_diagram}}
5639
- ```
5065
+ ```text
5640
5066
 
5641
5067
  ### Architectural Patterns
5642
5068
 
@@ -5747,7 +5173,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
5747
5173
  model_interface;
5748
5174
  }
5749
5175
  }
5750
- ```
5176
+ ````
5751
5177
 
5752
5178
  **Relationships:**
5753
5179
 
@@ -5771,7 +5197,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
5771
5197
 
5772
5198
  **TypeScript Interface:**
5773
5199
 
5774
- ```typescript
5200
+ ````typescript
5775
5201
  interface User {
5776
5202
  id: string;
5777
5203
  email: string;
@@ -5787,7 +5213,7 @@ interface UserProfile {
5787
5213
  bio?: string;
5788
5214
  preferences: Record<string, any>;
5789
5215
  }
5790
- ```
5216
+ ```text
5791
5217
 
5792
5218
  **Relationships:**
5793
5219
 
@@ -5811,27 +5237,30 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
5811
5237
 
5812
5238
  ^^CONDITION: has_rest_api^^
5813
5239
 
5814
- ```yaml
5240
+ ```yml
5815
5241
  openapi: 3.0.0
5816
5242
  info:
5817
- title: { { api_title } }
5818
- version: { { api_version } }
5819
- description: { { api_description } }
5820
-
5243
+ title:
5244
+ '[object Object]': null
5245
+ version:
5246
+ '[object Object]': null
5247
+ description:
5248
+ '[object Object]': null
5821
5249
  servers:
5822
- - url: { { api_base_url } }
5823
- description: { { environment } }
5824
- # ... OpenAPI specification continues
5825
- ```
5250
+ - url:
5251
+ '[object Object]': null
5252
+ description:
5253
+ '[object Object]': null
5254
+ ````
5826
5255
 
5827
5256
  ^^/CONDITION: has_rest_api^^
5828
5257
 
5829
5258
  ^^CONDITION: has_graphql_api^^
5830
5259
 
5831
- ```graphql
5260
+ ````graphql
5832
5261
  # GraphQL Schema
5833
5262
  {{graphql_schema}}
5834
- ```
5263
+ ```text
5835
5264
 
5836
5265
  ^^/CONDITION: has_graphql_api^^
5837
5266
 
@@ -5844,7 +5273,7 @@ servers:
5844
5273
  trpc_routers;
5845
5274
  }
5846
5275
  }
5847
- ```
5276
+ ````
5848
5277
 
5849
5278
  ^^/CONDITION: has_trpc_api^^
5850
5279
 
@@ -5989,19 +5418,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
5989
5418
 
5990
5419
  **Component Organization:**
5991
5420
 
5992
- ```
5421
+ `````text
5993
5422
  {{component_structure}}
5994
- ```
5423
+ ```text
5995
5424
 
5996
5425
  **Component Template:**
5997
5426
 
5998
- ```typescript
5427
+ ````typescript
5999
5428
  {
6000
5429
  {
6001
5430
  component_template;
6002
5431
  }
6003
5432
  }
6004
- ```
5433
+ ```text
6005
5434
 
6006
5435
  ### State Management Architecture
6007
5436
 
@@ -6015,7 +5444,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6015
5444
  state_structure;
6016
5445
  }
6017
5446
  }
6018
- ```
5447
+ `````
6019
5448
 
6020
5449
  **State Management Patterns:**
6021
5450
 
@@ -6028,19 +5457,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6028
5457
 
6029
5458
  **Route Organization:**
6030
5459
 
6031
- ```
5460
+ ```text
6032
5461
  {{route_structure}}
6033
- ```
5462
+ ```text
6034
5463
 
6035
5464
  **Protected Route Pattern:**
6036
5465
 
6037
- ```typescript
5466
+ ````typescript
6038
5467
  {
6039
5468
  {
6040
5469
  protected_route_example;
6041
5470
  }
6042
5471
  }
6043
- ```
5472
+ ```text
6044
5473
 
6045
5474
  ### Frontend Services Layer
6046
5475
 
@@ -6054,17 +5483,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6054
5483
  api_client_setup;
6055
5484
  }
6056
5485
  }
6057
- ```
5486
+ ````
6058
5487
 
6059
5488
  **Service Example:**
6060
5489
 
6061
- ```typescript
5490
+ ````typescript
6062
5491
  {
6063
5492
  {
6064
5493
  service_example;
6065
5494
  }
6066
5495
  }
6067
- ```
5496
+ ```text
6068
5497
 
6069
5498
  ## Backend Architecture
6070
5499
 
@@ -6079,9 +5508,11 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6079
5508
  ^^CONDITION: serverless^^
6080
5509
  **Function Organization:**
6081
5510
 
6082
- ```
5511
+ ````
5512
+
6083
5513
  {{function_structure}}
6084
- ```
5514
+
5515
+ ````text
6085
5516
 
6086
5517
  **Function Template:**
6087
5518
 
@@ -6091,26 +5522,26 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6091
5522
  function_template;
6092
5523
  }
6093
5524
  }
6094
- ```
5525
+ ````
6095
5526
 
6096
5527
  ^^/CONDITION: serverless^^
6097
5528
 
6098
5529
  ^^CONDITION: traditional_server^^
6099
5530
  **Controller/Route Organization:**
6100
5531
 
6101
- ```
5532
+ `````text
6102
5533
  {{controller_structure}}
6103
- ```
5534
+ ```text
6104
5535
 
6105
5536
  **Controller Template:**
6106
5537
 
6107
- ```typescript
5538
+ ````typescript
6108
5539
  {
6109
5540
  {
6110
5541
  controller_template;
6111
5542
  }
6112
5543
  }
6113
- ```
5544
+ ```text
6114
5545
 
6115
5546
  ^^/CONDITION: traditional_server^^
6116
5547
 
@@ -6122,17 +5553,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6122
5553
 
6123
5554
  ```sql
6124
5555
  {{database_schema}}
6125
- ```
5556
+ `````
6126
5557
 
6127
5558
  **Data Access Layer:**
6128
5559
 
6129
- ```typescript
5560
+ ````typescript
6130
5561
  {
6131
5562
  {
6132
5563
  repository_pattern;
6133
5564
  }
6134
5565
  }
6135
- ```
5566
+ ```text
6136
5567
 
6137
5568
  ### Authentication and Authorization
6138
5569
 
@@ -6142,17 +5573,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6142
5573
 
6143
5574
  ```mermaid
6144
5575
  {{auth_flow_diagram}}
6145
- ```
5576
+ ````
6146
5577
 
6147
5578
  **Middleware/Guards:**
6148
5579
 
6149
- ```typescript
5580
+ ````typescript
6150
5581
  {
6151
5582
  {
6152
5583
  auth_middleware;
6153
5584
  }
6154
5585
  }
6155
- ```
5586
+ ```text
6156
5587
 
6157
5588
  ## Unified Project Structure
6158
5589
 
@@ -6212,7 +5643,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6212
5643
  ├── package.json # Root package.json
6213
5644
  ├── {{monorepo_config}} # Monorepo configuration
6214
5645
  └── README.md
6215
- ```
5646
+ ````
6216
5647
 
6217
5648
  @{example: vercel_structure}
6218
5649
  apps/
@@ -6234,19 +5665,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6234
5665
 
6235
5666
  **Prerequisites:**
6236
5667
 
6237
- ```bash
5668
+ ````bash
6238
5669
  {{prerequisites_commands}}
6239
- ```
5670
+ ```text
6240
5671
 
6241
5672
  **Initial Setup:**
6242
5673
 
6243
5674
  ```bash
6244
5675
  {{setup_commands}}
6245
- ```
5676
+ ````
6246
5677
 
6247
5678
  **Development Commands:**
6248
5679
 
6249
- ```bash
5680
+ ````bash
6250
5681
  # Start all services
6251
5682
  {{start_all_command}}
6252
5683
 
@@ -6258,7 +5689,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6258
5689
 
6259
5690
  # Run tests
6260
5691
  {{test_commands}}
6261
- ```
5692
+ ```text
6262
5693
 
6263
5694
  ### Environment Configuration
6264
5695
 
@@ -6273,7 +5704,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6273
5704
 
6274
5705
  # Shared
6275
5706
  {{shared_env_vars}}
6276
- ```
5707
+ ````
6277
5708
 
6278
5709
  ## Deployment Architecture
6279
5710
 
@@ -6296,9 +5727,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6296
5727
 
6297
5728
  ### CI/CD Pipeline
6298
5729
 
6299
- ```yaml
6300
- { { cicd_pipeline_config } }
6301
- ```
5730
+ ````yaml
5731
+ '[object Object]': null
5732
+ ```text
6302
5733
 
6303
5734
  ### Environments
6304
5735
 
@@ -6356,33 +5787,42 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6356
5787
 
6357
5788
  ### Testing Pyramid
6358
5789
 
6359
- ```
5790
+ ````
5791
+
6360
5792
  E2E Tests
6361
5793
  / \
6362
5794
  Integration Tests
6363
- / \
6364
- Frontend Unit Backend Unit
6365
- ```
5795
+
5796
+ / \
5797
+ Frontend Unit Backend Unit
5798
+
5799
+ ```text
6366
5800
 
6367
5801
  ### Test Organization
6368
5802
 
6369
5803
  **Frontend Tests:**
6370
5804
 
6371
5805
  ```
5806
+
6372
5807
  {{frontend_test_structure}}
6373
- ```
5808
+
5809
+ ````text
6374
5810
 
6375
5811
  **Backend Tests:**
6376
5812
 
6377
- ```
5813
+ ```text
5814
+
6378
5815
  {{backend_test_structure}}
6379
- ```
5816
+
5817
+ ```text
6380
5818
 
6381
5819
  **E2E Tests:**
6382
5820
 
6383
- ```
5821
+ ````
5822
+
6384
5823
  {{e2e_test_structure}}
6385
- ```
5824
+
5825
+ ````text
6386
5826
 
6387
5827
  ### Test Examples
6388
5828
 
@@ -6394,17 +5834,17 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6394
5834
  frontend_test_example;
6395
5835
  }
6396
5836
  }
6397
- ```
5837
+ ````
6398
5838
 
6399
5839
  **Backend API Test:**
6400
5840
 
6401
- ```typescript
5841
+ ````typescript
6402
5842
  {
6403
5843
  {
6404
5844
  backend_test_example;
6405
5845
  }
6406
5846
  }
6407
- ```
5847
+ ```text
6408
5848
 
6409
5849
  **E2E Test:**
6410
5850
 
@@ -6414,7 +5854,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6414
5854
  e2e_test_example;
6415
5855
  }
6416
5856
  }
6417
- ```
5857
+ ````
6418
5858
 
6419
5859
  ## Coding Standards
6420
5860
 
@@ -6455,9 +5895,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6455
5895
 
6456
5896
  ### Error Flow
6457
5897
 
6458
- ```mermaid
5898
+ ````mermaid
6459
5899
  {{error_flow_diagram}}
6460
- ```
5900
+ ```text
6461
5901
 
6462
5902
  ### Error Response Format
6463
5903
 
@@ -6471,17 +5911,17 @@ interface ApiError {
6471
5911
  requestId: string;
6472
5912
  };
6473
5913
  }
6474
- ```
5914
+ ````
6475
5915
 
6476
5916
  ### Frontend Error Handling
6477
5917
 
6478
- ```typescript
5918
+ ````typescript
6479
5919
  {
6480
5920
  {
6481
5921
  frontend_error_handler;
6482
5922
  }
6483
5923
  }
6484
- ```
5924
+ ```text
6485
5925
 
6486
5926
  ### Backend Error Handling
6487
5927
 
@@ -6491,7 +5931,7 @@ interface ApiError {
6491
5931
  backend_error_handler;
6492
5932
  }
6493
5933
  }
6494
- ```
5934
+ ````
6495
5935
 
6496
5936
  ## Monitoring and Observability
6497
5937
 
@@ -6525,38 +5965,6 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
6525
5965
  ## Checklist Results Report
6526
5966
 
6527
5967
  [[LLM: Before running the checklist, offer to output the full architecture document. Once user confirms, execute the `architect-checklist` and populate results here.]]
6528
-
6529
- ## Next Steps
6530
-
6531
- [[LLM: Provide specific next steps for implementation.]]
6532
-
6533
- ### Implementation Order
6534
-
6535
- 1. **Environment Setup**
6536
-
6537
- - Initialize monorepo structure
6538
- - Configure development environment
6539
- - Set up version control
6540
-
6541
- 2. **Foundation (Epic 1)**
6542
-
6543
- - Implement authentication flow
6544
- - Set up database schema
6545
- - Create basic API structure
6546
- - Implement core UI components
6547
-
6548
- 3. **Feature Development**
6549
- - Follow story sequence from PRD
6550
- - Maintain type safety across stack
6551
- - Write tests as you go
6552
-
6553
- ### Developer Handoff Prompts
6554
-
6555
- **For Scrum Master:**
6556
- "Create stories for {{Project Name}} using the PRD at docs/prd.md and this fullstack architecture at docs/fullstack-architecture.md. Focus on Epic 1 implementation."
6557
-
6558
- **For Developer:**
6559
- "Implement Story 1.1 from docs/stories/epic1/story-1.1.md using the fullstack architecture at docs/fullstack-architecture.md. Follow the coding standards and use the defined tech stack."
6560
5968
  ==================== END: templates#fullstack-architecture-tmpl ====================
6561
5969
 
6562
5970
  ==================== START: templates#market-research-tmpl ====================
@@ -6914,7 +6322,7 @@ These replace the standard elicitation options when working on market research d
6914
6322
 
6915
6323
  [[LLM: Gather technical decisions that will guide the Architect. Steps:
6916
6324
 
6917
- 1. Check if `data#technical-preferences` file exists - use it to pre-populate choices
6325
+ 1. Check if `data#technical-preferences` or an attached `technical-preferences` file exists - use it to pre-populate choices
6918
6326
  2. Ask user about: languages, frameworks, starter templates, libraries, APIs, deployment targets
6919
6327
  3. For unknowns, offer guidance based on project goals and MVP scope
6920
6328
  4. Document ALL technical choices with rationale (why this choice fits the project)
@@ -7309,12 +6717,12 @@ Manual Test Steps: [[LLM: Include how if possible the user can manually test the
7309
6717
 
7310
6718
  ### Completion Notes List
7311
6719
 
7312
- [[LLM: (SM Agent) When Drafting Story, leave next prompt in place for dev agent to remove and update]]
6720
+ [[LLM: (SM Agent) When Drafting Story, leave next prompt in place for dev agent to remove and update - remove this line to the SM]]
7313
6721
  [[LLM: (Dev Agent) Anything the SM needs to know that deviated from the story that might impact drafting the next story.]]
7314
6722
 
7315
6723
  ### Change Log
7316
6724
 
7317
- [[LLM: (SM Agent) When Drafting Story, leave next prompt in place for dev agent to remove and update]]
6725
+ [[LLM: (SM Agent) When Drafting Story, leave next prompt in place for dev agent to remove and update- remove this line to the SM]]
7318
6726
  [[LLM: (Dev Agent) Track document versions and changes during development that deviate from story dev start]]
7319
6727
 
7320
6728
  | Date | Version | Description | Author |
@@ -9115,7 +8523,18 @@ You are the "Vibe CEO" - thinking like a CEO with unlimited resources and a sing
9115
8523
  7. **START_SMALL_SCALE_FAST**: Test concepts, then expand.
9116
8524
  8. **EMBRACE_THE_CHAOS**: Adapt and overcome challenges.
9117
8525
 
9118
- ## TODO: ADD MORE CONTENT ONCE STABLE ALPHA BUILD
8526
+ ## IDE Development Workflow
8527
+
8528
+ 1. Shard the PRD (And Architecture documents if they exist also based on workflow type) using the Doc Shard task. The BMad-Master agent can help you do this. You will select the task, provide the doc to shard and the output folder. for example: `BMad Master, please Shard the docs/prd.md to the doc/prd/ folder` - this should ask you to use the md-tree-parser which is recommended, but either way shoudl result in multiple documents being created in the folder docs/prd.
8529
+ 2. If you have fullstack, front end and or back end architecture documents you will want to follow the same thing, but shard all of these to an architecture folder instead of a prd folder.
8530
+ 3. Ensure that you have at least one epic-n.md file in your prd folder, with the stories in order to develop.
8531
+ 4. The docs or architecture folder or prd folder should have a source tree document and coding standards at a minimum. These are used by the dev agent, and the many other sharded docs are used by the SM agent.
8532
+ 5. Use a new chat window to allow the SM agent to `draft the next story`.
8533
+ 6. If you agree the story is correct, mark it as approved in the status field, and then start a new chat window with the dev agent.
8534
+ 7. Ask the dev agent to implement the next story. If you draft the story file into the chat it will save time for the dev to have to find what the next one is. The dev should follow the tasks and subtasks marking them off as they are completed. The dev agent will also leave notes potentially for the SM to know about any deviations that might have occured to help draft the next story.
8535
+ 8. Once complete and you have verified, mark it done, and start a new chat. Ask the SM to draft the next story - repeating the cycle.
8536
+
8537
+ With this work flow, there is only 1 story in progress at a time, worked sequentially.
9119
8538
  ==================== END: data#bmad-kb ====================
9120
8539
 
9121
8540
  ==================== START: data#technical-preferences ====================
@@ -9280,8 +8699,7 @@ The BMAD orchestrator MUST read the available workflows from the current team co
9280
8699
  **Critical Distinction**:
9281
8700
 
9282
8701
  - When asked "what workflows are available?", show ONLY the workflows defined in the current team bundle's configuration
9283
- - The create-\* tasks (create-agent, create-team, etc.) are for CREATING new configurations, not for listing what's available in the current session
9284
- - Use `/agent-list` to show agents in the current bundle, NOT the create-agent task
8702
+ - Use `/agent-list` to show agents in the current bundle
9285
8703
  - Use `/workflows` to show workflows in the current bundle, NOT any creation tasks
9286
8704
 
9287
8705
  ### Workflow Descriptions
@@ -9319,7 +8737,7 @@ Available workflows for [Team Name]:
9319
8737
  [... etc. ...]
9320
8738
 
9321
8739
  Use /workflow-start {number or id} to begin a workflow.
9322
- ```
8740
+ ```text
9323
8741
 
9324
8742
  ### /workflow-start {workflow-id}
9325
8743
 
@@ -9361,7 +8779,7 @@ BMad: I see you've completed Discovery and part of Product Planning.
9361
8779
  - UX Strategy with Sally (ux-expert)
9362
8780
 
9363
8781
  Would you like me to load Sally to continue?
9364
- ```
8782
+ ```text
9365
8783
 
9366
8784
  ### /workflow-next
9367
8785
 
@@ -9402,11 +8820,11 @@ workflow_state:
9402
8820
  project-brief:
9403
8821
  status: completed
9404
8822
  created_by: analyst
9405
- timestamp: 2024-01-15T10:30:00Z
8823
+ timestamp: 2024-01-15T10:30:00.000Z
9406
8824
  prd:
9407
8825
  status: in-progress
9408
8826
  created_by: pm
9409
- started: 2024-01-15T11:00:00Z
8827
+ started: 2024-01-15T11:00:00.000Z
9410
8828
  ```
9411
8829
 
9412
8830
  ### 4. Workflow Interruption Handling
@@ -9431,7 +8849,7 @@ BMad: I see you have a PRD and architecture document. Based on these artifacts,
9431
8849
  - Load Sarah (Product Owner) to validate all artifacts
9432
8850
 
9433
8851
  Would you like to continue with this workflow?
9434
- ```
8852
+ ```text
9435
8853
 
9436
8854
  ## Workflow Context Passing
9437
8855
 
@@ -9465,9 +8883,9 @@ Some workflows may have multiple paths:
9465
8883
 
9466
8884
  ```yaml
9467
8885
  conditional_paths:
9468
- - condition: "project_type == 'mobile'"
8886
+ - condition: project_type == 'mobile'
9469
8887
  next_stage: mobile-specific-design
9470
- - condition: "project_type == 'web'"
8888
+ - condition: project_type == 'web'
9471
8889
  next_stage: web-architecture
9472
8890
  - default: fullstack-architecture
9473
8891
  ```