diff --git a/.github/workflows/bundle-latest.yaml b/.github/workflows/bundle-latest.yaml deleted file mode 100644 index 7c49cb24..00000000 --- a/.github/workflows/bundle-latest.yaml +++ /dev/null @@ -1,330 +0,0 @@ -name: Publish Latest Bundles - -on: - push: - branches: [main] - workflow_dispatch: {} - -permissions: - contents: write - -jobs: - bundle-and-publish: - if: ${{ false }} # Temporarily disabled while web bundles are paused. - runs-on: ubuntu-latest - steps: - - name: Checkout BMAD-METHOD - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version-file: ".nvmrc" - cache: npm - - - name: Install dependencies - run: npm ci - - - name: Generate bundles - run: npm run bundle - - - name: Create bundle distribution structure - run: | - mkdir -p dist/bundles - - # Copy web bundles (XML files from npm run bundle output) - cp -r web-bundles/* dist/bundles/ 2>/dev/null || true - - # Verify bundles were copied (fail if completely empty) - if [ ! "$(ls -A dist/bundles)" ]; then - echo "❌ ERROR: No bundles found in dist/bundles/" - echo "This likely means 'npm run bundle' failed or bundles weren't generated" - exit 1 - fi - - # Count bundles per module - for module in bmm bmb cis bmgd; do - if [ -d "dist/bundles/$module/agents" ]; then - COUNT=$(find dist/bundles/$module/agents -name '*.xml' 2>/dev/null | wc -l) - echo "✅ $module: $COUNT agent bundles" - fi - done - - # Generate index.html for each agents directory (fixes directory browsing) - for module in bmm bmb cis bmgd; do - if [ -d "dist/bundles/$module/agents" ]; then - cat > "dist/bundles/$module/agents/index.html" << 'DIREOF' - - - - MODULE_NAME Agents - - - -

MODULE_NAME Agents

- -

← Back to all modules

- - - DIREOF - - # Replace MODULE_NAME - sed -i "s/MODULE_NAME/${module^^}/g" "dist/bundles/$module/agents/index.html" - - # Generate agent links - LINKS="" - for file in dist/bundles/$module/agents/*.xml; do - if [ -f "$file" ]; then - name=$(basename "$file" .xml) - LINKS="$LINKS
  • $name
  • \n" - fi - done - sed -i "s|AGENT_LINKS|$LINKS|" "dist/bundles/$module/agents/index.html" - fi - done - - # Create zip archives per module - mkdir -p dist/bundles/downloads - for module in bmm bmb cis bmgd; do - if [ -d "dist/bundles/$module" ]; then - (cd dist/bundles && zip -r downloads/$module-agents.zip $module/) - echo "✅ Created $module-agents.zip" - fi - done - - # Generate index.html dynamically based on actual bundles - TIMESTAMP=$(date -u +"%Y-%m-%d %H:%M UTC") - COMMIT_SHA=$(git rev-parse --short HEAD) - - # Function to generate agent links for a module - generate_agent_links() { - local module=$1 - local agent_dir="dist/bundles/$module/agents" - - if [ ! -d "$agent_dir" ]; then - echo "" - return - fi - - local links="" - local count=0 - - # Find all XML files and generate links - for xml_file in "$agent_dir"/*.xml; do - if [ -f "$xml_file" ]; then - local agent_name=$(basename "$xml_file" .xml) - # Convert filename to display name (pm -> PM, tech-writer -> Tech Writer) - local display_name=$(echo "$agent_name" | sed 's/-/ /g' | awk '{for(i=1;i<=NF;i++) {if(length($i)==2) $i=toupper($i); else $i=toupper(substr($i,1,1)) tolower(substr($i,2));}}1') - - if [ $count -gt 0 ]; then - links="$links | " - fi - links="$links$display_name" - count=$((count + 1)) - fi - done - - echo "$links" - } - - # Generate agent links for each module - BMM_LINKS=$(generate_agent_links "bmm") - CIS_LINKS=$(generate_agent_links "cis") - BMGD_LINKS=$(generate_agent_links "bmgd") - - # Count agents for bulk downloads - BMM_COUNT=$(find dist/bundles/bmm/agents -name '*.xml' 2>/dev/null | wc -l | tr -d ' ') - CIS_COUNT=$(find dist/bundles/cis/agents -name '*.xml' 2>/dev/null | wc -l | tr -d ' ') - BMGD_COUNT=$(find dist/bundles/bmgd/agents -name '*.xml' 2>/dev/null | wc -l | tr -d ' ') - - # Create index.html - cat > dist/bundles/index.html << EOF - - - - BMAD Bundles - Latest - - - - -

    BMAD Web Bundles - Latest (Main Branch)

    - -
    - ⚠️ Latest Build (Unstable)
    - These bundles are built from the latest main branch commit. For stable releases, visit - GitHub Releases. -
    - -

    Last Updated: $TIMESTAMP

    -

    Commit: $COMMIT_SHA

    - -

    Available Modules

    - - EOF - - # Add BMM section if agents exist - if [ -n "$BMM_LINKS" ]; then - cat >> dist/bundles/index.html << EOF -
    -

    BMM (BMad Method)

    -
    - $BMM_LINKS
    - 📁 Browse All | 📦 Download Zip -
    -
    - - EOF - fi - - # Add CIS section if agents exist - if [ -n "$CIS_LINKS" ]; then - cat >> dist/bundles/index.html << EOF -
    -

    CIS (Creative Intelligence Suite)

    -
    - $CIS_LINKS
    - 📁 Browse Agents | 📦 Download Zip -
    -
    - - EOF - fi - - # Add BMGD section if agents exist - if [ -n "$BMGD_LINKS" ]; then - cat >> dist/bundles/index.html << EOF -
    -

    BMGD (Game Development)

    -
    - $BMGD_LINKS
    - 📁 Browse Agents | 📦 Download Zip -
    -
    - - EOF - fi - - # Add bulk downloads section - cat >> dist/bundles/index.html << EOF -

    Bulk Downloads

    -

    Download all agents for a module as a zip archive:

    - - -

    Usage

    -

    Copy the raw XML URL and paste into your AI platform's custom instructions or project knowledge.

    -

    Example: https://raw.githubusercontent.com/bmad-code-org/bmad-bundles/main/bmm/agents/pm.xml

    - -

    Installation (Recommended)

    -

    For full IDE integration with slash commands, use the installer:

    -
    npx bmad-method@alpha install
    - - - - - EOF - - - name: Checkout bmad-bundles repo - uses: actions/checkout@v4 - with: - repository: bmad-code-org/bmad-bundles - path: bmad-bundles - token: ${{ secrets.BUNDLES_PAT }} - - - name: Update bundles - run: | - # Clear old bundles - rm -rf bmad-bundles/* - - # Copy new bundles - cp -r dist/bundles/* bmad-bundles/ - - # Create .nojekyll for GitHub Pages - touch bmad-bundles/.nojekyll - - # Create README - cat > bmad-bundles/README.md << 'EOF' - # BMAD Web Bundles (Latest) - - **⚠️ Unstable Build**: These bundles are auto-generated from the latest `main` branch. - - For stable releases, visit [GitHub Releases](https://github.com/bmad-code-org/BMAD-METHOD/releases/latest). - - ## Usage - - Copy raw markdown URLs for use in AI platforms: - - - Claude Code: `https://raw.githubusercontent.com/bmad-code-org/bmad-bundles/main/claude-code/sub-agents/{agent}.md` - - ChatGPT: `https://raw.githubusercontent.com/bmad-code-org/bmad-bundles/main/chatgpt/sub-agents/{agent}.md` - - Gemini: `https://raw.githubusercontent.com/bmad-code-org/bmad-bundles/main/gemini/sub-agents/{agent}.md` - - ## Browse - - Visit [https://bmad-code-org.github.io/bmad-bundles/](https://bmad-code-org.github.io/bmad-bundles/) to browse bundles. - - ## Installation (Recommended) - - For full IDE integration: - ```bash - npx bmad-method@alpha install - ``` - - --- - - Auto-updated by [BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD) on every main branch merge. - EOF - - - name: Commit and push to bmad-bundles - run: | - cd bmad-bundles - git config user.name "github-actions[bot]" - git config user.email "github-actions[bot]@users.noreply.github.com" - - git add . - - if git diff --staged --quiet; then - echo "No changes to bundles, skipping commit" - else - COMMIT_SHA=$(cd .. && git rev-parse --short HEAD) - git commit -m "Update bundles from BMAD-METHOD@${COMMIT_SHA}" - git push - echo "✅ Bundles published to GitHub Pages" - fi - - - name: Summary - run: | - echo "## 🎉 Bundles Published!" >> $GITHUB_STEP_SUMMARY - echo "" >> $GITHUB_STEP_SUMMARY - echo "**Latest bundles** available at:" >> $GITHUB_STEP_SUMMARY - echo "- 🌐 Browse: https://bmad-code-org.github.io/bmad-bundles/" >> $GITHUB_STEP_SUMMARY - echo "- 📦 Raw files: https://github.com/bmad-code-org/bmad-bundles" >> $GITHUB_STEP_SUMMARY - echo "" >> $GITHUB_STEP_SUMMARY - echo "**Commit**: ${{ github.sha }}" >> $GITHUB_STEP_SUMMARY diff --git a/.github/workflows/manual-release.yaml b/.github/workflows/manual-release.yaml index 4f9808fa..03f6695f 100644 --- a/.github/workflows/manual-release.yaml +++ b/.github/workflows/manual-release.yaml @@ -6,11 +6,11 @@ on: version_bump: description: Version bump type required: true - default: alpha + default: beta type: choice options: - - alpha - beta + - alpha - patch - minor - major @@ -158,9 +158,12 @@ jobs: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} run: | VERSION="${{ steps.version.outputs.new_version }}" - if [[ "$VERSION" == *"alpha"* ]] || [[ "$VERSION" == *"beta"* ]]; then - echo "Publishing prerelease version with --tag alpha" + if [[ "$VERSION" == *"alpha"* ]]; then + echo "Publishing alpha prerelease version with --tag alpha" npm publish --tag alpha + elif [[ "$VERSION" == *"beta"* ]]; then + echo "Publishing beta prerelease version with --tag latest" + npm publish --tag latest else echo "Publishing stable version with --tag latest" npm publish --tag latest diff --git a/CHANGELOG.md b/CHANGELOG.md index b29c1008..ccc9ed7c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,418 +1,92 @@ # Changelog -## [6.1.0-alpha.23] +## [6.0.0-Beta.0] -**Release: January 25, 2026** +**Release: January 2026 - Alpha to Beta Transition** -Merged with upstream 6.0.0-alpha.23 and added comprehensive story/epic revalidation and ghost feature detection for quality assurance. +### 🎉 Beta Release -### 🔍 Story/Epic Revalidation +- **Transition from Alpha to Beta**: BMad Method is now in Beta! This marks a significant milestone in the framework's development +- **NPM Default Tag**: Beta versions are now published with the `latest` tag, making `npx bmad-method` serve the beta version by default -**NEW:** Verify checkbox accuracy by re-validating against actual codebase implementation. +### 🌟 Key Highlights -**Use Case:** "I'm uncertain about the real status of some stories and epics - would love a re-check" +1. **bmad-help**: Revolutionary AI-powered guidance system replaces the alpha workflow-init and workflow tracking — introduces full AI intelligence to guide users through workflows, commands, and project context +2. **Module Ecosystem Expansion**: bmad-builder, CIS (Creative Intelligence Suite), and Game Dev Studio moved to separate repositories for focused development +3. **Installer Consolidation**: Unified installer architecture with standardized command naming (`bmad-dash-case.md` or `bmad-*-agent-*.md`) +4. **Windows Compatibility**: Complete migration from Inquirer.js to @clack/prompts for reliable cross-platform support -**Features:** -- `/revalidate-story` (RVS): Single story verification with optional gap filling - - Clears all checkboxes and starts fresh - - Verifies each AC/Task/DoD against codebase (Glob/Grep/Read) - - Re-checks verified items: ✅ complete, 🔶 partial, ❌ missing - - Reports accuracy: before % vs after % (find over/under-reporting) - - Optional: Automatically fill missing gaps and commit +### 🚀 Major Features -- `/revalidate-epic` (RVE): Batch revalidation with semaphore pattern - - Revalidates all stories in an epic (parallel workers) - - Epic-wide health score and gap summary - - Groups stories by completion % (complete/mostly/partial/incomplete) +**bmad-help - Intelligent Guidance System:** -**Token Costs:** -- Verify-only: ~30-45K tokens per story -- Verify-and-fill (20% gaps): ~45-65K tokens -- vs full re-implementation: ~80-120K tokens -- **Savings: 40-60%** when gaps <30% +- **Replaces**: workflow-init and legacy workflow tracking +- **AI-Powered**: Full context awareness of installed modules, workflows, agents, and commands +- **Dynamic Discovery**: Automatically catalogs all available workflows from installed modules +- **Intelligent Routing**: Guides users to the right workflow or agent based on their goal +- **IDE Integration**: Generates proper IDE command files for all discovered workflows -**Usage:** -```bash -# Verify single story -/revalidate-story story_file=path/to/story.md +**Module Restructuring:** -# Verify and fill gaps -/revalidate-story story_file=path/to/story.md fill_gaps=true +| Module | Status | New Location | +| ------------------------------------- | ------------------------------------------------- | ------------------------------------------------------- | +| **bmad-builder** | Near beta, with docs and walkthroughs coming soon | `bmad-code-org/bmad-builder` | +| **CIS** (Creative Intelligence Suite) | Published as npm package | `bmad-code-org/bmad-module-creative-intelligence-suite` | +| **Game Dev Studio** | Published as npm package | `bmad-code-org/bmad-module-game-dev-studio` | -# Revalidate entire epic -/revalidate-epic epic_number=2 fill_gaps=true max_concurrent=5 -``` +### 🔧 Installer & CLI Improvements -### 👻 Ghost Feature Detector (Reverse Gap Analysis) +**UnifiedInstaller Architecture:** -**NEW:** Find orphaned code that has no corresponding story documentation. +- All IDE installers now use a common `UnifiedInstaller` class +- Standardized command naming conventions: + - Workflows: `bmad-module-workflow-name.md` + - Agents: `bmad-module-agent-name.md` + - Tasks: `bmad-task-name.md` + - Tools: `bmad-tool-name.md` +- External module installation from npm with progress indicators +- Module removal on unselect with confirmation -**Problem:** Vibe-coded features or manual additions that bypassed the story process accumulate as "ghost features" - functionality that works but isn't documented, making the codebase unauditable. +**Windows Compatibility Fix:** -**Features:** -- `/ghost-features` (GFD): Reverse gap analysis - - Scans codebase for: Components, API endpoints, DB tables, Services - - Cross-references with ALL stories (File Lists, Tasks, ACs) - - Identifies orphans (code with no story) - - Classifies by severity: CRITICAL → HIGH → MEDIUM → LOW - - Generates backfill story drafts documenting existing code - - Proposes epic organization (create Epic-Backfill or distribute) +- Replaced Inquirer.js with @clack/prompts to fix arrow key navigation issues on Windows +- All 91 installer workflows migrated to new prompt system -**Detection Scope:** -- Components: React/Vue/Angular (**.component.tsx, **/components/**) -- APIs: Next.js App Router, NestJS, Express routes -- Database: Prisma schema, TypeORM entities, migrations -- Services: *.service.ts, business logic modules +### 📚 Documentation Updates -**Output:** -``` -👻 GHOST FEATURES DETECTED -Total Orphans: 12 -Documentation Coverage: 73% +**Significant docsite improvements:** -CRITICAL Orphans (2): -1. API: POST /api/subscriptions → No story documents this +- Interactive workflow guide page (`/workflow-guide`) with track selector +- TEA documentation restructured using Diátaxis framework (25 docs) +- Style guide optimized for LLM readers (367 lines, down from 767) +- Glossary rewritten using table format (123 lines, down from 373) +- README overhaul with numbered command flows and prominent `/bmad-help` callout +- New workflow map diagram with interactive HTML +- New editorial review tasks for document quality +- E2E testing methodology for Game Dev Studio -HIGH Orphans (5): -2. Component: UserDashboard → Not mentioned in any story -... +More documentation updates coming soon. -Backfill Stories Created: 8 -``` +### 🐛 Bug Fixes -**Usage:** -```bash -# Detect orphans in sprint -/ghost-features +- Fixed TodoMVC URL references to include `/dist/` path +- Fixed glob pattern normalization for Windows compatibility +- Fixed YAML indentation in kilo.js customInstructions field +- Fixed stale path references in check-implementation-readiness workflow +- Fixed sprint-status.yaml sync in correct-course workflow +- Fixed web bundler entry point reference +- Fixed mergeModuleHelpCatalogs ordering after generateManifests -# Detect in Epic 2 and create backfill stories -/ghost-features epic_number=2 create_backfill_stories=true -``` +### 📊 Statistics -### Files Created - -**Revalidation:** -- `revalidate-story/workflow.yaml` + `instructions.md` (570 lines) -- `revalidate-epic/workflow.yaml` + `instructions.md` (310 lines) - -**Ghost Detection:** -- `detect-ghost-features/workflow.yaml` + `instructions.md` (685 lines) - -**Agent Menus:** -- `dev.agent.yaml`: Added RVS, RVE triggers -- `sm.agent.yaml`: Added RVS, RVE, GFD triggers - -### Benefits - -**Story Quality:** -- Verify checkbox accuracy (find over-reported completion) -- Detect missing implementations (find under-reported gaps) -- Maintain story-code parity - -**Codebase Quality:** -- Document all functionality (no ghost features) -- Enable accurate sprint planning (know what exists) -- Make codebase auditable (every feature has story) - -**Token Efficiency:** -- Revalidation cheaper than re-implementation (40-60% savings) -- Ghost detection prevents duplicate implementations -- Fill gaps incrementally vs full rewrites +- **91 commits** since alpha.23 +- **969 files changed** (+23,716 / -91,509 lines) +- **Net reduction of ~67,793 lines** through cleanup and consolidation +- **3 major modules** moved to separate repositories +- **Complete installer refactor** for standardization --- -## [6.1.0-alpha.3] - -**Release: January 7, 2026** - -Builds on alpha.2 with semaphore pattern and git commit queue for production-ready parallel batch processing. - -### ⚡ Semaphore Pattern (Replaces Batch-and-Wait) - -**NEW:** Worker pool with constant concurrency eliminates idle time. - -**Old batch-and-wait pattern:** -- Spawn 5 agents → wait for ALL 5 to finish → spawn next 5 -- If 4 finish quickly, slots sit idle waiting for slow 5th agent -- Inefficient resource utilization - -**New semaphore pattern:** -- Maintain pool of 5 worker slots -- As soon as ANY worker finishes → immediately refill that slot -- Constant 5 concurrent agents until queue empty -- Non-blocking task polling with live progress dashboard - -**Efficiency gain:** 20-40% faster completion - -### 🔒 Git Commit Queue (Eliminates Lock Conflicts) - -**NEW:** File-based locking prevents concurrent commit conflicts in parallel mode. - -**Problem:** Multiple agents committing simultaneously caused `.git/index.lock` conflicts requiring manual intervention. - -**Solution:** Commit queue with `.git/bmad-commit.lock` -- Workers acquire lock before committing (serialized commits) -- Automatic retry with exponential backoff (1s → 30s) -- Stale lock cleanup (>5 min old auto-removed) -- Timeout protection (HALT after 5 min) -- Implementations remain fully parallel (only commits serialize) - -**Result:** Zero git lock conflicts, no manual intervention needed - -### 🛡️ Minimum 3-Task Requirement - -**NEW:** Stories with <3 tasks rejected as INVALID. - -**Real-world issue fixed:** -``` -Story "11-4-classes-workshops-advanced": -- Had 0 tasks but high-risk keywords -- Was classified as COMPLEX and proceeded -- Agent had nothing to implement → failed - -Now: -- Rejected in validation: "INVALID - Only 0 tasks (need ≥3)" -- User told to run /validate-create-story -- Prevents wasted tokens on incomplete stories -``` - -**Validation rules:** -- 0-2 tasks: INVALID (stub/incomplete) -- 3+ tasks: Valid (processable) - -### Files Modified - -- `batch-super-dev/instructions.md`: Semaphore pattern, 3-task validation -- `super-dev-pipeline/step-06-complete.md`: Commit queue integration -- `super-dev-pipeline/step-06a-queue-commit.md`: NEW - Commit queue docs -- `batch-super-dev/README.md`: v1.3.0 documentation -- `docs/HOW-TO-VALIDATE-SPRINT-STATUS.md`: Semaphore pattern explanation -- `.gitignore`: Added `.git/bmad-commit.lock` -- `CHANGELOG.md`: Comprehensive feature documentation - ---- - -## [6.1.0-alpha.2] - -**Release: January 7, 2026** - -### 🔄 Continuous Sprint-Status Tracking - -**NEW:** sprint-status.yaml is now a **real-time progress dashboard** with updates after every task completion. - -**Previously:** Updated only at story lifecycle transitions (start → in-progress, end → review) -**Now:** Updated after EVERY single task with progress percentage - -**Progress Format:** -```yaml -development_status: - 1-2-login: in-progress # 3/10 tasks (30%) - 1-3-auth: in-progress # 7/8 tasks (88%) - 1-4-api: review # 10/10 tasks (100%) - awaiting review - 1-5-ui: done # ✅ COMPLETED: Dashboard + widgets + tests -``` - -**Enforcement (CRITICAL + HALT):** -- dev-story Step 8 now MANDATES sprint-status.yaml update after every task -- Validates update persisted by re-reading file -- HALTs if update fails (prevents silent tracking failures) -- No exceptions - every task completion triggers update - -**Benefits:** -- Immediate visibility into story progress without opening files -- Detect stalled stories (same % for multiple days) -- Better sprint planning and resource allocation -- Real-time dashboard for team coordination - -**Backward Compatible:** -- Old entries without progress comments still work -- New entries automatically add progress -- Gradual migration as stories are worked - -### ⚡ Semaphore Pattern for Parallel Execution - -**NEW:** Worker pool pattern replaces batch-and-wait for maximum throughput. - -**Previously (Batch-and-Wait):** -``` -Batch 1: Start 5 agents → wait for ALL 5 to finish -Batch 2: Start 5 agents → wait for ALL 5 to finish -Problem: If 4 finish quickly, slots sit idle waiting for slow 5th -``` - -**Now (Semaphore Pattern):** -``` -Initialize: Fill 5 worker slots -Worker 1 finishes → immediately start next story in that slot -Worker 3 finishes → immediately start next story in that slot -Maintain constant 5 concurrent agents until queue empty -``` - -**Benefits:** -- 20-40% faster completion (eliminates idle time) -- Constant utilization of all worker slots -- More predictable completion times -- Live progress dashboard every 30 seconds - -### 🔒 Git Commit Queue (Parallel-Safe) - -**NEW:** File-based locking prevents concurrent commit conflicts in parallel mode. - -**Problem Solved:** -``` -Worker 1: git commit → acquires .git/index.lock -Worker 2: git commit → ERROR: Another git process is running -Worker 3: git commit → ERROR: Another git process is running -Workers 2 & 3: HALT - manual intervention needed ❌ -``` - -**Solution with Commit Queue:** -``` -Worker 1: acquire .git/bmad-commit.lock → commit → release -Worker 2: wait for lock → acquire → commit → release -Worker 3: wait for lock → acquire → commit → release -All workers: SUCCESS ✅ -``` - -**Features:** -- Automatic retry with exponential backoff (1s → 30s) -- Stale lock cleanup (>5 min old locks auto-removed) -- Timeout protection (max 5 min wait) -- Lock file tracking: who holds lock, when acquired, worker ID -- Serializes commits while keeping implementations parallel -- No user intervention needed for lock conflicts - -**Lock File:** `.git/bmad-commit.lock` (auto-generated, auto-cleaned, gitignored) - -### 🛡️ Stricter Story Validation - -**NEW:** Minimum 3-task requirement prevents invalid/incomplete stories from being processed. - -**Validation Rules:** -- **0-2 tasks:** INVALID - Story is stub/incomplete (rejected in Step 2.5) -- **3 tasks:** Minimum valid (MICRO classification threshold) -- **4-15 tasks:** STANDARD story size -- **16+ tasks:** COMPLEX story, consider splitting - -**What Happens to Invalid Stories:** -- Step 2.5: Rejected during validation with clear error message -- Step 2.6: Marked as INVALID during complexity scoring (double-check) -- Filtered out before user selection step -- User prompted to run /validate-create-story to fix - -**Example (Real-World Issue Fixed):** -``` -Before v1.3.0: -- Story "11-4-classes-workshops-advanced": 0 tasks, high-risk keywords -- Classified as COMPLEX (because keywords) -- Proceeds to implementation -- Agent has nothing to implement → fails - -After v1.3.0: -- Story "11-4-classes-workshops-advanced": 0 tasks -- Rejected in Step 2.5: "INVALID - Only 0 tasks (need ≥3)" -- Skipped from selection -- User told to run /validate-create-story -``` - -### Files Modified - -- `batch-super-dev/instructions.md`: Semaphore pattern, 3-task minimum, INVALID filtering -- `batch-super-dev/README.md`: Updated to v1.3.0, documented all new features -- `super-dev-pipeline/steps/step-06-complete.md`: Added commit queue with file-based locking -- `super-dev-pipeline/steps/step-06a-queue-commit.md`: NEW file for commit queue documentation -- `dev-story/instructions.xml` (BMM + BMGD): Mandatory task-level sprint-status updates with CRITICAL enforcement -- `sprint-status/instructions.md` (BMM + BMGD): Progress parsing and display -- `batch-super-dev/step-4.5-reconcile-story-status.md`: Progress in reconciliation -- `docs/HOW-TO-VALIDATE-SPRINT-STATUS.md`: Semaphore pattern documentation -- `.gitignore`: Added `.git/bmad-commit.lock` - ---- - -## [6.1.0-alpha.1] - -**Release: January 7, 2026** - -### 🚀 Key Highlights - -1. **Complexity-Based Routing**: Intelligent story classification system (micro/standard/complex) with automatic pipeline selection -2. **Token Optimization**: 50-70% reduction for micro stories, 90% for early bailouts -3. **Smart Quality Gates**: Micro stories skip unnecessary validation steps while maintaining quality for complex work -4. **Multi-Agent Review Integration**: Enhanced code review for high-risk stories -5. **Critical Bug Fixes**: Resolved 6 critical issues discovered through multi-agent review - -### ⚡ Complexity-Based Routing (v1.3.0) - -**batch-super-dev Enhancements:** -- Automatic complexity scoring for all stories before processing -- Risk keyword detection with configurable weights (HIGH: 5pts, MEDIUM: 2pts, LOW: 0pts) -- Three-tier classification: MICRO (≤3 tasks, low risk) | STANDARD (4-15 tasks) | COMPLEX (≥16 tasks or high-risk) -- Deterministic keyword matching with word boundaries and variants -- File count validation (≤5 files for MICRO classification) - -**super-dev-pipeline Optimizations:** -- MICRO stories automatically skip steps 2 (pre-gap analysis) and 5 (code review) -- Early bailout checks for already-complete or invalid stories -- Complexity-aware routing propagated through sequential and parallel execution -- Multi-agent review recommendations for COMPLEX stories - -**Token Savings:** -- MICRO stories: 50-70% reduction (skip 2 of 7 steps) -- Early bailouts: 90% reduction (invalid/complete stories exit immediately) -- Gap analysis caching: Skip re-analysis if performed within 24 hours - -### 🛠️ Critical Fixes - -**Parameter Propagation (CRITICAL):** -- Fixed missing `complexity_level` parameter in workflow invocations -- Without this fix, complexity routing was completely non-functional -- Updated both sequential (step 4-Sequential) and parallel (step 4-Parallel) execution paths - -**Keyword Matching Rules:** -- Defined explicit matching algorithm in `workflow.yaml` -- Case-insensitive matching with word boundary requirements -- Keyword variants mapped to canonical forms (e.g., "authentication" → "auth") -- Scan locations explicitly specified: story_title, task_descriptions, subtask_descriptions - -**Threshold Decision Tree:** -- Rewrote overlapping conditions to be mutually exclusive -- Priority order: COMPLEX → MICRO → STANDARD (eliminates ambiguity) -- Stories can no longer match multiple categories simultaneously - -**Task Counting Method:** -- Documented method: "top_level_only" (subtasks not counted) -- Prevents scoring inconsistencies across different implementations - -**max_files Implementation:** -- Added `file_count ≤ 5` check to MICRO classification -- Previously collected but never validated (dead code) - -**Version Synchronization:** -- Aligned super-dev-pipeline to v1.3.0 (was v1.2.0) -- Consistent versioning across batch-super-dev and super-dev-pipeline - -### 📝 Documentation Updates - -- Updated README-changes.md with v1.3.0 feature documentation -- Complexity scoring algorithm fully documented -- Risk keyword system explained with examples -- Token savings breakdown by story type - -### 🧪 Validation - -- Multi-agent code review completed (40 issues identified, all critical issues resolved) -- All schema tests passing (52/52) -- All installation tests passing (13/13) -- All agent validations passing (24/24) -- Zero linting errors, zero formatting errors - -### 📦 Files Changed - -- 14 files modified across workflows and documentation -- ~605 lines added implementing complexity routing -- 3 workflow YAML configurations updated -- 5 markdown step files enhanced -- 2 XML instruction files optimized ## [6.0.0-alpha.23] **Release: January 11, 2026** diff --git a/README.md b/README.md index 0c78e8d4..ea5a8aeb 100644 --- a/README.md +++ b/README.md @@ -11,31 +11,38 @@ ## Why BMad? -Traditional AI tools do the thinking for you, producing average results. BMad agents act as expert collaborators who guide you through structured workflows to bring out your best thinking. +Traditional AI tools do the thinking for you, producing average results. BMad agents and facilitated workflow act as expert collaborators who guide you through a structured process to bring out your best thinking in partnership with the AI. -- **Scale-Adaptive**: Automatically adjusts planning depth based on project complexity (Level 0-4) +- **AI Intelligent Help**: Brand new for beta - AI assisted help will guide you from the beginning to the end - just ask for `/bmad-help` after you have installed BMad to your project +- **Scale-Domain-Adaptive**: Automatically adjusts planning depth and needs based on project complexity, domain and type - a SaaS Mobile Dating App has different planning needs from a diagnostic medical system, BMad adapts and helps you along the way - **Structured Workflows**: Grounded in agile best practices across analysis, planning, architecture, and implementation - **Specialized Agents**: 12+ domain experts (PM, Architect, Developer, UX, Scrum Master, and more) -- **Party Mode**: Bring multiple agent personas into one session to plan, troubleshoot, or discuss your project collaboratively -- **Complete Lifecycle**: From brainstorming to deployment, with just-in-time documentation +- **Party Mode**: Bring multiple agent personas into one session to plan, troubleshoot, or discuss your project collaboratively, multiple perspectives with maximum fun +- **Complete Lifecycle**: From brainstorming to deployment, BMad is there with you every step of the way ## Quick Start **Prerequisites**: [Node.js](https://nodejs.org) v20+ ```bash -npx bmad-method@alpha install +npx bmad-method install ``` Follow the installer prompts, then open your AI IDE (Claude Code, Cursor, Windsurf, etc.) in the project folder. -> **Not sure what to do?** Run `/bmad-help` — it tells you exactly what's next and what's optional. You can also ask it questions like `/bmad-help How should I build a web app for XYZ?` +> **Not sure what to do?** Run `/bmad-help` — it tells you exactly what's next and what's optional. You can also ask it questions like: + + - `/bmad-help How should I build a web app for for my TShirt Business that can scale to millions?` + - `/bmad-help I just finished the architecture, I am not sure what to do next` + +And the amazing this is BMad Help evolves depending on what modules you install also! + - `/bmad-help Im interested in really exploring creative ways to demo BMad at work, what do you recommend to help plan a great slide deck and compelling narrative?`, and if you have the Creative Intelligence Suite installed, it will offer you different or complimentary advice than if you just have BMad Method Module installed! The workflows below show the fastest path to working code. You can also load agents directly for a more structured process, extensive planning, or to learn about agile development practices — the agents guide you with menus, explanations, and elicitation at each step. ### Simple Path (Quick Flow) -Bug fixes, small features, clear scope — 3 commands: +Bug fixes, small features, clear scope — 3 commands - 1 Optional Agent: 1. `/quick-spec` — analyzes your codebase and produces a tech-spec with stories 2. `/dev-story` — implements each story @@ -56,7 +63,7 @@ Every step tells you what's next. Optional phases (brainstorming, research, UX d ## Modules -BMad Method extends with official modules for specialized domains. Modules are available during installation and can be added to your project at any time. +BMad Method extends with official modules for specialized domains. Modules are available during installation and can be added to your project at any time. After the V6 beta period these will also be available as Plugins and Granular Skills. | Module | GitHub | NPM | Purpose | | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | @@ -65,6 +72,8 @@ BMad Method extends with official modules for specialized domains. Modules are a | **Game Dev Studio (BMGD)** | [bmad-code-org/bmad-module-game-dev-studio](https://github.com/bmad-code-org/bmad-module-game-dev-studio) | [bmad-game-dev-studio](https://www.npmjs.com/package/bmad-game-dev-studio) | Game development workflows for Unity, Unreal, and Godot | | **Creative Intelligence Suite (CIS)** | [bmad-code-org/bmad-module-creative-intelligence-suite](https://github.com/bmad-code-org/bmad-module-creative-intelligence-suite) | [bmad-creative-intelligence-suite](https://www.npmjs.com/package/bmad-creative-intelligence-suite) | Innovation, brainstorming, design thinking, and problem-solving | +* More modules are coming in the next 2 weeks from BMad Official, and a community marketplace for the installer also will be coming with the final V6 release! + ## Documentation **[Full Documentation](http://docs.bmad-method.org)** — Tutorials, how-to guides, concepts, and reference @@ -79,7 +88,7 @@ BMad Method extends with official modules for specialized domains. Modules are a ## Community - [Discord](https://discord.gg/gk8jAdXWmj) — Get help, share ideas, collaborate -- [YouTube](https://www.youtube.com/@BMadCode) — Tutorials, master class, and podcast (launching Feb 2025) +- [Subscribe on YouTube](https://www.youtube.com/@BMadCode) — Tutorials, master class, and podcast (launching Feb 2025) - [GitHub Issues](https://github.com/bmad-code-org/BMAD-METHOD/issues) — Bug reports and feature requests - [Discussions](https://github.com/bmad-code-org/BMAD-METHOD/discussions) — Community conversations @@ -87,11 +96,10 @@ BMad Method extends with official modules for specialized domains. Modules are a BMad is free for everyone — and always will be. If you'd like to support development: -- ⭐ [Star us on GitHub](https://github.com/bmad-code-org/BMAD-METHOD/) — Helps others discover BMad -- 📺 [Subscribe on YouTube](https://www.youtube.com/@BMadCode) — Master class launching Feb 2026 +- ⭐ Please click the star project icon at near the top right of this page - ☕ [Buy Me a Coffee](https://buymeacoffee.com/bmad) — Fuel the development - 🏢 Corporate sponsorship — DM on Discord -- 🎤 Speaking & Media — Available for conferences, podcasts, interviews (Discord) +- 🎤 Speaking & Media — Available for conferences, podcasts, interviews (BM on Discord) ## Contributing diff --git a/docs/ENTERPRISE-GITHUB-INTEGRATION.md b/docs/ENTERPRISE-GITHUB-INTEGRATION.md index 182f8f65..cf0adfd0 100644 --- a/docs/ENTERPRISE-GITHUB-INTEGRATION.md +++ b/docs/ENTERPRISE-GITHUB-INTEGRATION.md @@ -1,3 +1,8 @@ +--- +title: Enterprise BMAD - GitHub Issues Integration Plan +description: Complete plan for transforming BMAD into an enterprise-scale team collaboration system with GitHub Issues integration +--- + # Enterprise BMAD: Complete GitHub Issues Integration Plan **Vision**: Transform BMAD into "the killer feature for using BMAD across an Enterprise team at scale effectively and without constantly stepping on each other's toes" diff --git a/docs/HOW-TO-VALIDATE-SPRINT-STATUS.md b/docs/HOW-TO-VALIDATE-SPRINT-STATUS.md index 268715f1..14557e2a 100644 --- a/docs/HOW-TO-VALIDATE-SPRINT-STATUS.md +++ b/docs/HOW-TO-VALIDATE-SPRINT-STATUS.md @@ -1,3 +1,8 @@ +--- +title: How to Validate Sprint Status - Complete Guide +description: Ensure sprint-status.yaml and story files reflect reality through systematic validation +--- + # How to Validate Sprint Status - Complete Guide **Created:** 2026-01-02 diff --git a/docs/_README_WORKFLOW_DIAGRAMS.md b/docs/_README_WORKFLOW_DIAGRAMS.md deleted file mode 100644 index 8e61bc94..00000000 --- a/docs/_README_WORKFLOW_DIAGRAMS.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: "Workflow Diagram Maintenance" ---- - - -## Regenerating SVG from Excalidraw - -When you edit `workflow-method-greenfield.excalidraw`, regenerate the SVG: - -1. Open -2. Load the `.excalidraw` file -3. Click menu (☰) → Export image → SVG -4. **Set "Scale" to 1x** (default is 2x) -5. Click "Export" -6. Save as `workflow-method-greenfield.svg` -7. **Validate the changes** (see below) -8. Commit both files together - -**Important:** - -- Always use **1x scale** to maintain consistent dimensions -- Automated export tools (`excalidraw-to-svg`) are broken - use manual export only - -## Visual Validation - -After regenerating the SVG, validate that it renders correctly: - -```bash -./tools/validate-svg-changes.sh path/to/workflow-method-greenfield.svg -``` - -This script: - -- Checks for required dependencies (Playwright, ImageMagick) -- Installs Playwright locally if needed (no package.json pollution) -- Renders old vs new SVG using browser-accurate rendering -- Compares pixel-by-pixel and generates a diff image -- Outputs a prompt for AI visual analysis (paste into Gemini/Claude) - -**Threshold**: <0.01% difference is acceptable (anti-aliasing variations) diff --git a/docs/_STYLE_GUIDE.md b/docs/_STYLE_GUIDE.md index 4966ec3a..e5fb51ff 100644 --- a/docs/_STYLE_GUIDE.md +++ b/docs/_STYLE_GUIDE.md @@ -6,17 +6,17 @@ This project adheres to the [Google Developer Documentation Style Guide](https:/ ## Project-Specific Rules -| Rule | Specification | -|------|---------------| -| No horizontal rules (`---`) | Fragments reading flow | -| No `####` headers | Use bold text or admonitions instead | -| No "Related" or "Next:" sections | Sidebar handles navigation | -| No deeply nested lists | Break into sections instead | -| No code blocks for non-code | Use admonitions for dialogue examples | -| No bold paragraphs for callouts | Use admonitions instead | -| 1-2 admonitions per section max | Tutorials allow 3-4 per major section | -| Table cells / list items | 1-2 sentences max | -| Header budget | 8-12 `##` per doc; 2-3 `###` per section | +| Rule | Specification | +| -------------------------------- | ---------------------------------------- | +| No horizontal rules (`---`) | Fragments reading flow | +| No `####` headers | Use bold text or admonitions instead | +| No "Related" or "Next:" sections | Sidebar handles navigation | +| No deeply nested lists | Break into sections instead | +| No code blocks for non-code | Use admonitions for dialogue examples | +| No bold paragraphs for callouts | Use admonitions instead | +| 1-2 admonitions per section max | Tutorials allow 3-4 per major section | +| Table cells / list items | 1-2 sentences max | +| Header budget | 8-12 `##` per doc; 2-3 `###` per section | ## Admonitions (Starlight Syntax) @@ -40,31 +40,31 @@ Critical warnings only — data loss, security issues ### Standard Uses -| Admonition | Use For | -|------------|---------| -| `:::note[Prerequisites]` | Dependencies before starting | -| `:::tip[Quick Path]` | TL;DR summary at document top | -| `:::caution[Important]` | Critical caveats | -| `:::note[Example]` | Command/response examples | +| Admonition | Use For | +| ------------------------ | ----------------------------- | +| `:::note[Prerequisites]` | Dependencies before starting | +| `:::tip[Quick Path]` | TL;DR summary at document top | +| `:::caution[Important]` | Critical caveats | +| `:::note[Example]` | Command/response examples | ## Standard Table Formats **Phases:** ```md -| Phase | Name | What Happens | -|-------|------|--------------| -| 1 | Analysis | Brainstorm, research *(optional)* | -| 2 | Planning | Requirements — PRD or tech-spec *(required)* | +| Phase | Name | What Happens | +| ----- | -------- | -------------------------------------------- | +| 1 | Analysis | Brainstorm, research *(optional)* | +| 2 | Planning | Requirements — PRD or tech-spec *(required)* | ``` **Commands:** ```md -| Command | Agent | Purpose | -|---------|-------|---------| -| `*workflow-init` | Analyst | Initialize a new project | -| `*prd` | PM | Create Product Requirements Document | +| Command | Agent | Purpose | +| ------------ | ------- | ------------------------------------ | +| `brainstorm` | Analyst | Brainstorm a new project | +| `prd` | PM | Create Product Requirements Document | ``` ## Folder Structure Blocks @@ -141,13 +141,13 @@ your-project/ ### Types -| Type | Example | -|------|---------| -| **Index/Landing** | `core-concepts/index.md` | -| **Concept** | `what-are-agents.md` | -| **Feature** | `quick-flow.md` | -| **Philosophy** | `why-solutioning-matters.md` | -| **FAQ** | `brownfield-faq.md` | +| Type | Example | +| ----------------- | ---------------------------- | +| **Index/Landing** | `core-concepts/index.md` | +| **Concept** | `what-are-agents.md` | +| **Feature** | `quick-flow.md` | +| **Philosophy** | `why-solutioning-matters.md` | +| **FAQ** | `brownfield-faq.md` | ### General Template @@ -217,14 +217,14 @@ your-project/ ### Types -| Type | Example | -|------|---------| -| **Index/Landing** | `workflows/index.md` | -| **Catalog** | `agents/index.md` | -| **Deep-Dive** | `document-project.md` | -| **Configuration** | `core-tasks.md` | -| **Glossary** | `glossary/index.md` | -| **Comprehensive** | `bmgd-workflows.md` | +| Type | Example | +| ----------------- | --------------------- | +| **Index/Landing** | `workflows/index.md` | +| **Catalog** | `agents/index.md` | +| **Deep-Dive** | `document-project.md` | +| **Configuration** | `core-tasks.md` | +| **Glossary** | `glossary/index.md` | +| **Comprehensive** | `bmgd-workflows.md` | ### Reference Index Pages @@ -303,19 +303,19 @@ Starlight generates right-side "On this page" navigation from headers: ```md ## Category Name -| Term | Definition | -|------|------------| -| **Agent** | Specialized AI persona with specific expertise that guides users through workflows. | +| Term | Definition | +| ------------ | ---------------------------------------------------------------------------------------- | +| **Agent** | Specialized AI persona with specific expertise that guides users through workflows. | | **Workflow** | Multi-step guided process that orchestrates AI agent activities to produce deliverables. | ``` ### Definition Rules -| Do | Don't | -|----|-------| +| Do | Don't | +| ----------------------------- | ------------------------------------------- | | Start with what it IS or DOES | Start with "This is..." or "A [term] is..." | -| Keep to 1-2 sentences | Write multi-paragraph explanations | -| Bold term name in cell | Use plain text for terms | +| Keep to 1-2 sentences | Write multi-paragraph explanations | +| Bold term name in cell | Use plain text for terms | ### Context Markers diff --git a/docs/_archive/customize-workflows.md b/docs/_archive/customize-workflows.md deleted file mode 100644 index 3a80e471..00000000 --- a/docs/_archive/customize-workflows.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "Workflow Customization Guide" ---- - -Customize and optimize workflows with step replacement and hooks. - -## Status - -:::note[Coming Soon] -Workflow customization is an upcoming capability. This guide will be updated when the feature is available. -::: - -## What to Expect - -Workflow customization will allow you to: - -- **Replace Steps** - Swap out specific workflow steps with custom implementations -- **Add Hooks** - Inject custom behavior before/after workflow steps -- **Extend Workflows** - Create new workflows based on existing ones -- **Override Behavior** - Customize workflow logic for your project's needs - -## For Now - -While workflow customization is in development, you can: - -- **Create Custom Workflows** - Use the BMad Builder to create entirely new workflows -- **Customize Agents** - Modify agent behavior using [Agent Customization](/docs/how-to/customization/customize-agents.md) -- **Provide Feedback** - Share your workflow customization needs with the community - -**In the meantime:** Learn how to [create custom workflows](/docs/explanation/bmad-builder/index.md) from scratch. diff --git a/docs/_archive/explanation/agents/barry-quick-flow.md b/docs/_archive/explanation/agents/barry-quick-flow.md deleted file mode 100644 index 62d454ff..00000000 --- a/docs/_archive/explanation/agents/barry-quick-flow.md +++ /dev/null @@ -1,328 +0,0 @@ ---- -title: "Quick Flow Solo Dev Agent (Barry)" ---- - -Barry is the elite solo developer who takes projects from concept to deployment with ruthless efficiency — no handoffs, no delays, just pure focused development. - -:::note[Agent Info] -- **Agent ID:** `_bmad/bmm/agents/quick-flow-solo-dev.md` -- **Icon:** 🚀 -- **Module:** BMM -::: - -## Overview - -Barry is the elite solo developer who lives and breathes the BMad Quick Flow workflow. He takes projects from concept to deployment with ruthless efficiency - no handoffs, no delays, just pure focused development. Barry architects specs, writes the code, and ships features faster than entire teams. When you need it done right and done now, Barry's your dev. - -### Agent Persona - -**Name:** Barry -**Title:** Quick Flow Solo Dev - -**Identity:** Barry is an elite developer who thrives on autonomous execution. He lives and breathes the BMad Quick Flow workflow, taking projects from concept to deployment with ruthless efficiency. No handoffs, no delays - just pure, focused development. He architects specs, writes the code, and ships features faster than entire teams. - -**Communication Style:** Direct, confident, and implementation-focused. Uses tech slang and gets straight to the point. No fluff, just results. Every response moves the project forward. - -**Core Principles:** - -- Planning and execution are two sides of the same coin -- Quick Flow is my religion -- Specs are for building, not bureaucracy -- Code that ships is better than perfect code that doesn't -- Documentation happens alongside development, not after -- Ship early, ship often - -## Menu Commands - -Barry owns the entire BMad Quick Flow path, providing a streamlined 3-step development process that eliminates handoffs and maximizes velocity. - -### 1. **quick-spec** - -- **Workflow:** `_bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md` -- **Description:** Architect a technical spec with implementation-ready stories -- **Use when:** You need to transform requirements into a buildable spec - -### 2. **quick-dev** - -- **Workflow:** `_bmad/bmm/workflows/bmad-quick-flow/quick-dev/workflow.yaml` -- **Description:** Ship features from spec or direct instructions - no handoffs -- **Use when:** You're ready to ship code based on a spec or clear instructions - -### 3. **code-review** - -- **Workflow:** `_bmad/bmm/workflows/4-implementation/code-review/workflow.yaml` -- **Description:** Review code for quality, patterns, and acceptance criteria -- **Use when:** You need to validate implementation quality - -### 4. **party-mode** - -- **Workflow:** `_bmad/core/workflows/party-mode/workflow.yaml` -- **Description:** Bring in other experts when I need specialized backup -- **Use when:** You need collaborative problem-solving or specialized expertise - -## When to Use Barry - -### Ideal Scenarios - -1. **Quick Flow Development** - Small to medium features that need rapid delivery -2. **Technical Specification Creation** - When you need detailed implementation plans -3. **Direct Development** - When requirements are clear and you want to skip extensive planning -4. **Code Reviews** - When you need senior-level technical validation -5. **Performance-Critical Features** - When optimization and scalability are paramount - -### Project Types - -- **Greenfield Projects** - New features or components -- **Brownfield Modifications** - Enhancements to existing codebases -- **Bug Fixes** - Complex issues requiring deep technical understanding -- **Proof of Concepts** - Rapid prototyping with production-quality code -- **Performance Optimizations** - System improvements and scalability work - -## The BMad Quick Flow Process - -Barry orchestrates a simple, efficient 3-step process: - -```mermaid -flowchart LR - A[Requirements] --> B[quick-spec] - B --> C[Tech Spec] - C --> D[quick-dev] - D --> E[Implementation] - E --> F{Code Review?} - F -->|Yes| G[code-review] - F -->|No| H[Complete] - G --> H[Complete] - - style A fill:#e1f5fe - style B fill:#f3e5f5 - style C fill:#e8f5e9 - style D fill:#fff3e0 - style E fill:#fce4ec - style G fill:#f1f8e9 - style H fill:#e0f2f1 -``` - -### Step 1: Technical Specification (`quick-spec`) - -**Goal:** Transform user requirements into implementation-ready technical specifications - -**Process:** - -1. **Problem Understanding** - Clarify requirements, scope, and constraints -2. **Code Investigation** - Analyze existing patterns and dependencies (if applicable) -3. **Specification Generation** - Create comprehensive tech spec with: - - Problem statement and solution overview - - Development context and patterns - - Implementation tasks with acceptance criteria - - Technical decisions and dependencies -4. **Review and Finalize** - Validate spec captures user intent - -**Output:** `tech-spec-{slug}.md` saved to sprint artifacts - -**Best Practices:** - -- Include ALL context a fresh dev agent needs -- Be specific about files, patterns, and conventions -- Define clear acceptance criteria using Given/When/Then format -- Document technical decisions and trade-offs - -### Step 2: Development (`quick-dev`) - -**Goal:** Execute implementation based on tech spec or direct instructions - -**Two Modes:** - -**Mode A: Tech-Spec Driven** - -- Load existing tech spec -- Extract tasks, context, and acceptance criteria -- Execute all tasks continuously without stopping -- Respect project context and existing patterns - -**Mode B: Direct Instructions** - -- Accept direct development commands -- Offer optional planning step -- Execute with minimal friction - -**Process:** - -1. **Load Project Context** - Understand patterns and conventions -2. **Execute Implementation** - Work through all tasks: - - Load relevant files and context - - Implement following established patterns - - Write and run tests - - Handle errors appropriately -3. **Verify Completion** - Ensure all tasks complete, tests passing, AC satisfied - -### Step 3: Code Review (`code-review`) - Optional - -**Goal:** Senior developer review of implemented code - -**When to Use:** - -- Critical production features -- Complex architectural changes -- Performance-sensitive implementations -- Team development scenarios -- Learning and knowledge transfer - -**Review Focus:** - -- Code quality and patterns -- Acceptance criteria compliance -- Performance and scalability -- Security considerations -- Maintainability and documentation - -## Collaboration with Other Agents - -### Natural Partnerships - -- **Tech Writer** - For documentation and API specs when I need it -- **Architect** - For complex system design decisions beyond Quick Flow scope -- **Dev** - For implementation pair programming (rarely needed) -- **QA** - For test strategy and quality gates on critical features -- **UX Designer** - For user experience considerations - -### Party Mode Composition - -In party mode, Barry often acts as: - -- **Solo Tech Lead** - Guiding architectural decisions -- **Implementation Expert** - Providing coding insights -- **Performance Optimizer** - Ensuring scalable solutions -- **Code Review Authority** - Validating technical approaches - -## Tips for Working with Barry - -### For Best Results - -1. **Be Specific** - Provide clear requirements and constraints -2. **Share Context** - Include relevant files and patterns -3. **Define Success** - Clear acceptance criteria lead to better outcomes -4. **Trust the Process** - The 3-step flow is optimized for speed and quality -5. **Leverage Expertise** - I'll give you optimization and architectural insights automatically - -### Communication Patterns - -- **Git Commit Style** - "feat: Add user authentication with OAuth 2.0" -- **RFC Style** - "Proposing microservice architecture for scalability" -- **Direct Questions** - "Actually, have you considered the race condition?" -- **Technical Trade-offs** - "We could optimize for speed over memory here" - -### Avoid These Common Mistakes - -1. **Vague Requirements** - Leads to unnecessary back-and-forth -2. **Ignoring Patterns** - Causes technical debt and inconsistencies -3. **Skipping Code Review** - Missed opportunities for quality improvement -4. **Over-planning** - I excel at rapid, pragmatic development -5. **Not Using Party Mode** - Missing collaborative insights for complex problems - -## Example Workflow - -```bash -# Start with Barry -/bmad:bmm:agents:quick-flow-solo-dev - -# Create a tech spec -> quick-spec - -# Quick implementation -> quick-dev tech-spec-auth.md - -# Optional code review -> code-review -``` - -### Sample Tech Spec Structure - -```markdown -# Tech-Spec: User Authentication System - -**Created:** 2025-01-15 -**Status:** Ready for Development - -## Overview - -### Problem Statement - -Users cannot securely access the application, and we need role-based permissions for enterprise features. - -### Solution - -Implement OAuth 2.0 authentication with JWT tokens and role-based access control (RBAC). - -### Scope (In/Out) - -**In:** Login, logout, password reset, role management -**Out:** Social login, SSO, multi-factor authentication (Phase 2) - -## Context for Development - -### Codebase Patterns - -- Use existing auth middleware pattern in `src/middleware/auth.js` -- Follow service layer pattern from `src/services/` -- JWT secrets managed via environment variables - -### Files to Reference - -- `src/middleware/auth.js` - Authentication middleware -- `src/models/User.js` - User data model -- `config/database.js` - Database connection - -### Technical Decisions - -- JWT tokens over sessions for API scalability -- bcrypt for password hashing -- Role-based permissions stored in database - -## Implementation Plan - -### Tasks - -- [ ] Create authentication service -- [ ] Implement login/logout endpoints -- [ ] Add JWT middleware -- [ ] Create role-based permissions -- [ ] Write comprehensive tests - -### Acceptance Criteria - -- [ ] Given valid credentials, when user logs in, then receive JWT token -- [ ] Given invalid token, when accessing protected route, then return 401 -- [ ] Given admin role, when accessing admin endpoint, then allow access -``` - -## Common Questions - -- [When should I use Barry vs other agents?](#when-should-i-use-barry-vs-other-agents) -- [Is the code review step mandatory?](#is-the-code-review-step-mandatory) -- [Can I skip the tech spec step?](#can-i-skip-the-tech-spec-step) -- [How does Barry differ from the Dev agent?](#how-does-barry-differ-from-the-dev-agent) -- [Can Barry handle enterprise-scale projects?](#can-barry-handle-enterprise-scale-projects) - -### When should I use Barry vs other agents? - -Use Barry for Quick Flow development (small to medium features), rapid prototyping, or when you need elite solo development. For large, complex projects requiring full team collaboration, consider the full BMad Method with specialized agents. - -### Is the code review step mandatory? - -No, it's optional but highly recommended for critical features, team projects, or when learning best practices. - -### Can I skip the tech spec step? - -Yes, the quick-dev workflow accepts direct instructions. However, tech specs are recommended for complex features or team collaboration. - -### How does Barry differ from the Dev agent? - -Barry handles the complete Quick Flow process (spec → dev → review) with elite architectural expertise, while the Dev agent specializes in pure implementation tasks. Barry is your autonomous end-to-end solution. - -### Can Barry handle enterprise-scale projects? - -For enterprise-scale projects requiring full team collaboration, consider using the Enterprise Method track. Barry is optimized for rapid delivery in the Quick Flow track where solo execution wins. - -:::tip[Ready to Ship?] -Start with `/bmad:bmm:agents:quick-flow-solo-dev` -::: diff --git a/docs/_archive/explanation/agents/index.md b/docs/_archive/explanation/agents/index.md deleted file mode 100644 index d8ebc323..00000000 --- a/docs/_archive/explanation/agents/index.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: "Understanding Agents" -description: Understanding BMad agents and their roles ---- - -Comprehensive guides to BMad's AI agents — their roles, capabilities, and how to work with them effectively. - -## Agent Guides - -| Agent | Description | -| ------------------------------------------------------------------------------- | ---------------------------------------------------- | -| **[Agent Roles](/docs/explanation/core-concepts/agent-roles.md)** | Overview of all BMM agent roles and responsibilities | -| **[Quick Flow Solo Dev (Barry)](/docs/explanation/agents/barry-quick-flow.md)** | The dedicated agent for rapid development | - -## Getting Started - -1. Read **[What Are Agents?](/docs/explanation/core-concepts/what-are-agents.md)** for the core concept explanation -2. Review **[Agent Roles](/docs/explanation/core-concepts/agent-roles.md)** to understand available agents -3. Choose an agent that fits your workflow needs diff --git a/docs/_archive/explanation/core-concepts/index.md b/docs/_archive/explanation/core-concepts/index.md deleted file mode 100644 index 076c3820..00000000 --- a/docs/_archive/explanation/core-concepts/index.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: "BMad Core Concepts" ---- - -Understanding the fundamental building blocks of the BMad Method. - -## The Essentials - -| Concept | Description | Guide | -|---------|-------------|-------| -| **Agents** | AI assistants with personas, capabilities, and menus | [Agents Guide](/docs/explanation/core-concepts/what-are-agents.md) | -| **Workflows** | Structured processes for achieving specific outcomes | [Workflows Guide](/docs/explanation/core-concepts/what-are-workflows.md) | -| **Modules** | Packaged collections of agents and workflows | [Modules Guide](/docs/explanation/core-concepts/what-are-modules.md) | - -## Getting Started - -### New to BMad? -Start here to understand what BMad is and how it works: - -1. **[Agents Guide](/docs/explanation/core-concepts/what-are-agents.md)** - Learn about Simple and Expert agents -2. **[Workflows Guide](/docs/explanation/core-concepts/what-are-workflows.md)** - Understand how workflows orchestrate tasks -3. **[Modules Guide](/docs/explanation/core-concepts/what-are-modules.md)** - See how modules organize functionality - -### Installing BMad - -- **[Installation Guide](/docs/how-to/installation/index.md)** - Set up BMad in your project -- **[Upgrading from v4](/docs/how-to/installation/upgrade-to-v6.md)** - Migrate from earlier versions - -### Configuration - -- **[BMad Customization](/docs/how-to/customization/index.md)** - Personalize agents and workflows - -### Advanced - -- **[Web Bundles](/docs/explanation/features/web-bundles.md)** - Use BMad in Gemini Gems and Custom GPTs diff --git a/docs/_archive/explanation/core-concepts/what-are-agents.md b/docs/_archive/explanation/core-concepts/what-are-agents.md deleted file mode 100644 index b08d9bc1..00000000 --- a/docs/_archive/explanation/core-concepts/what-are-agents.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -title: "Agents" ---- - -Agents are AI assistants that help you accomplish tasks. Each agent has a unique personality, specialized capabilities, and an interactive menu. - -## Agent Types - -BMad has two primary agent types, designed for different use cases: - -### Simple Agents - -**Self-contained, focused, ready to use.** - -Simple agents are complete in a single file. They excel at well-defined tasks and require minimal setup. - -**Best for:** -- Single-purpose assistants (code review, documentation, commit messages) -- Quick deployment -- Projects that don't require persistent memory -- Getting started fast - -**Example:** A commit message agent that reads your git diff and generates conventional commits. - -### Expert Agents - -**Powerful, memory-equipped, domain specialists.** - -Expert agents have a **sidecar** - a companion folder containing additional instructions, workflows, and memory files. They remember context across sessions and handle complex, multi-step tasks. - -**Best for:** -- Domain specialists (security architect, game designer, product manager) -- Tasks requiring persistent memory -- Complex workflows with multiple stages -- Projects that grow over time - -**Example:** A game architect that remembers your design decisions, maintains consistency across sprints, and coordinates with other specialists. - -## Key Differences - -| Feature | Simple | Expert | -| ---------------- | -------------- | -------------------------- | -| **Files** | Single file | Agent + sidecar folder | -| **Memory** | Session only | Persistent across sessions | -| **Capabilities** | Focused scope | Multi-domain, extensible | -| **Setup** | Zero config | Sidecar initialization | -| **Best Use** | Specific tasks | Ongoing projects | - -## Agent Components - -All agents share these building blocks: - -### Persona -- **Role** - What the agent does (expertise domain) -- **Identity** - Who the agent is (personality, character) -- **Communication Style** - How the agent speaks (tone, voice) -- **Principles** - Why the agent acts (values, decision framework) - -### Capabilities -- Skills, tools, and knowledge the agent can apply -- Mapped to specific menu commands - -### Menu -- Interactive command list -- Triggers, descriptions, and handlers -- Auto-includes help and exit options - -### Critical Actions (optional) -- Instructions that execute before the agent starts -- Enable autonomous behaviors (e.g., "check git status before changes") - -## Which Should You Use? - -:::tip[Quick Decision] -Choose **Simple** for focused, one-off tasks with no memory needs. Choose **Expert** when you need persistent context and complex workflows. -::: - -**Choose Simple when:** -- You need a task done quickly and reliably -- The scope is well-defined and won't change much -- You don't need the agent to remember things between sessions - -**Choose Expert when:** -- You're building something complex over time -- The agent needs to maintain context (project history, decisions) -- You want the agent to coordinate workflows or other agents -- Domain expertise requires specialized knowledge bases - -## Creating Custom Agents - -BMad provides the **BMad Builder (BMB)** module for creating your own agents. See the [Agent Creation Guide](https://github.com/bmad-code-org/bmad-builder/blob/main/docs/tutorials/create-custom-agent.md) for step-by-step instructions. - - - -## Customizing Existing Agents - -You can modify any agent's behavior without editing core files. See [BMad Customization](/docs/how-to/customization/index.md) for details. It is critical to never modify an installed agents .md file directly and follow the customization process, this way future updates to the agent or module its part of will continue to be updated and recompiled with the installer tool, and your customizations will still be retained. diff --git a/docs/_archive/explanation/core/index.md b/docs/_archive/explanation/core/index.md deleted file mode 100644 index 9c604a48..00000000 --- a/docs/_archive/explanation/core/index.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: "Core Module" ---- - - -The Core Module is installed with all installations of BMad modules and provides common functionality that any module, workflow, or agent can take advantage of. - -## Core Module Components - -- **[Global Core Config](/docs/reference/configuration/global-config.md)** — Inheritable configuration that impacts all modules and custom content -- **[Core Workflows](/docs/reference/workflows/core-workflows.md)** — Domain-agnostic workflows usable by any module - - [Party Mode](/docs/explanation/features/party-mode.md) — Multi-agent conversation orchestration - - [Brainstorming](/docs/explanation/features/brainstorming-techniques.md) — Structured creative sessions with 60+ techniques - - [Advanced Elicitation](/docs/explanation/features/advanced-elicitation.md) — LLM rethinking with 50+ reasoning methods -- **[Core Tasks](/docs/reference/configuration/core-tasks.md)** — Common tasks available across modules - - [Index Docs](/docs/reference/configuration/core-tasks.md#index-docs) — Generate directory index files - - [Adversarial Review](/docs/reference/configuration/core-tasks.md#adversarial-review) — Critical content review - - [Shard Document](/docs/reference/configuration/core-tasks.md#shard-document) — Split large documents into sections diff --git a/docs/_archive/explanation/features/web-bundles.md b/docs/_archive/explanation/features/web-bundles.md deleted file mode 100644 index a3b1b522..00000000 --- a/docs/_archive/explanation/features/web-bundles.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: "Web Bundles" ---- - -Use BMad agents in Gemini Gems and Custom GPTs. - -:::caution[Status] -The Web Bundling Feature is being rebuilt from the ground up. Current v6 bundles may be incomplete or missing functionality. -::: - -## What Are Web Bundles? - -Web bundles package BMad agents as self-contained files that work in Gemini Gems and Custom GPTs. Everything the agent needs - instructions, workflows, dependencies - is bundled into a single file for easy upload. - -### What's Included - -- Complete agent persona and instructions -- All workflows and dependencies -- Interactive menu system -- Party mode for multi-agent collaboration -- No external files required - -### Use Cases - -**Perfect for:** -- Uploading a single file to a Gemini GEM or Custom GPT -- Using BMad Method from the Web -- Cost savings (generally lower cost than local usage) -- Quick sharing of agent configurations - -**Trade-offs:** -- Some quality reduction vs local usage -- Less convenient than full local installation -- Limited to agent capabilities (no workflow file access) diff --git a/docs/_archive/getting-started-bmadv4.md b/docs/_archive/getting-started-bmadv4.md deleted file mode 100644 index 53ca1c6c..00000000 --- a/docs/_archive/getting-started-bmadv4.md +++ /dev/null @@ -1,247 +0,0 @@ ---- -title: "Getting Started with BMad v4" -description: Install BMad and create your first planning document ---- - - -Build software faster using AI-powered workflows with specialized agents that guide you through planning, architecture, and implementation. - -:::note[Stable Release] -This tutorial covers BMad v4, the current stable release. For the latest features (with potential breaking changes), see the [BMad v6 Alpha tutorial](./getting-started-bmadv6.md). -::: - -## What You'll Learn - -- Install and configure BMad for your IDE -- Understand how BMad organizes work into phases and agents -- Initialize a project and choose a planning track -- Create your first requirements document - -:::note[Prerequisites] -- **Node.js 20+** — Required for the installer -- **Git** — Recommended for version control -- **AI-powered IDE** — Claude Code, Cursor, Windsurf, or similar -- **A project idea** — Even a simple one works for learning -::: - -:::tip[Quick Path] -**Install** → `npx bmad-method install` -**Initialize** → Load Analyst agent, run `workflow-init` -**Plan** → PM creates PRD, Architect creates architecture -**Build** → SM manages sprints, DEV implements stories -**Always use fresh chats** for each workflow to avoid context issues. -::: - -## Understanding BMad - -BMad helps you build software through guided workflows with specialized AI agents. The process follows four phases: - -| Phase | Name | What Happens | -|-------|------|--------------| -| 1 | Analysis | Brainstorm, research *(optional)* | -| 2 | Planning | Requirements — PRD or tech-spec *(required)* | -| 3 | Solutioning | Architecture, design decisions *(varies by track)* | -| 4 | Implementation | Build code story by story *(required)* | - -Based on your project's complexity, BMad offers three planning tracks: - -| Track | Best For | Documents Created | -|-------|----------|-------------------| -| **Quick Flow** | Bug fixes, simple features, clear scope | Tech-spec only | -| **BMad Method** | Products, platforms, complex features | PRD + Architecture + UX | -| **Enterprise** | Compliance, multi-tenant, enterprise needs | PRD + Architecture + Security + DevOps | - -## Installation - -Open a terminal in your project directory and run: - -```bash -npx bmad-method install -``` - -The interactive installer guides you through setup: - -- **Choose Installation Location** — Select current directory (recommended), subdirectory, or custom path -- **Select Your AI Tool** — Claude Code, Cursor, Windsurf, or other -- **Choose Modules** — Select **BMM** (BMad Method) for this tutorial -- **Accept Defaults** — Customize later in `_bmad/[module]/config.yaml` - -Verify your installation: - -``` -your-project/ -├── _bmad/ -│ ├── bmm/ # Method module -│ │ ├── agents/ # Agent files -│ │ ├── workflows/ # Workflow files -│ │ └── config.yaml # Module config -│ └── core/ # Core utilities -├── _bmad-output/ # Generated artifacts (created later) -└── .claude/ # IDE configuration (if using Claude Code) -``` - -:::tip[Troubleshooting] -Having issues? See [Install BMad](../../how-to/installation/install-bmad.md) for common solutions. -::: - -## Step 1: Initialize Your Project - -Load the **Analyst agent** in your IDE: -- **Claude Code**: Type `/analyst` or load the agent file directly -- **Cursor/Windsurf**: Open the agent file from `_bmad/bmm/agents/` - -Wait for the agent's menu to appear, then run: - -``` -Run workflow-init -``` - -Or use the shorthand: `*workflow-init` - -The workflow asks you to describe: -- **Your project and goals** — What are you building? What problem does it solve? -- **Existing codebase** — Is this new (greenfield) or existing code (brownfield)? -- **Size and complexity** — Roughly how big is this? (adjustable later) - -Based on your description, the workflow suggests a planning track. For this tutorial, choose **BMad Method**. - -Once you confirm, the workflow creates `bmm-workflow-status.yaml` to track your progress. - -:::caution[Fresh Chats] -Always start a fresh chat for each workflow. This prevents context limitations from causing issues. -::: - -## Step 2: Create Your Plan - -With your project initialized, work through the planning phases. - -### Phase 1: Analysis (Optional) - -If you want to brainstorm or research first: -- **brainstorm-project** — Guided ideation with the Analyst -- **research** — Market and technical research -- **product-brief** — Recommended foundation document - -### Phase 2: Planning (Required) - -**Start a fresh chat** and load the **PM agent**. - -``` -Run prd -``` - -Or use shortcuts: `*prd`, select "create-prd" from the menu, or say "Let's create a PRD". - -The PM agent guides you through: -1. **Project overview** — Refine your project description -2. **Goals and success metrics** — What does success look like? -3. **User personas** — Who uses this product? -4. **Functional requirements** — What must the system do? -5. **Non-functional requirements** — Performance, security, scalability needs - -When complete, you'll have `PRD.md` in your `_bmad-output/` folder. - -:::note[UX Design (Optional)] -If your project has a user interface, load the **UX-Designer agent** and run the UX design workflow after creating your PRD. -::: - -### Phase 3: Solutioning (Required for BMad Method) - -**Start a fresh chat** and load the **Architect agent**. - -``` -Run create-architecture -``` - -The architect guides you through technical decisions: tech stack, database design, API patterns, and system structure. - -:::tip[Check Your Status] -Unsure what's next? Load any agent and run `workflow-status`. It tells you the next recommended or required workflow. -::: - -## Step 3: Build Your Project - -Once planning is complete, move to implementation. - -### Initialize Sprint Planning - -Load the **SM agent** and run `sprint-planning`. This creates `sprint-status.yaml` to track all epics and stories. - -### The Build Cycle - -For each story, repeat this cycle with fresh chats: - -| Step | Agent | Workflow | Purpose | -|------|-------|----------|---------| -| 1 | SM | `create-story` | Create story file from epic | -| 2 | DEV | `dev-story` | Implement the story | -| 3 | DEV | `code-review` | Quality validation *(recommended)* | - -After completing all stories in an epic, load the **SM agent** and run `retrospective`. - -## What You've Accomplished - -You've learned the foundation of building with BMad: - -- Installed BMad and configured it for your IDE -- Initialized a project with your chosen planning track -- Created planning documents (PRD, Architecture) -- Understood the build cycle for implementation - -Your project now has: - -``` -your-project/ -├── _bmad/ # BMad configuration -├── _bmad-output/ -│ ├── PRD.md # Your requirements document -│ ├── architecture.md # Technical decisions -│ └── bmm-workflow-status.yaml # Progress tracking -└── ... -``` - -## Quick Reference - -| Command | Agent | Purpose | -|---------|-------|---------| -| `*workflow-init` | Analyst | Initialize a new project | -| `*workflow-status` | Any | Check progress and next steps | -| `*prd` | PM | Create Product Requirements Document | -| `*create-architecture` | Architect | Create architecture document | -| `*sprint-planning` | SM | Initialize sprint tracking | -| `*create-story` | SM | Create a story file | -| `*dev-story` | DEV | Implement a story | -| `*code-review` | DEV | Review implemented code | - -## Common Questions - -**Do I need to create a PRD for every project?** -Only for BMad Method and Enterprise tracks. Quick Flow projects use a simpler tech-spec instead. - -**Can I skip Phase 1 (Analysis)?** -Yes, Phase 1 is optional. If you already know what you're building, start with Phase 2 (Planning). - -**What if I want to brainstorm first?** -Load the Analyst agent and run `*brainstorm-project` before `workflow-init`. - -**Why start fresh chats for each workflow?** -Workflows are context-intensive. Reusing chats can cause the AI to hallucinate or lose track of details. Fresh chats ensure maximum context capacity. - -## Getting Help - -- **During workflows** — Agents guide you with questions and explanations -- **Check status** — Run `workflow-status` with any agent -- **Community** — [Discord](https://discord.gg/gk8jAdXWmj) (#bmad-method-help, #report-bugs-and-issues) -- **Video tutorials** — [BMad Code YouTube](https://www.youtube.com/@BMadCode) - -## Key Takeaways - -:::tip[Remember These] -- **Always use fresh chats** — Load agents in new chats for each workflow -- **Let workflow-status guide you** — Ask any agent for status when unsure -- **Track matters** — Quick Flow uses tech-spec; Method/Enterprise need PRD and architecture -- **Tracking is automatic** — Status files update themselves -- **Agents are flexible** — Use menu numbers, shortcuts (`*prd`), or natural language -::: - -Ready to start? Install BMad, load the Analyst, run `workflow-init`, and let the agents guide you. diff --git a/docs/_archive/how-to-workflows/bmgd-quick-flow.md b/docs/_archive/how-to-workflows/bmgd-quick-flow.md deleted file mode 100644 index fe07a124..00000000 --- a/docs/_archive/how-to-workflows/bmgd-quick-flow.md +++ /dev/null @@ -1,156 +0,0 @@ ---- -title: "BMGD Quick-Flow Guide" -description: Fast-track workflows for rapid game prototyping and flexible development ---- - -Use BMGD Quick-Flow workflows for rapid game prototyping and flexible development when you need to move fast. - -## When to Use This - -- Testing a game mechanic idea -- Implementing a small feature -- Rapid prototyping before committing to design -- Bug fixes and tweaks - -## When to Use Full BMGD Instead - -- Building a major feature or system -- The scope is unclear or large -- Multiple team members need alignment -- The work affects game pillars or core loop -- You need documentation for future reference - -:::note[Prerequisites] -- BMad Method installed with BMGD module -- Game Solo Dev agent (Indie) or other BMGD agent available -::: - -## Game Solo Dev Agent - -For dedicated quick-flow development, use the **Game Solo Dev** agent. This agent is optimized for solo developers and small teams who want to skip the full planning phases. - -**Switch to Game Solo Dev:** Type `@game-solo-dev` or select from your IDE. - -Includes: `quick-prototype`, `quick-dev`, `quick-spec`, `code-review`, `test-framework` - -## Quick-Prototype - -Use `quick-prototype` to rapidly test gameplay ideas with minimal setup. - -### When to Use - -- You have a mechanic idea and want to test the "feel" -- You're not sure if something will be fun -- You want to experiment before committing to design -- You need a proof of concept - -### Steps - -1. Run `quick-prototype` -2. Define what you're prototyping (mechanic, feature, system) -3. Set success criteria (2-3 items) -4. Build the minimum to test the idea -5. Playtest and evaluate - -### Prototype Principles - -- **Minimum Viable Prototype** — Only what's needed to test the idea -- **Hardcode First** — Magic numbers are fine, extract later -- **Skip Edge Cases** — Happy path only for now -- **Placeholder Everything** — Cubes, debug text, temp sounds -- **Comment Intent** — Mark what's temporary vs keeper code - -### After Prototyping - -- **Develop** (`d`) — Use `quick-dev` to build production code -- **Iterate** (`i`) — Adjust and re-test the prototype -- **Archive** (`a`) — Keep as reference, move on to other ideas - -## Quick-Dev - -Use `quick-dev` for flexible development with game-specific considerations. - -### When to Use - -- Implementing a feature from a tech-spec -- Building on a successful prototype -- Making changes that don't need full story workflow -- Quick fixes and improvements - -### Workflow Modes - -**Mode A: Tech-Spec Driven** -``` -quick-dev tech-spec-combat.md -``` - -**Mode B: Direct Instructions** -``` -quick-dev implement double-jump for the player -``` - -**Mode C: From Prototype** -``` -quick-dev from the grappling hook prototype -``` - -### Game-Specific Checks - -Quick-dev includes automatic consideration of: -- **Performance** — No allocations in hot paths, object pooling -- **Feel** — Input responsiveness, visual/audio feedback -- **Integration** — Save/load, multiplayer sync, platform testing - -### Complexity Routing - -| Signals | Recommendation | -|---------|----------------| -| Single mechanic, bug fix, tweak | Execute directly | -| Multiple systems, performance-critical | Plan first (tech-spec) | -| Platform/system level work | Use full BMGD workflow | - -## Choosing Between Quick-Flows - -| Scenario | Use | -|----------|-----| -| "Will this be fun?" | `quick-prototype` | -| "How should this feel?" | `quick-prototype` | -| "Build this feature" | `quick-dev` | -| "Fix this bug" | `quick-dev` | -| "Test then build" | `quick-prototype` → `quick-dev` | - -## Flow Comparison - -``` -Full BMGD Flow: -Brief → GDD → Architecture → Sprint Planning → Stories → Implementation - -Quick-Flow: -Idea → Quick-Prototype → Quick-Dev → Done -``` - -## Checklists - -**Quick-Prototype:** -- [ ] Prototype scope defined -- [ ] Success criteria established (2-3 items) -- [ ] Minimum viable code written -- [ ] Placeholder assets used -- [ ] Each criterion evaluated -- [ ] Decision made (develop/iterate/archive) - -**Quick-Dev:** -- [ ] Context loaded (spec, prototype, or guidance) -- [ ] Files to modify identified -- [ ] All tasks completed -- [ ] No allocations in hot paths -- [ ] Game runs without errors -- [ ] Manual playtest completed - -## Tips - -- **Timebox prototypes** — Set a limit (e.g., 2 hours). If it's not working, step back -- **Embrace programmer art** — Focus on feel, not visuals -- **Test on target hardware** — What feels right on dev machine might not on target -- **Document learnings** — Even failed prototypes teach something -- **Know when to graduate** — If quick-dev keeps expanding scope, create proper stories diff --git a/docs/_archive/how-to-workflows/conduct-research.md b/docs/_archive/how-to-workflows/conduct-research.md deleted file mode 100644 index e3300bca..00000000 --- a/docs/_archive/how-to-workflows/conduct-research.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -title: "How to Conduct Research" -description: How to conduct market, technical, and competitive research using BMad Method ---- - -Use the `research` workflow to perform comprehensive multi-type research for validating ideas, understanding markets, and making informed decisions. - -## When to Use This - -- Need market viability validation -- Choosing frameworks or platforms -- Understanding competitive landscape -- Need user understanding -- Understanding domain or industry -- Need deeper AI-assisted research - -:::note[Prerequisites] -- BMad Method installed -- Analyst agent available -::: - -## Steps - -### 1. Load the Analyst Agent - -Start a fresh chat and load the Analyst agent. - -### 2. Run the Research Workflow - -``` -*research -``` - -### 3. Choose Research Type - -Select the type of research you need: - -| Type | Purpose | Use When | -|------|---------|----------| -| **market** | TAM/SAM/SOM, competitive analysis | Need market viability validation | -| **technical** | Technology evaluation, ADRs | Choosing frameworks/platforms | -| **competitive** | Deep competitor analysis | Understanding competitive landscape | -| **user** | Customer insights, personas, JTBD | Need user understanding | -| **domain** | Industry deep dives, trends | Understanding domain/industry | -| **deep_prompt** | Generate AI research prompts | Need deeper AI-assisted research | - -### 4. Provide Context - -Give the agent details about what you're researching: - -- "SaaS project management tool" -- "React vs Vue for our dashboard" -- "Fintech compliance requirements" - -### 5. Set Research Depth - -Choose your depth level: - -- **Quick** — Fast overview -- **Standard** — Balanced depth -- **Comprehensive** — Deep analysis - -## What You Get - -Research output varies by type: - -**Market Research:** -- TAM/SAM/SOM analysis -- Top competitors -- Positioning recommendation - -**Technical Research:** -- Comparison matrix -- Trade-off analysis -- Recommendations with rationale - -## Key Features - -- Real-time web research -- Multiple analytical frameworks (Porter's Five Forces, SWOT, Technology Adoption Lifecycle) -- Platform-specific optimization for deep_prompt type -- Configurable research depth - -## Tips - -- **Use market research early** — Validates new product ideas -- **Technical research helps architecture** — Inform ADRs with data -- **Competitive research informs positioning** — Differentiate your product -- **Domain research for specialized industries** — Fintech, healthcare, etc. - -## Next Steps - -After research: - -1. **Product Brief** — Capture strategic vision informed by research -2. **PRD** — Use findings as context for requirements -3. **Architecture** — Use technical research in ADRs diff --git a/docs/_archive/how-to-workflows/create-architecture.md b/docs/_archive/how-to-workflows/create-architecture.md deleted file mode 100644 index 6ede529c..00000000 --- a/docs/_archive/how-to-workflows/create-architecture.md +++ /dev/null @@ -1,119 +0,0 @@ ---- -title: "How to Create Architecture" -description: How to create system architecture using the BMad Method ---- - -Use the `architecture` workflow to make technical decisions explicit and prevent agent conflicts during implementation. - -## When to Use This - -- Multi-epic projects (BMad Method, Enterprise) -- Cross-cutting technical concerns -- Multiple agents implementing different parts -- Integration complexity exists -- Technology choices need alignment - -## When to Skip This - -- Quick Flow (simple changes) -- BMad Method Simple with straightforward tech stack -- Single epic with clear technical approach - -:::note[Prerequisites] -- BMad Method installed -- Architect agent available -- PRD completed -::: - -## Steps - -### 1. Load the Architect Agent - -Start a fresh chat and load the Architect agent. - -### 2. Run the Architecture Workflow - -``` -*create-architecture -``` - -### 3. Engage in Discovery - -This is NOT a template filler. The architecture workflow: - -1. **Discovers** technical needs through conversation -2. **Proposes** architectural options with trade-offs -3. **Documents** decisions that prevent agent conflicts -4. **Focuses** on decision points, not exhaustive documentation - -### 4. Document Key Decisions - -Work with the agent to create Architecture Decision Records (ADRs) for significant choices. - -### 5. Review the Architecture - -The agent produces a decision-focused architecture document. - -## What You Get - -An `architecture.md` document containing: - -1. **Architecture Overview** — System context, principles, style -2. **System Architecture** — High-level diagram, component interactions -3. **Data Architecture** — Database design, state management, caching -4. **API Architecture** — API style (REST/GraphQL/gRPC), auth, versioning -5. **Frontend Architecture** — Framework, state management, components -6. **Integration Architecture** — Third-party integrations, messaging -7. **Security Architecture** — Auth/authorization, data protection -8. **Deployment Architecture** — CI/CD, environments, monitoring -9. **ADRs** — Key decisions with context, options, rationale -10. **FR/NFR-Specific Guidance** — Technical approach per requirement -11. **Standards and Conventions** — Directory structure, naming, testing - -## ADR Format - -```markdown -## ADR-001: Use GraphQL for All APIs - -**Status:** Accepted | **Date:** 2025-11-02 - -**Context:** PRD requires flexible querying across multiple epics - -**Decision:** Use GraphQL for all client-server communication - -**Options Considered:** -1. REST - Familiar but requires multiple endpoints -2. GraphQL - Flexible querying, learning curve -3. gRPC - High performance, poor browser support - -**Rationale:** -- PRD requires flexible data fetching (Epic 1, 3) -- Mobile app needs bandwidth optimization (Epic 2) -- Team has GraphQL experience - -**Consequences:** -- Positive: Flexible querying, reduced versioning -- Negative: Caching complexity, N+1 query risk -- Mitigation: Use DataLoader for batching -``` - -## Example - -E-commerce platform produces: -- Monolith + PostgreSQL + Redis + Next.js + GraphQL -- ADRs explaining each choice -- FR/NFR-specific implementation guidance - -## Tips - -- **Focus on decisions that prevent conflicts** — Multiple agents need alignment -- **Use ADRs for every significant choice** — Document the "why" -- **Keep it practical** — Don't over-architect -- **Architecture is living** — Update as you learn - -## Next Steps - -After architecture: - -1. **Create Epics and Stories** — Work breakdown informed by architecture -2. **Implementation Readiness** — Gate check before Phase 4 diff --git a/docs/_archive/how-to-workflows/create-epics-and-stories.md b/docs/_archive/how-to-workflows/create-epics-and-stories.md deleted file mode 100644 index aa16a812..00000000 --- a/docs/_archive/how-to-workflows/create-epics-and-stories.md +++ /dev/null @@ -1,109 +0,0 @@ ---- -title: "How to Create Epics and Stories" -description: How to break PRD requirements into epics and stories using BMad Method ---- - -Use the `create-epics-and-stories` workflow to transform PRD requirements into bite-sized stories organized into deliverable epics. - -## When to Use This - -- After architecture workflow completes -- When PRD contains FRs/NFRs ready for implementation breakdown -- Before implementation-readiness gate check - -:::note[Prerequisites] -- BMad Method installed -- PM agent available -- PRD completed -- Architecture completed -::: - -## Why After Architecture? - -This workflow runs AFTER architecture because: - -1. **Informed Story Sizing** — Architecture decisions affect story complexity -2. **Dependency Awareness** — Architecture reveals technical dependencies -3. **Technical Feasibility** — Stories can be properly scoped knowing the tech stack -4. **Consistency** — All stories align with documented architectural patterns - -## Steps - -### 1. Load the PM Agent - -Start a fresh chat and load the PM agent. - -### 2. Run the Workflow - -``` -*create-epics-and-stories -``` - -### 3. Provide Context - -Point the agent to: -- Your PRD (FRs/NFRs) -- Your architecture document -- Optional: UX design artifacts - -### 4. Review Epic Breakdown - -The agent organizes requirements into logical epics with user stories. - -### 5. Validate Story Quality - -Ensure each story has: -- Clear acceptance criteria -- Appropriate priority -- Identified dependencies -- Technical notes from architecture - -## What You Get - -Epic files (one per epic) containing: - -1. **Epic objective and scope** -2. **User stories with acceptance criteria** -3. **Story priorities** (P0/P1/P2/P3) -4. **Dependencies between stories** -5. **Technical notes** referencing architecture decisions - -## Example - -E-commerce PRD with FR-001 (User Registration), FR-002 (Product Catalog) produces: - -- **Epic 1: User Management** (3 stories) - - Story 1.1: User registration form - - Story 1.2: Email verification - - Story 1.3: Login/logout - -- **Epic 2: Product Display** (4 stories) - - Story 2.1: Product listing page - - Story 2.2: Product detail page - - Story 2.3: Search functionality - - Story 2.4: Category filtering - -Each story references relevant ADRs from architecture. - -## Story Priority Levels - -| Priority | Meaning | -|----------|---------| -| **P0** | Critical — Must have for MVP | -| **P1** | High — Important for release | -| **P2** | Medium — Nice to have | -| **P3** | Low — Future consideration | - -## Tips - -- **Keep stories small** — Complete in a single session -- **Make criteria testable** — Acceptance criteria should be verifiable -- **Document dependencies clearly** — Know what blocks what -- **Reference architecture** — Include ADR references in technical notes - -## Next Steps - -After creating epics and stories: - -1. **Implementation Readiness** — Validate alignment before Phase 4 -2. **Sprint Planning** — Organize work for implementation diff --git a/docs/_archive/how-to-workflows/create-prd.md b/docs/_archive/how-to-workflows/create-prd.md deleted file mode 100644 index f2ec0d0b..00000000 --- a/docs/_archive/how-to-workflows/create-prd.md +++ /dev/null @@ -1,91 +0,0 @@ ---- -title: "How to Create a PRD" -description: How to create a Product Requirements Document using the BMad Method ---- - -Use the `prd` workflow to create a strategic Product Requirements Document with Functional Requirements (FRs) and Non-Functional Requirements (NFRs). - -## When to Use This - -- Medium to large feature sets -- Multi-screen user experiences -- Complex business logic -- Multiple system integrations -- Phased delivery required - -:::note[Prerequisites] -- BMad Method installed -- PM agent available -- Optional: Product brief from Phase 1 -::: - -## Steps - -### 1. Load the PM Agent - -Start a fresh chat and load the PM agent. - -### 2. Run the PRD Workflow - -``` -*create-prd -``` - -### 3. Provide Context - -The workflow will: -- Load any existing product brief -- Ask about your project scope -- Gather requirements through conversation - -### 4. Define Requirements - -Work with the agent to define: -- Functional Requirements (FRs) — What the system should do -- Non-Functional Requirements (NFRs) — How well it should do it - -### 5. Review the PRD - -The agent produces a comprehensive PRD scaled to your project. - -## What You Get - -A `PRD.md` document containing: - -- Executive summary -- Problem statement -- User personas -- Functional requirements (FRs) -- Non-functional requirements (NFRs) -- Success metrics -- Risks and assumptions - -## Scale-Adaptive Structure - -The PRD adapts to your project complexity: - -| Scale | Pages | Focus | -|-------|-------|-------| -| **Light** | 10-15 | Focused FRs/NFRs, simplified analysis | -| **Standard** | 20-30 | Comprehensive FRs/NFRs, thorough analysis | -| **Comprehensive** | 30-50+ | Extensive FRs/NFRs, multi-phase, stakeholder analysis | - -## Example - -E-commerce checkout → PRD with: -- 15 FRs (user account, cart management, payment flow) -- 8 NFRs (performance, security, scalability) - -## Tips - -- **Do Product Brief first** — Run product-brief from Phase 1 for better results -- **Focus on "What" not "How"** — Planning defines what to build and why. Leave how (technical design) to Phase 3 -- **Document-Project first for Brownfield** — Always run `document-project` before planning brownfield projects. AI agents need existing codebase context - -## Next Steps - -After PRD: - -1. **Create UX Design** (optional) — If UX is critical -2. **Create Architecture** — Technical design -3. **Create Epics and Stories** — After architecture diff --git a/docs/_archive/how-to-workflows/create-product-brief.md b/docs/_archive/how-to-workflows/create-product-brief.md deleted file mode 100644 index a45ee119..00000000 --- a/docs/_archive/how-to-workflows/create-product-brief.md +++ /dev/null @@ -1,94 +0,0 @@ ---- -title: "How to Create a Product Brief" -description: How to create a product brief using the BMad Method ---- - -Use the `product-brief` workflow to define product vision and strategy through an interactive process. - -## When to Use This - -- Starting new product or major feature initiative -- Aligning stakeholders before detailed planning -- Transitioning from exploration to strategy -- Need executive-level product documentation - -:::note[Prerequisites] -- BMad Method installed -- Analyst agent available -- Optional: Research documents from previous workflows -::: - -## Steps - -### 1. Load the Analyst Agent - -Start a fresh chat and load the Analyst agent. - -### 2. Run the Product Brief Workflow - -``` -*product-brief -``` - -### 3. Answer the Interactive Questions - -The workflow guides you through strategic product vision definition: - -- What problem are you solving? -- Who are your target users? -- What makes this solution different? -- What's the MVP scope? - -### 4. Review and Refine - -The agent will draft sections and let you refine them interactively. - -## What You Get - -The `product-brief.md` document includes: - -- **Executive summary** — High-level overview -- **Problem statement** — With evidence -- **Proposed solution** — And differentiators -- **Target users** — Segmented -- **MVP scope** — Ruthlessly defined -- **Financial impact** — And ROI -- **Strategic alignment** — With business goals -- **Risks and open questions** — Documented upfront - -## Integration with Other Workflows - -The product brief feeds directly into the PRD workflow: - -| Analysis Output | Planning Input | -|-----------------|----------------| -| product-brief.md | **prd** workflow | -| market-research.md | **prd** context | -| technical-research.md | **architecture** (Phase 3) | - -Planning workflows automatically load the product brief if it exists. - -## Common Patterns - -**Greenfield Software (Full Analysis):** - -``` -1. brainstorm-project - explore approaches -2. research (market/technical/domain) - validate viability -3. product-brief - capture strategic vision -4. → Phase 2: prd -``` - -**Skip Analysis (Clear Requirements):** - -``` -→ Phase 2: prd or tech-spec directly -``` - -## Tips - -- **Be specific about the problem** — Vague problems lead to vague solutions -- **Ruthlessly prioritize MVP scope** — Less is more -- **Document assumptions and risks** — Surface unknowns early -- **Use research findings as evidence** — Back up claims with data -- **Recommended for greenfield projects** — Sets strategic foundation diff --git a/docs/_archive/how-to-workflows/create-story.md b/docs/_archive/how-to-workflows/create-story.md deleted file mode 100644 index 34380a9a..00000000 --- a/docs/_archive/how-to-workflows/create-story.md +++ /dev/null @@ -1,102 +0,0 @@ ---- -title: "How to Create a Story" -description: How to create implementation-ready stories from epic backlog ---- - -Use the `create-story` workflow to prepare the next story from the epic backlog for implementation. - -## When to Use This - -- Before implementing each story -- When moving to the next story in an epic -- After sprint-planning has been run - -:::note[Prerequisites] -- BMad Method installed -- SM (Scrum Master) agent available -- Sprint-status.yaml created by sprint-planning -- Architecture and PRD available for context -::: - -## Steps - -### 1. Load the SM Agent - -Start a fresh chat and load the SM (Scrum Master) agent. - -### 2. Run the Workflow - -``` -*create-story -``` - -### 3. Specify the Story - -The agent will: -- Read the sprint-status.yaml -- Identify the next story to work on -- Or let you specify a particular story - -### 4. Review the Story File - -The agent creates a comprehensive story file ready for development. - -## What You Get - -A `story-[slug].md` file containing: - -- Story objective and scope -- Acceptance criteria (specific, testable) -- Technical implementation notes -- References to architecture decisions -- Dependencies on other stories -- Definition of Done - -## Story Content Sources - -The create-story workflow pulls from: - -- **PRD** — Requirements and acceptance criteria -- **Architecture** — Technical approach and ADRs -- **Epic file** — Story context and dependencies -- **Existing code** — Patterns to follow (brownfield) - -## Example Output - -```markdown -## Objective -Implement email verification flow for new user registrations. - -## Acceptance Criteria -- [ ] User receives verification email within 30 seconds -- [ ] Email contains unique verification link -- [ ] Link expires after 24 hours -- [ ] User can request new verification email - -## Technical Notes -- Use SendGrid API per ADR-003 -- Store verification tokens in Redis per architecture -- Follow existing email template patterns in /templates - -## Dependencies -- Story 1.1 (User Registration) - DONE - -## Definition of Done -- All acceptance criteria pass -- Tests written and passing -- Code review approved -``` - -## Tips - -- **Complete one story before creating the next** — Focus on finishing -- **Ensure dependencies are DONE** — Don't start blocked stories -- **Review technical notes** — Align with architecture -- **Use the story file as context** — Pass to dev-story workflow - -## Next Steps - -After creating a story: - -1. **Implement Story** — Run dev-story with the DEV agent -2. **Code Review** — Run code-review after implementation diff --git a/docs/_archive/how-to-workflows/create-ux-design.md b/docs/_archive/how-to-workflows/create-ux-design.md deleted file mode 100644 index 810e934f..00000000 --- a/docs/_archive/how-to-workflows/create-ux-design.md +++ /dev/null @@ -1,100 +0,0 @@ ---- -title: "How to Create a UX Design" -description: How to create UX specifications using the BMad Method ---- - -Use the `create-ux-design` workflow to create UX specifications for projects where user experience is a primary differentiator. - -## When to Use This - -- UX is primary competitive advantage -- Complex user workflows needing design thinking -- Innovative interaction patterns -- Design system creation -- Accessibility-critical experiences - -## When to Skip This - -- Simple CRUD interfaces -- Internal tools with standard patterns -- Changes to existing screens you're happy with -- Quick Flow projects - -:::note[Prerequisites] -- BMad Method installed -- UX Designer agent available -- PRD completed -::: - -## Steps - -### 1. Load the UX Designer Agent - -Start a fresh chat and load the UX Designer agent. - -### 2. Run the UX Design Workflow - -``` -*create-ux-design -``` - -### 3. Provide Context - -Point the agent to your PRD and describe: -- Key user journeys -- UX priorities -- Any existing design patterns - -### 4. Collaborate on Design - -The workflow uses a collaborative approach: - -1. **Visual exploration** — Generate multiple options -2. **Informed decisions** — Evaluate with user needs -3. **Collaborative design** — Refine iteratively -4. **Living documentation** — Evolves with project - -### 5. Review the UX Spec - -The agent produces comprehensive UX documentation. - -## What You Get - -The `ux-spec.md` document includes: - -- User journeys -- Wireframes and mockups -- Interaction specifications -- Design system (components, patterns, tokens) -- Epic breakdown (UX stories) - -## Example - -Dashboard redesign produces: -- Card-based layout with split-pane toggle -- 5 card components -- 12 color tokens -- Responsive grid -- 3 epics (Layout, Visualization, Accessibility) - -## Integration - -The UX spec feeds into: -- PRD updates -- Epic and story creation -- Architecture decisions (Phase 3) - -## Tips - -- **Focus on user problems first** — Solutions come second -- **Generate multiple options** — Don't settle on the first idea -- **Consider accessibility from the start** — Not an afterthought -- **Document component reusability** — Build a system, not just screens - -## Next Steps - -After UX design: - -1. **Update PRD** — Incorporate UX findings -2. **Create Architecture** — Technical design informed by UX -3. **Create Epics and Stories** — Include UX-specific stories diff --git a/docs/_archive/how-to-workflows/implement-story.md b/docs/_archive/how-to-workflows/implement-story.md deleted file mode 100644 index c243a4ae..00000000 --- a/docs/_archive/how-to-workflows/implement-story.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -title: "How to Implement a Story" -description: How to implement a story using the dev-story workflow ---- - -Use the `dev-story` workflow to implement a story with tests following the architecture and conventions. - -## When to Use This - -- After create-story has prepared the story file -- When ready to write code for a story -- Story dependencies are marked DONE - -:::note[Prerequisites] -- BMad Method installed -- DEV agent available -- Story file created by create-story -- Architecture and tech-spec available for context -::: - -## Steps - -### 1. Load the DEV Agent - -Start a fresh chat and load the DEV agent. - -### 2. Run the Workflow - -``` -*dev-story -``` - -### 3. Provide Story Context - -Point the agent to the story file created by create-story. - -### 4. Implement with Guidance - -The DEV agent: -- Reads the story file and acceptance criteria -- References architecture decisions -- Follows existing code patterns -- Implements with tests - -### 5. Complete Implementation - -Work with the agent until all acceptance criteria are met. - -## What Happens - -The dev-story workflow: - -1. **Reads context** — Story file, architecture, existing patterns -2. **Plans implementation** — Identifies files to create/modify -3. **Writes code** — Following conventions and patterns -4. **Writes tests** — Unit, integration, or E2E as appropriate -5. **Validates** — Runs tests and checks acceptance criteria - -## Key Principles - -**One Story at a Time** — Complete each story's full lifecycle before starting the next. This prevents context switching and ensures quality. - -**Follow Architecture** — The DEV agent references ADRs for technology decisions, standards for naming and structure, and existing patterns in the codebase. - -**Write Tests** — Every story includes appropriate tests: unit tests for business logic, integration tests for API endpoints, E2E tests for critical flows. - -## After Implementation - -1. **Update sprint-status.yaml** — Mark story as READY FOR REVIEW -2. **Run code-review** — Quality assurance -3. **Address feedback** — If code review finds issues -4. **Mark DONE** — After code review passes - -## Tips - -- **Keep the story file open** — Reference it during implementation -- **Ask the agent to explain decisions** — Understand the approach -- **Run tests frequently** — Catch issues early -- **Don't skip tests** — Even for "simple" changes - -## Troubleshooting - -**Story needs significant changes mid-implementation?** -Run `correct-course` to analyze impact and route appropriately. - -**Can I work on multiple stories in parallel?** -Not recommended. Complete one story's full lifecycle first. - -**What if implementation reveals the story is too large?** -Split the story and document the change. - -## Next Steps - -After implementing a story: - -1. **Code Review** — Run code-review with the DEV agent -2. **Create Next Story** — Run create-story with the SM agent diff --git a/docs/_archive/how-to-workflows/quick-spec.md b/docs/_archive/how-to-workflows/quick-spec.md deleted file mode 100644 index 936dbdc3..00000000 --- a/docs/_archive/how-to-workflows/quick-spec.md +++ /dev/null @@ -1,122 +0,0 @@ ---- -title: "How to Use Quick Spec" -description: How to create a technical specification using Quick Spec workflow ---- - -Use the `quick-spec` workflow for Quick Flow projects to go directly from idea to implementation-ready specification. - -## When to Use This - -- Bug fixes and small enhancements -- Small features with clear scope (1-15 stories) -- Rapid prototyping -- Adding to existing brownfield codebase -- Quick Flow track projects - -:::note[Prerequisites] -- BMad Method installed -- PM agent or Quick Flow Solo Dev agent available -- Project directory (can be empty for greenfield) -::: - -## Steps - -### 1. Load the PM Agent - -Start a fresh chat and load the PM agent (or Quick Flow Solo Dev agent). - -### 2. Run the Tech Spec Workflow - -``` -*quick-spec -``` - -Or simply describe what you want to build: - -``` -I want to fix the login validation bug -``` - -### 3. Answer Discovery Questions - -The workflow will ask: -- What problem are you solving? -- What's the scope of the change? -- Any specific constraints? - -### 4. Review Detected Context - -For brownfield projects, the agent will: -- Detect your project stack -- Analyze existing code patterns -- Detect test frameworks -- Ask: "Should I follow these existing conventions?" - -### 5. Get Your Tech Spec - -The agent generates a comprehensive tech-spec with ready-to-implement stories. - -## What You Get - -**tech-spec.md:** -- Problem statement and solution -- Detected framework versions and dependencies -- Brownfield code patterns (if applicable) -- Existing test patterns to follow -- Specific file paths to modify -- Complete implementation guidance - -**Story Files:** -- Single changes: `story-[slug].md` -- Small features: `epics.md` + `story-[epic-slug]-1.md`, etc. - -## Example: Bug Fix - -**You:** "I want to fix the login validation bug that allows empty passwords" - -**Agent:** -1. Asks clarifying questions about the issue -2. Detects your Node.js stack (Express 4.18.2, Jest for testing) -3. Analyzes existing UserService code patterns -4. Asks: "Should I follow your existing conventions?" → Yes -5. Generates tech-spec.md with specific file paths -6. Creates story-login-fix.md - -## Example: Small Feature - -**You:** "I want to add OAuth social login (Google, GitHub)" - -**Agent:** -1. Asks about feature scope -2. Detects your stack (Next.js 13.4, NextAuth.js already installed!) -3. Analyzes existing auth patterns -4. Confirms conventions -5. Generates: - - tech-spec.md (comprehensive implementation guide) - - epics.md (OAuth Integration epic) - - story-oauth-1.md (Backend OAuth setup) - - story-oauth-2.md (Frontend login buttons) - -## Implementing After Tech Spec - -```bash -# Single change: -# Load DEV agent and run dev-story - -# Multi-story feature: -# Optional: Load SM agent and run sprint-planning -# Then: Load DEV agent and run dev-story for each story -``` - -## Tips - -- **Be specific in discovery** — "Fix email validation in UserService to allow plus-addressing" beats "Fix validation bug" -- **Trust convention detection** — If it detects your patterns correctly, say yes! It's faster than establishing new conventions -- **Keep single changes atomic** — If your "single change" needs 3+ files, it might be a multi-story feature. Let the workflow guide you - -## Next Steps - -After tech spec: - -1. **Implement Story** — Run dev-story with the DEV agent -2. **Sprint Planning** — Optional for multi-story features diff --git a/docs/_archive/how-to-workflows/run-brainstorming-session.md b/docs/_archive/how-to-workflows/run-brainstorming-session.md deleted file mode 100644 index b05b821c..00000000 --- a/docs/_archive/how-to-workflows/run-brainstorming-session.md +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: "How to Run a Brainstorming Session" -description: How to run a brainstorming session using the BMad Method ---- - -Use the `brainstorm-project` workflow to explore solution approaches through parallel ideation tracks. - -## When to Use This - -- Very vague or seed kernel of an idea that needs exploration -- Consider alternatives or enhancements to an idea -- See your idea from different angles and viewpoints -- No idea what you want to build, but want to find some inspiration - -:::note[Prerequisites] -- BMad Method installed -- Analyst agent available -::: - -## Steps - -### 1. Load the Analyst Agent - -Start a fresh chat and load the Analyst agent. - -### 2. Run the Brainstorm Workflow - -``` -*brainstorm-project -``` - -### 3. Describe Your Idea - -Tell the agent about your project idea, even if it's vague: - -- "I want to build something that helps developers manage their context" -- "I have a game idea about resource management" -- "I need a tool for my team but I'm not sure what exactly" - -### 4. Explore the Tracks - -The workflow generates solution approaches through parallel ideation tracks: - -- **Architecture track** — Technical approaches and patterns -- **UX track** — User experience possibilities -- **Integration track** — How it connects with other systems -- **Value track** — Business value and differentiation - -### 5. Evaluate Options - -Review the generated options with rationale for each approach. - -## What You Get - -- Multiple solution approaches with trade-offs -- Different architectural options -- UX and integration considerations -- Clear rationale for each direction - -## Tips - -- **Don't worry about having a fully formed idea** — Vague is fine -- **Let the agent guide exploration** — Follow the prompts -- **Consider multiple tracks** — Don't settle on the first option -- **Use outputs as input for product-brief** — Build on brainstorming results - -## Next Steps - -After brainstorming: - -1. **Research** — Validate ideas with market/technical research -2. **Product Brief** — Capture strategic vision -3. **PRD** — Move to formal planning diff --git a/docs/_archive/how-to-workflows/run-code-review.md b/docs/_archive/how-to-workflows/run-code-review.md deleted file mode 100644 index ea6e2c85..00000000 --- a/docs/_archive/how-to-workflows/run-code-review.md +++ /dev/null @@ -1,89 +0,0 @@ ---- -title: "How to Run Code Review" -description: How to run code review for quality assurance ---- - -Use the `code-review` workflow to perform a thorough quality review of implemented code. - -## When to Use This - -- After dev-story completes implementation -- Before marking a story as DONE -- Every story goes through code review — no exceptions - -:::note[Prerequisites] -- BMad Method installed -- DEV agent available -- Story implementation complete -- Tests written and passing -::: - -## Steps - -### 1. Load the DEV Agent - -Start a fresh chat (or continue from dev-story) and load the DEV agent. - -### 2. Run the Workflow - -``` -*code-review -``` - -### 3. Provide Context - -Point the agent to: -- The story file -- Files changed during implementation -- Test files - -### 4. Review Findings - -The agent performs a senior developer code review and reports findings. - -### 5. Address Issues - -If issues are found: -1. Fix issues using dev-story -2. Re-run tests -3. Run code-review again - -## What Gets Reviewed - -| Category | Checks | -|----------|--------| -| **Code Quality** | Clean code, appropriate abstractions, no code smells, proper error handling | -| **Architecture Alignment** | Follows ADRs, consistent with patterns, proper separation of concerns | -| **Testing** | Adequate coverage, meaningful tests, edge cases, follows project patterns | -| **Security** | No hardcoded secrets, input validation, proper auth, no common vulnerabilities | -| **Performance** | No obvious issues, appropriate data structures, efficient queries | - -## Review Outcomes - -**Approved** — Code meets quality standards, tests pass. Mark story as DONE in sprint-status.yaml. - -**Changes Requested** — Issues identified that need fixing. Fix issues in dev-story, then re-run code-review. - -## Quality Gates - -Every story goes through code-review before being marked done. This ensures: - -- Consistent code quality -- Architecture adherence -- Test coverage -- Security review - -## Tips - -- **Don't skip for "simple" changes** — Simple changes can have subtle bugs -- **Address all findings** — Not just critical ones -- **Use findings as learning opportunities** — Improve over time -- **Re-run review after fixes** — Verify issues are resolved - -## Next Steps - -After code review: - -1. **If approved** — Update sprint-status.yaml to mark story DONE -2. **If changes requested** — Fix issues and re-run review -3. **Move to next story** — Run create-story for the next item diff --git a/docs/_archive/how-to-workflows/run-implementation-readiness.md b/docs/_archive/how-to-workflows/run-implementation-readiness.md deleted file mode 100644 index 8f938f27..00000000 --- a/docs/_archive/how-to-workflows/run-implementation-readiness.md +++ /dev/null @@ -1,125 +0,0 @@ ---- -title: "How to Run Implementation Readiness" -description: How to validate planning and solutioning before implementation ---- - -Use the `implementation-readiness` workflow to validate that planning and solutioning are complete and aligned before Phase 4 implementation. - -## When to Use This - -- **Always** before Phase 4 for BMad Method and Enterprise projects -- After create-epics-and-stories workflow completes -- Before sprint-planning workflow -- When stakeholders request readiness check - -## When to Skip This - -- Quick Flow (no solutioning phase) -- BMad Method Simple (no gate check required) - -:::note[Prerequisites] -- BMad Method installed -- Architect agent available -- PRD, Architecture, and Epics completed -::: - -## Steps - -### 1. Load the Architect Agent - -Start a fresh chat and load the Architect agent. - -### 2. Run the Workflow - -``` -*implementation-readiness -``` - -### 3. Let the Agent Validate - -The workflow systematically checks: -- PRD completeness -- Architecture completeness -- Epic/Story completeness -- Alignment between all documents - -### 4. Review the Gate Decision - -The agent produces a gate decision with rationale. - -## Gate Decision Outcomes - -| Decision | Meaning | Action | -|----------|---------|--------| -| **PASS** | All critical criteria met, minor gaps acceptable | Proceed to Phase 4 | -| **CONCERNS** | Some criteria not met but not blockers | Proceed with caution, address gaps in parallel | -| **FAIL** | Critical gaps or contradictions | BLOCK Phase 4, resolve issues first | - -## What Gets Checked - -**PRD/GDD Completeness:** -- Problem statement clear and evidence-based -- Success metrics defined -- User personas identified -- FRs and NFRs complete -- Risks and assumptions documented - -**Architecture Completeness:** -- System, data, API architecture defined -- Key ADRs documented -- Security architecture addressed -- FR/NFR-specific guidance provided -- Standards and conventions defined - -**Epic/Story Completeness:** -- All PRD features mapped to stories -- Stories have acceptance criteria -- Stories prioritized (P0/P1/P2/P3) -- Dependencies identified - -**Alignment Checks:** -- Architecture addresses all PRD FRs/NFRs -- Epics align with architecture decisions -- No contradictions between epics -- Integration points clear - -## What You Get - -An `implementation-readiness.md` document containing: - -1. **Executive Summary** (PASS/CONCERNS/FAIL) -2. **Completeness Assessment** (scores for PRD, Architecture, Epics) -3. **Alignment Assessment** (PRD↔Architecture, Architecture↔Epics) -4. **Quality Assessment** (story quality, dependencies, risks) -5. **Gaps and Recommendations** (critical/minor gaps, remediation) -6. **Gate Decision** with rationale -7. **Next Steps** - -## Example - -E-commerce platform → CONCERNS - -**Gaps identified:** -- Missing security architecture section -- Undefined payment gateway - -**Recommendation:** -- Complete security section -- Add payment gateway ADR - -**Action:** Proceed with caution, address before payment epic. - -## Tips - -- **Run before every Phase 4 start** — It's a valuable checkpoint -- **Take FAIL decisions seriously** — Fix issues first -- **Use CONCERNS as a checklist** — Track parallel work -- **Document why you proceed despite concerns** — Transparency matters - -## Next Steps - -After implementation readiness: - -1. **If PASS** — Run sprint-planning to start Phase 4 -2. **If CONCERNS** — Proceed with documented gaps to address -3. **If FAIL** — Return to relevant workflow to fix issues diff --git a/docs/_archive/how-to-workflows/run-sprint-planning.md b/docs/_archive/how-to-workflows/run-sprint-planning.md deleted file mode 100644 index ebdc3066..00000000 --- a/docs/_archive/how-to-workflows/run-sprint-planning.md +++ /dev/null @@ -1,94 +0,0 @@ ---- -title: "How to Run Sprint Planning" -description: How to initialize sprint tracking for implementation ---- - -Use the `sprint-planning` workflow to initialize the sprint tracking file and organize work for implementation. - -## When to Use This - -- Once at the start of Phase 4 (Implementation) -- After implementation-readiness gate passes -- When starting a new sprint cycle - -:::note[Prerequisites] -- BMad Method installed -- SM (Scrum Master) agent available -- Epic files created from `create-epics-and-stories` -- Implementation-readiness passed (for BMad Method/Enterprise) -::: - -## Steps - -### 1. Load the SM Agent - -Start a fresh chat and load the SM (Scrum Master) agent. - -### 2. Run the Workflow - -``` -*sprint-planning -``` - -### 3. Provide Context - -Point the agent to your epic files created during Phase 3. - -### 4. Review Sprint Organization - -The agent organizes stories into the sprint tracking file. - -## What You Get - -A `sprint-status.yaml` file containing: - -- All epics with their stories -- Story status tracking (TODO, IN PROGRESS, READY FOR REVIEW, DONE) -- Dependencies between stories -- Priority ordering - -## Story Lifecycle States - -| State | Description | -|-------|-------------| -| **TODO** | Story identified but not started | -| **IN PROGRESS** | Story being implemented | -| **READY FOR REVIEW** | Implementation complete, awaiting code review | -| **DONE** | Accepted and complete | - -## Typical Sprint Flow - -**Sprint 0 (Planning Phase):** -- Complete Phases 1-3 -- PRD/GDD + Architecture complete -- Epics+Stories created via create-epics-and-stories - -**Sprint 1+ (Implementation Phase):** - -Start of Phase 4: -1. SM runs `sprint-planning` (once) - -Per Story (repeat until epic complete): -1. SM runs `create-story` -2. DEV runs `dev-story` -3. DEV runs `code-review` -4. Update sprint-status.yaml - -After Epic Complete: -- SM runs `retrospective` -- Move to next epic - -## Tips - -- **Run sprint-planning only once** — At Phase 4 start -- **Use sprint-status during Phase 4** — Check current state anytime -- **Keep sprint-status.yaml as single source of truth** — All status updates go here -- **Update story status after each stage** — Keep it current - -## Next Steps - -After sprint planning: - -1. **Create Story** — Prepare the first story for implementation -2. **Implement Story** — Run dev-story with the DEV agent -3. **Code Review** — Quality assurance after implementation diff --git a/docs/_archive/how-to-workflows/setup-party-mode.md b/docs/_archive/how-to-workflows/setup-party-mode.md deleted file mode 100644 index ba6fc5d0..00000000 --- a/docs/_archive/how-to-workflows/setup-party-mode.md +++ /dev/null @@ -1,89 +0,0 @@ ---- -title: "How to Set Up Party Mode" -description: How to set up and use Party Mode for multi-agent collaboration ---- - -Use Party Mode to orchestrate dynamic multi-agent conversations with your entire BMad team. - -## When to Use This - -- Exploring complex topics that benefit from diverse expert perspectives -- Brainstorming with agents who can build on each other's ideas -- Getting comprehensive views across multiple domains -- Strategic decisions with trade-offs - -:::note[Prerequisites] -- BMad Method installed with multiple agents -- Any agent loaded that supports party mode -::: - -## Steps - -### 1. Load Any Agent - -Start with any agent that supports party mode (most do). - -### 2. Start Party Mode - -``` -*party-mode -``` - -Or use the full path: -``` -/bmad:core:workflows:party-mode -``` - -### 3. Introduce Your Topic - -Present a topic or question for the group to discuss: - -``` -I'm trying to decide between a monolithic architecture -and microservices for our new platform. -``` - -### 4. Engage with the Discussion - -The facilitator will: -- Select 2-3 most relevant agents based on expertise -- Let agents respond in character -- Enable natural cross-talk and debate -- Continue until you choose to exit - -### 5. Exit When Ready - -Type "exit" or "done" to conclude the session. Participating agents will say personalized farewells. - -## What Happens - -1. **Agent Roster** — Party Mode loads your complete agent roster -2. **Introduction** — Available team members are introduced -3. **Topic Analysis** — The facilitator analyzes your topic -4. **Agent Selection** — 2-3 most relevant agents are selected -5. **Discussion** — Agents respond, reference each other, engage in cross-talk -6. **Exit** — Session concludes with farewells - -## Example Party Compositions - -| Topic | Typical Agents | -| ---------------------- | ----------------------------------------------------- | -| **Product Strategy** | PM + Innovation Strategist + Analyst | -| **Technical Design** | Architect + Creative Problem Solver + Game Architect | -| **User Experience** | UX Designer + Design Thinking Coach + Storyteller | -| **Quality Assessment** | TEA + DEV + Architect | - -## Key Features - -- **Intelligent agent selection** — Selects based on expertise needed -- **Authentic personalities** — Each agent maintains their unique voice -- **Natural cross-talk** — Agents reference and build on each other -- **Graceful exit** — Personalized farewells - -## Tips - -- **Be specific about your topic** — Better agent selection -- **Let the conversation flow** — Don't over-direct -- **Ask follow-up questions** — Go deeper on interesting points -- **Take notes on key insights** — Capture valuable perspectives -- **Use for strategic decisions** — Not routine tasks diff --git a/docs/_archive/reference/workflows/core-workflows.md b/docs/_archive/reference/workflows/core-workflows.md deleted file mode 100644 index 7a4a4600..00000000 --- a/docs/_archive/reference/workflows/core-workflows.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: "Core Workflows" ---- - -Domain-agnostic workflows that can be utilized by any BMad-compliant module, workflow, or agent. - -## Party Mode - -Orchestrate dynamic multi-agent conversations with your entire BMad team. Engage multiple specialized perspectives simultaneously — each agent maintains their unique personality, expertise, and communication style. - -See [Party Mode](/docs/explanation/features/party-mode.md) for detailed usage. - -## Brainstorming - -Facilitate structured creative sessions using 60+ proven ideation techniques. The AI acts as coach and guide, using proven creativity methods to draw out ideas and insights. - -See [Brainstorming Techniques](/docs/explanation/features/brainstorming-techniques.md) for detailed usage. - -## Advanced Elicitation - -Push the LLM to rethink its work through 50+ reasoning methods — the inverse of brainstorming. The LLM applies sophisticated techniques to re-examine and enhance content it has just generated. - -See [Advanced Elicitation](/docs/explanation/features/advanced-elicitation.md) for detailed usage. - -## Workflow Integration - -Core Workflows accept contextual parameters when called from other modules: - -- **Topic focus** — Direct the session toward a specific domain or question -- **Additional personas** (Party Mode) — Inject expert agents into the roster at runtime -- **Guardrails** (Brainstorming) — Set constraints and boundaries for ideation -- **Output goals** — Define what the final output needs to accomplish diff --git a/docs/_archive/reference/workflows/document-project.md b/docs/_archive/reference/workflows/document-project.md deleted file mode 100644 index 74adca93..00000000 --- a/docs/_archive/reference/workflows/document-project.md +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: "Document Project Workflow" ---- - -Analyzes and documents brownfield projects for AI-assisted development. - -:::note[Quick Facts] -- **Module:** BMM (BMad Method Module) -- **Command:** `*document-project` -- **Agents:** Analyst, Technical Writer -- **Output:** Master index + documentation files in `{output_folder}` -::: - -## Purpose - -Scans your codebase, architecture, and patterns to create comprehensive reference documentation. Generates a master index and multiple documentation files tailored to your project structure and type. - -## How to Invoke - -```bash -*document-project -``` - -## Scan Levels - -Choose the right depth for your needs: - -### Quick Scan (Default) - -**What it does:** Pattern-based analysis without reading source files - -**Reads:** Config files, package manifests, directory structure, README - -**Use when:** -- You need a fast project overview -- Initial understanding of project structure -- Planning next steps before deeper analysis - -### Deep Scan - -**What it does:** Reads files in critical directories based on project type - -**Reads:** Files in critical paths defined by documentation requirements - -**Use when:** -- Creating comprehensive documentation for brownfield PRD -- Need detailed analysis of key areas -- Want balance between depth and speed - -### Exhaustive Scan - -**What it does:** Reads ALL source files in project - -**Reads:** Every source file (excludes node_modules, dist, build, .git) - -**Use when:** -- Complete project analysis needed -- Migration planning requires full understanding -- Detailed audit of entire codebase - -:::caution[Deep-Dive Mode] -Deep-dive mode always uses exhaustive scan — no choice of scan level. -::: - -## Resumability - -The workflow can be interrupted and resumed without losing progress: - -- **State Tracking** — Progress saved in `project-scan-report.json` -- **Auto-Detection** — Workflow detects incomplete runs (<24 hours old) -- **Resume Prompt** — Choose to resume or start fresh -- **Step-by-Step** — Resume from exact step where interrupted -- **Archiving** — Old state files automatically archived diff --git a/docs/_archive/reference/workflows/index.md b/docs/_archive/reference/workflows/index.md deleted file mode 100644 index afaff1a0..00000000 --- a/docs/_archive/reference/workflows/index.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "Workflows Reference" -description: Reference documentation for BMad Method workflows ---- - -Reference documentation for all BMad Method workflows. - -## Core Workflows - -- [Core Workflows](/docs/reference/workflows/core-workflows.md) — Domain-agnostic workflows available to all modules -- [Document Project](/docs/reference/workflows/document-project.md) — Brownfield project documentation - diff --git a/docs/_archive/vendor-workflows.md b/docs/_archive/vendor-workflows.md deleted file mode 100644 index 4ad4f840..00000000 --- a/docs/_archive/vendor-workflows.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: "Workflow Vendoring, Customization, and Inheritance" ---- - -Use workflow vendoring and inheritance to share or reutilize workflows across modules. - -## Workflow Vendoring - -Workflow Vendoring allows an agent to have access to a workflow from another module, without having to install said module. At install time, the module workflow being vendored will be cloned and installed into the module that is receiving the vendored workflow the agent needs. - -### How to Vendor - -Lets assume you are building a module, and you do not want to recreate a workflow from the BMad Method, such as workflows/4-implementation/dev-story/workflow.md. Instead of copying all the context to your module, and having to maintain it over time as updates are made, you can instead use the exec-vendor menu item in your agent. - -From your modules agent definition, you would implement the menu item as follows in the agent: - -```yaml - - trigger: develop-story - exec-vendor: "{project-root}/_bmad//workflows/4-production/dev-story/workflow.md" - exec: "{project-root}/_bmad//workflows/dev-story/workflow.md" - description: "Execute Dev Story workflow, implementing tasks and tests, or performing updates to the story" -``` - -At install time, it will clone the workflow and all of its required assets, and the agent that gets built will have an exec to a path installed in its own module. The content gets added to the folder you specify in exec. While it does not have to exactly match the source path, you will want to ensure you are specifying the workflow.md to be in a new location (in other words in this example, dev-story would not already be the path of another custom module workflow that already exists.) - -## Workflow Inheritance - -:::note[Coming Soon] -Official support for workflow inheritance is coming post beta. -::: - -Workflow Inheritance is a different concept, that allows you to modify or extend existing workflow. - -Party Mode from the core is an example of a workflow that is designed with inheritance in mind - customization for specific party needs. While party mode itself is generic - there might be specific agent collaborations you want to create. Without having to reinvent the whole party mode concept, or copy and paste all of its content - you could inherit from party mode to extend it to be specific. - -Some possible examples could be: - -- Retrospective -- Sprint Planning -- Collaborative Brainstorming Sessions - -## Workflow Customization - -:::note[Coming Soon] -Official support for workflow customization is coming post beta. -::: - -Similar to Workflow Inheritance, Workflow Customization will soon be allowed for certain workflows that are meant to be user customized - similar in process to how agents are customized now. - -This will take the shape of workflows with optional hooks, configurable inputs, and the ability to replace whole at install time. - -For example, assume you are using the Create PRD workflow, which is comprised of 11 steps, and you want to always include specifics about your companies domain, technical landscape or something else. While project-context can be helpful with that, you can also through hooks and step overrides, have full replace steps, the key requirement being to ensure your step replace file is an exact file name match of an existing step, follows all conventions, and ends in a similar fashion to either hook back in to call the next existing step, or more custom steps that eventually hook back into the flow. diff --git a/docs/_basement/explanation/bmm.md b/docs/_basement/explanation/bmm.md deleted file mode 100644 index 2631a43e..00000000 --- a/docs/_basement/explanation/bmm.md +++ /dev/null @@ -1,131 +0,0 @@ ---- -title: "BMM Documentation" ---- - -Complete guides for the BMad Method Module (BMM) — AI-powered agile development workflows that adapt to your project's complexity. - -## Getting Started - -:::tip[Quick Path] -Install → workflow-init → Follow agent guidance -::: - -**New to BMM?** Start here: - -| Resource | Description | -|----------|-------------| -| **[Quick Start Guide](/docs/tutorials/getting-started/getting-started-bmadv6.md)** | Step-by-step guide to building your first project | -| **[Complete Workflow Diagram](../../tutorials/getting-started/images/workflow-method-greenfield.svg)** | Visual flowchart showing all phases, agents, and decision points | - -## Core Concepts - -The BMad Method is meant to be adapted and customized to your specific needs. In this realm there is no one size fits all - your needs are unique, and BMad Method is meant to support this (and if it does not, can be further customized or extended with new modules). - -First know there is the full BMad Method Process and then there is a Quick Flow for those quicker smaller efforts. - -- **[Full Adaptive BMad Method](#workflow-guides)** - Full planning and scope support through extensive development and testing. - - Broken down into 4 phases, all of which are comprised of both required and optional phases - - Phases 1-3 are all about progressive idea development through planning and preparations to build your project. - - Phase 4 is the implementation cycle where you will Just In Time (JIT) produce the contextual stories needed for the dev agent based on the extensive planning completed - - All 4 phases have optional steps in them, depending on how rigorous you want to go with planning, research ideation, validation, testing and traceability. - - While there is a lot here, know that even this can be distilled down to a simple PRD, Epic and Story list and then jump into the dev cycle. But if that is all you want, you might be better off with the BMad Quick Flow described next - -- **[BMad Quick Flow](/docs/explanation/features/quick-flow.md)** - Fast-track development workflow - - 3-step process: spec → dev → optional review - - Perfect for bug fixes and small features - - Rapid prototyping with production quality - - Implementation in minutes, not days - - Has a specialized single agent that does all of this: **[Quick Flow Solo Dev Agent](/docs/explanation/agents/barry-quick-flow.md)** - -- **TEA engagement (optional)** - Choose TEA engagement: none, TEA-only (standalone), or integrated by track. See **[Test Architect Guide](/docs/explanation/features/tea-overview.md)**. - -## Agents and Collaboration - -Complete guide to BMM's AI agent team: - -- **[Agents Guide](/docs/explanation/core-concepts/agent-roles.md)** - Comprehensive agent reference - - 12 specialized BMM agents + BMad Master - - Agent roles, workflows, and when to use them - - Agent customization system - - Best practices and common patterns - -- **[Party Mode Guide](/docs/explanation/features/party-mode.md)** - Multi-agent collaboration - - How party mode works (19+ agents collaborate in real-time) - - When to use it (strategic, creative, cross-functional, complex) - - Example party compositions - - Multi-module integration (BMM + CIS + BMB + custom) - - Agent customization in party mode - - Best practices - -## Working with Existing Code - -Comprehensive guide for brownfield development: - -- **[Brownfield Development Guide](/docs/how-to/brownfield/index.md)** - Complete guide for existing codebases - - Documentation phase strategies - - Track selection for brownfield - - Integration with existing patterns - - Phase-by-phase workflow guidance - - Common scenarios - -## Quick References - -Essential reference materials: - -- **[Glossary](/docs/reference/glossary/index.md)** - Key terminology and concepts -- **[FAQ](/docs/explanation/faq/index.md)** - Frequently asked questions across all topics - -## Choose Your Path - -### I need to... - -**Build something new (greenfield)** -→ Start with [Quick Start Guide](/docs/tutorials/getting-started/getting-started-bmadv6.md) - -**Fix a bug or add small feature** -→ Use the [Quick Flow Solo Dev](/docs/explanation/agents/barry-quick-flow.md) directly with its dedicated stand alone [Quick Bmad Spec Flow](/docs/explanation/features/quick-flow.md) process - -**Work with existing codebase (brownfield)** -→ Read [Brownfield Development Guide](/docs/how-to/brownfield/index.md) -→ Pay special attention to documentation requirements for brownfield projects - -## Workflow Guides - -Comprehensive documentation for all BMM workflows organized by phase: - -- **[Phase 1: Analysis Workflows](/docs/how-to/workflows/run-brainstorming-session.md)** - Optional exploration and research workflows (595 lines) - - brainstorm-project, product-brief, research, and more - - When to use analysis workflows - - Creative and strategic tools - -- **[Phase 2: Planning Workflows](/docs/how-to/workflows/create-prd.md)** - Scale-adaptive planning (967 lines) - - prd, tech-spec, gdd, narrative, ux - - Track-based planning approach (Quick Flow, BMad Method, Enterprise Method) - - Which planning workflow to use - -- **[Phase 3: Solutioning Workflows](/docs/how-to/workflows/create-architecture.md)** - Architecture and validation (638 lines) - - architecture, create-epics-and-stories, implementation-readiness - - V6: Epics created AFTER architecture for better quality - - Required for BMad Method and Enterprise Method tracks - - Preventing agent conflicts - -- **[Phase 4: Implementation Workflows](/docs/how-to/workflows/run-sprint-planning.md)** - Sprint-based development (1,634 lines) - - sprint-planning, create-story, dev-story, code-review - - Complete story lifecycle - - One-story-at-a-time discipline - -- **[Testing & QA Workflows](/docs/explanation/features/tea-overview.md)** - Comprehensive quality assurance (1,420 lines) - - Test strategy, automation, quality gates - - TEA agent and test healing - -## External Resources - -### Community and Support - -- **[Discord Community](https://discord.gg/gk8jAdXWmj)** - Get help from the community (#bmad-method-help, #report-bugs-and-issues) -- **[GitHub Issues](https://github.com/bmad-code-org/BMAD-METHOD/issues)** - Report bugs or request features -- **[YouTube Channel](https://www.youtube.com/@BMadCode)** - Video tutorials and walkthroughs - -:::tip[Ready to Begin?] -[Start with the Quick Start Guide](/docs/tutorials/getting-started/getting-started-bmadv6.md) -::: diff --git a/docs/_basement/explanation/core-concepts/agent-roles.md b/docs/_basement/explanation/core-concepts/agent-roles.md deleted file mode 100644 index 31e0d76c..00000000 --- a/docs/_basement/explanation/core-concepts/agent-roles.md +++ /dev/null @@ -1,179 +0,0 @@ ---- -title: "Agent Roles in BMad Method" -description: Understanding the different agent roles in BMad Method ---- - -BMad Method uses specialized AI agents, each with a distinct role, expertise, and personality. Understanding these roles helps you know which agent to use for each task. - -## Core Agents Overview - -| Agent | Role | Primary Phase | -|-------|------|---------------| -| **Analyst** | Research and discovery | Phase 1 (Analysis) | -| **PM** | Requirements and planning | Phase 2 (Planning) | -| **Architect** | Technical design | Phase 3 (Solutioning) | -| **SM** | Sprint orchestration | Phase 4 (Implementation) | -| **DEV** | Code implementation | Phase 4 (Implementation) | -| **TEA** | Test architecture | Phases 3-4 (Cross-phase) | -| **UX Designer** | User experience | Phase 2-3 | -| **Quick Flow Solo Dev** | Fast solo development | All phases (Quick Flow) | - -## Phase 1: Analysis - -### Analyst (Mary) - -Business analysis and research specialist. - -**Responsibilities:** -- Brainstorming and ideation -- Market, domain, and competitive research -- Product brief creation -- Brownfield project documentation - -**Key Workflows:** -- `*brainstorm-project` -- `*research` -- `*product-brief` -- `*document-project` - -**When to use:** Starting new projects, exploring ideas, validating market fit, documenting existing codebases. - -## Phase 2: Planning - -### PM (John) - -Product requirements and planning expert. - -**Responsibilities:** -- Creating Product Requirements Documents -- Defining functional and non-functional requirements -- Breaking requirements into epics and stories -- Validating implementation readiness - -**Key Workflows:** -- `*create-prd` -- `*create-epics-and-stories` -- `*implementation-readiness` - -**When to use:** Defining what to build, creating PRDs, organizing work into stories. - -### UX Designer (Sally) - -User experience and UI design specialist. - -**Responsibilities:** -- UX specification creation -- User journey mapping -- Wireframe and mockup design -- Design system documentation - -**Key Workflows:** -- `*create-ux-design` -- `*validate-design` - -**When to use:** When UX is a primary differentiator, complex user workflows, design system creation. - -## Phase 3: Solutioning - -### Architect (Winston) - -System architecture and technical design expert. - -**Responsibilities:** -- System architecture design -- Architecture Decision Records (ADRs) -- Technical standards definition -- Implementation readiness validation - -**Key Workflows:** -- `*create-architecture` -- `*implementation-readiness` - -**When to use:** Multi-epic projects, cross-cutting technical decisions, preventing agent conflicts. - -## Phase 4: Implementation - -### SM (Bob) - -Sprint planning and story preparation orchestrator. - -**Responsibilities:** -- Sprint planning and tracking -- Story preparation for development -- Course correction handling -- Epic retrospectives - -**Key Workflows:** -- `*sprint-planning` -- `*create-story` -- `*correct-course` -- `*epic-retrospective` - -**When to use:** Organizing work, preparing stories, tracking progress. - -### DEV (Amelia) - -Story implementation and code review specialist. - -**Responsibilities:** -- Story implementation with tests -- Code review -- Following architecture patterns -- Quality assurance - -**Key Workflows:** -- `*dev-story` -- `*code-review` - -**When to use:** Writing code, implementing stories, reviewing quality. - -## Cross-Phase Agents - -### TEA (Murat) - -Test architecture and quality strategy expert. - -**Responsibilities:** -- Test framework setup -- Test design and planning -- ATDD and automation -- Quality gate decisions - -**Key Workflows:** -- `*framework`, `*ci` -- `*test-design`, `*atdd`, `*automate` -- `*test-review`, `*trace`, `*nfr-assess` - -**When to use:** Setting up testing, creating test plans, quality gates. - -## Quick Flow - -### Quick Flow Solo Dev (Barry) - -Fast solo development without handoffs. - -**Responsibilities:** -- Technical specification -- End-to-end implementation -- Code review - -**Key Workflows:** -- `*quick-spec` -- `*quick-dev` -- `*code-review` - -**When to use:** Bug fixes, small features, rapid prototyping. - -## Choosing the Right Agent - -| Task | Agent | -|------|-------| -| Brainstorming ideas | Analyst | -| Market research | Analyst | -| Creating PRD | PM | -| Designing UX | UX Designer | -| System architecture | Architect | -| Preparing stories | SM | -| Writing code | DEV | -| Setting up tests | TEA | -| Quick bug fix | Quick Flow Solo Dev | diff --git a/docs/_basement/explanation/core-concepts/what-are-modules.md b/docs/_basement/explanation/core-concepts/what-are-modules.md deleted file mode 100644 index 0c4eaae0..00000000 --- a/docs/_basement/explanation/core-concepts/what-are-modules.md +++ /dev/null @@ -1,85 +0,0 @@ ---- -title: "Modules" ---- - -Modules are organized collections of agents and workflows that solve specific problems or address particular domains. - -## What is a Module? - -A module is a self-contained package that includes: - -- **Agents** - Specialized AI assistants -- **Workflows** - Step-by-step processes -- **Configuration** - Module-specific settings -- **Documentation** - Usage guides and reference - -## Official BMad Method and Builder Modules - -:::note[Core is Always Installed] -The Core module is automatically included with every BMad installation. It provides the foundation that other modules build upon. -::: - -### Core Module -Always installed, provides shared functionality: -- Global configuration -- Core workflows (Party Mode, Advanced Elicitation, Brainstorming) -- Common tasks (document indexing, sharding, review) - -### BMad Method (BMM) -Software and game development: -- Project planning workflows -- Implementation agents (Dev, PM, QA, Scrum Master) -- Testing and architecture guidance - -### BMad Builder (BMB) -Create custom solutions: -- Agent creation workflows -- Workflow authoring tools -- Module scaffolding - -## Additional Official BMad Modules - -These are officially maintained modules by BMad but have their own repo's and docs. -These give a good idea also of what can be done with the BMad builder and creating your own custom modules. - -### Creative Intelligence Suite (CIS) -Innovation and creativity: -- Creative thinking techniques -- Innovation strategy workflows -- Storytelling and ideation -- [Available Here](https://github.com/bmad-code-org/bmad-module-creative-intelligence-suite) - -### BMad Game Dev (BMGD) -Game development specialization: -- Game design workflows -- Narrative development -- Performance testing frameworks -- [Available Here](https://github.com/bmad-code-org/bmad-module-game-dev-studio) - -## Module Structure - -Installed modules follow this structure: - -``` -_bmad/ -├── core/ # Always present -├── bmm/ # BMad Method (if installed) -├── bmb/ # BMad Builder (if installed) -├── cis/ # Creative Intelligence (if installed) -└── bmgd/ # Game Dev (if installed) -``` - -## Custom Modules - -You can create your own modules containing: -- Custom agents for your domain -- Organizational workflows -- Team-specific configurations - -Custom modules are installed the same way as official modules. - -## Installing Modules - -During BMad installation, you choose which modules to install. You can also add or remove modules later by re-running the installer. - -See [Installation Guide](/docs/how-to/installation/index.md) for details. diff --git a/docs/_basement/explanation/core-concepts/what-are-workflows.md b/docs/_basement/explanation/core-concepts/what-are-workflows.md deleted file mode 100644 index e8721da9..00000000 --- a/docs/_basement/explanation/core-concepts/what-are-workflows.md +++ /dev/null @@ -1,204 +0,0 @@ ---- -title: "Workflows" ---- - -Workflows are like prompts on steroids. They harness the untapped power and control of LLMs through progressive disclosure—breaking complex tasks into focused steps that execute sequentially. Instead of random AI slop where you hope for the best, workflows give you repeatable, reliable, high-quality outputs. - -This guide explains what workflows are, why they're powerful, and how to think about designing them. - -## What Is a Workflow? - -A workflow is a structured process where the AI executes steps sequentially to accomplish a task. Each step has a specific purpose, and the AI moves through them methodically—whether that involves extensive collaboration or minimal user interaction. - -Think of it this way: instead of asking "help me build a nutrition plan" and getting a generic response, a workflow guides you (or runs automatically) through discovery, assessment, strategy, shopping lists, and prep schedules—each step building on the last, nothing missed, no shortcuts taken. - -## How do workflows differ from skills? - -Actually they really do not - a workflow can be a skill, and a skill can be a workflow. The main thing with a BMad workflow is the suggestion to follow certain conventions, which actually are also skill best practices. A skill has a few optional and required fields to add as the main file workflow and get stored in a specific location depending on your tool choice for automatic invocation by the llm - whereas workflows are generally intentionally launched, with from another process calling them, or a user invoking via a slash command. In the near future, workflows will optionally be installable as skills also - but if you like, you can add front matter to your custom workflows based on the skill spec from Anthropic, and put them in the proper location your tool dictates. - -### The Power of Progressive Disclosure - -Here's why workflows work so well: the AI only sees the current step. It doesn't know about step 5 when it's on step 2. It can't get ahead of itself, skip steps, or lose focus. Each step gets the AI's full attention, completing fully before the next step loads. - -This is the opposite of a giant prompt that tries to handle everything at once and inevitably misses details or loses coherence. - -Workflows exist on a spectrum: - -- **Interactive workflows** guide users through complex decisions via collaboration and facilitation -- **Automated workflows** run with minimal user input, processing documents or executing tasks -- **Hybrid workflows** combine both—some steps need user input, others run automatically - -### Real-World Workflow Examples - -**Tax Organizer Workflow** - -A tax preparation workflow that helps users organize financial documents for tax filing. Runs in a single session, follows prescriptive IRS categories, produces a checklist of required documents with missing-item alerts. Sequential and compliance-focused. - -**Meal Planning Workflow** - -Creates personalized weekly meal plans through collaborative nutrition planning. Users can stop mid-session and return later because the workflow tracks progress. Intent-based conversation helps discover preferences rather than following a script. Multi-session, creative, and highly interactive. - -**Course Creator Workflow** - -Helps instructors design course syllabi. Branches based on course type—academic courses need accreditation sections, vocational courses need certification prep, self-paced courses need different structures entirely. - -**Therapy Intake Workflow** - -Guides mental health professionals through structured client intake sessions. Highly sensitive and confidential, uses intent-based questioning to build rapport while ensuring all required clinical information is collected. Continuable across multiple sessions. - -**Software Architecture Workflow** (BMM Module) - -Part of a larger software development pipeline. Runs after product requirements and UX design are complete, takes those documents as input, then collaboratively walks through technical decisions: system components, data flows, technology choices, architectural patterns. Produces an architecture document that implementation teams use to build consistently. - -**Shard Document Workflow** - -Nearly hands-off automated workflow. Takes a large document as input, uses a custom npx tool to split it into smaller files, deletes the original, then augments an index with content details so the LLM can efficiently find and reference specific sections later. Minimal user interaction—just specify the input document. - -These examples show the range: from collaborative creative processes to automated batch jobs, workflows ensure completeness and consistency whether the work involves deep collaboration or minimal human oversight. - -### The Facilitative Philosophy - -When workflows involve users, they should be **facilitative, not directive**. The AI treats users as partners and domain experts, not as passive recipients of generated content. - -**Collaborative dialogue, not command-response**: The AI and user work together throughout. The AI brings structured thinking, methodology, and technical knowledge. The user brings domain expertise, context, and judgment. Together they produce something better than either could alone. - -**The user is the expert in their domain**: A nutrition planning workflow doesn't dictate meal plans—it guides users through discovering what works for their lifestyle. An architecture workflow doesn't tell architects what to build—it facilitates systematic decision-making so choices are explicit and consistent. - -**Intent-based facilitation**: Workflows should describe goals and approaches, not scripts. Instead of "Ask: What is your age? Then ask: What is your goal weight?" use "Guide the user through understanding their health profile. Ask 1-2 questions at a time. Think about their responses before asking follow-ups. Probe to understand their actual needs." - -The AI figures out exact wording and question order based on conversation context. This makes interactions feel natural and responsive rather than robotic and interrogative. - -:::caution[When to Be Prescriptive] -Some workflows require exact scripts—medical intake, legal compliance, safety-critical procedures. But these are the exception. Default to facilitative intent-based approaches unless compliance or regulation demands otherwise. -::: - -## Why Workflows Matter - -Workflows solve three fundamental problems with AI interactions: - -**Focus**: Each step contains only instructions for that phase. The AI sees one step at a time, preventing it from getting ahead of itself or losing focus. - -**Continuity**: Workflows can span multiple sessions. Stop mid-workflow and return later without losing progress—something free-form prompts can't do. - -**Quality**: Sequential enforcement prevents shortcuts. The AI must complete each step fully before moving on, ensuring thorough, complete outputs instead of rushed, half-baked results. - -## How Workflows Work - -### The Basic Structure - -Workflows consist of multiple markdown files, each representing one step: - -``` -my-workflow/ -├── workflow.md # Entry point and configuration -├── steps/ # Step files (steps-c/ for create, steps-e/ for edit, steps-v/ for validate) -│ ├── step-01-init.md -│ ├── step-02-profile.md -│ └── step-N-final.md -├── data/ # Reference materials, CSVs, examples -└── templates/ # Output document templates -``` - -The `workflow.md` file is minimal—it contains the workflow name, description, goal, the AI's role, and how to start. Importantly, it does not list all steps or detail what each does. This is progressive disclosure in action. - -### Sequential Execution - -Workflows execute in strict sequence: `step-01 → step-02 → step-03 → ... → step-N` - -The AI cannot skip steps or optimize the sequence. It must complete each step fully before loading the next. This ensures thoroughness and prevents shortcuts that compromise quality. - -### Continuable Workflows - -Some workflows are complex enough that users might need multiple sessions. These "continuable workflows" track which steps are complete in the output document's frontmatter, so users can stop and resume later without losing progress. - -Use continuable workflows when: -- The workflow produces large documents -- Multiple sessions are likely -- Complex decisions benefit from reflection -- The workflow has many steps (8+) - -Keep it simple (single-session) when tasks are quick, focused, and can be completed in one sitting. - -### Workflow Chaining - -Workflows can be chained together where outputs become inputs. The BMM module pipeline is a perfect example: - -``` -brainstorming → research → brief → PRD → UX → architecture → epics → sprint-planning - ↓ - implement-story → review → repeat -``` - -Each workflow checks for required inputs from prior workflows, validates they're complete, and produces output for the next workflow. This creates powerful end-to-end pipelines for complex processes. - -### The Tri-Modal Pattern - -For critical workflows that produce important artifacts, BMad uses a tri-modal structure: Create, Validate, and Edit. Each mode is a separate workflow path that can run independently or flow into the others. - -**Create mode** builds new artifacts from scratch. But here's where it gets interesting: create mode can also function as a conversion tool. Feed it a non-compliant document—something that doesn't follow BMad standards—and it will extract the essential content and rebuild it as a compliant artifact. This means you can bring in existing work and automatically upgrade it to follow proper patterns. - -**Validate mode** runs standalone and checks artifacts against standards. Because it's separate, you can run validation whenever you want—immediately after creation, weeks later when things have changed, or even using a different LLM entirely. It's like having a quality assurance checkpoint that's always available but never forced. - -**Edit mode** modifies existing artifacts while enforcing standards. As you update documents to reflect changing requirements or new understanding, edit mode ensures you don't accidentally drift away from the patterns that make the artifacts useful. It checks compliance as you work and can route back to create mode if it detects something that needs full conversion. - -All BMad planning workflows and the BMB module (will) use this tri-modal pattern. The pristine example is the workflow workflow in BMB—it creates workflow specifications, validates them against standards, and lets you edit them while maintaining compliance. You can study that workflow to see the pattern in action. - -This tri-modal approach gives you the best of both worlds: the creativity and flexibility to build what you need, the quality assurance of validation that can run anytime, and the ability to iterate while staying true to standards that make the artifacts valuable across sessions and team members. - -## Design Decisions - -Before building a workflow, answer these questions: - -**Module affiliation**: Is this standalone or part of a module? Module-based workflows can access module-specific variables and reference other workflow outputs. Also when part of a module, generally they will be associated to an agent. - -**Continuable or single-session?**: Will users need multiple sessions, or can this be completed in one sitting? - -**Edit/Validate support?**: Do you need Create/Edit/Validate modes (tri-modal structure)? Use tri-modal for complex, critical workflows requiring quality assurance. Use create-only for simple, one-off workflows. - -**Document output?**: Does this produce a persistent file, or perform actions without output? - -**Intent or prescriptive?**: Is this intent-based facilitation (most workflows) or prescriptive compliance (medical, legal, regulated)? - -## Learning from Examples - -The best way to understand workflows is to study real examples. Look at the official BMad modules: - -- **BMB (Module Builder)**: Module, Workflow and Agent creation workflows -- **BMM (Business Method Module)**: Complete software development pipeline from brainstorming through sprint planning -- **BMGD (Game Development Module)**: Game design briefs, narratives, architecture -- **CIS (Creativity, Innovation, Strategy)**: Brainstorming, design thinking, storytelling, innovation strategy - -Study the workflow.md files to understand how each workflow starts. Examine step files to see how instructions are structured. Notice the frontmatter variables, menu handling, and how steps chain together. - -Copy patterns that work. Adapt them to your domain. The structure is consistent across all workflows—the content and steps change, but the architecture stays the same. - -## When to Use Workflows - -Use workflows when: - -- **Tasks are multi-step and complex**: Break down complexity into manageable pieces -- **Quality and completeness matter**: Sequential enforcement ensures nothing gets missed -- **Repeatability is important**: Get consistent results every time -- **Tasks span multiple sessions**: Continuable workflows preserve progress -- **You need to chain processes**: Output of one workflow becomes input of another -- **Compliance or standards matter**: Enforce required steps and documentation - -Don't use workflows when: - -- **Tasks are simple and one-off**: A single prompt works fine for quick questions -- **Flexibility trumps structure**: Free-form conversation is better for exploration - -Modified BMad Workflows - -- **Tasks are truly one-step** - -If there's only one thing to do and it can be explained in under about 300 lines - don't bother with step files. Instead, you can still have -a short single file workflow.md file. - -## The Bottom Line - -Workflows transform AI from a tool that gives variable, unpredictable results into a reliable system for complex, multi-step processes. Through progressive disclosure, sequential execution, guided facilitation, and thoughtful design, workflows give you control and repeatability that ad-hoc prompting alone can't match. - -They're not just for software development. You can create workflows for any guided process - meal planning, course design, therapy intake, tax preparation, document processing, creative writing, event planning—any complex task that benefits from structure and thoroughness. - -Start simple. Study examples. Build workflows for your own domain. You'll wonder how you ever got by with just prompts. diff --git a/docs/_basement/explanation/facilitation-over-generation.md b/docs/_basement/explanation/facilitation-over-generation.md deleted file mode 100644 index a0298c5a..00000000 --- a/docs/_basement/explanation/facilitation-over-generation.md +++ /dev/null @@ -1,333 +0,0 @@ ---- -title: "Facilitation Over Generation" -description: Understanding a facilitation-first approach to AI workflows and creative collaboration ---- - -BMAD workflows take a fundamentally different approach from typical AI Prompts you will find. Instead of generating solutions directly, workflows act as facilitators who guide you through discovery processes, helping you arrive at insights and decisions yourself. - -This has always been the magic of the BMad method - if you have used it you have felt it intuitively and noticed a difference - and it is through this document I want to really explain what this is. This is fundamental to understand if you are also interested in producing your own workflows or improving upon existing ones in any BMad related module. - -## The Problem with Generation - -Traditional AI approaches to creative and knowledge work typically follow this pattern: - -:::note[Generation Example] -**User:** "I need a comprehensive UX design for my e-commerce app" - -**AI:** [Immediately generates] "Here's a complete UX specification with modern dark theme, card-based product grid, left navigation, and checkout flow..." -::: - -This approach: -- Produces generic, predictable outputs that may not fit your actual needs -- Removes your ownership and understanding of the solution -- Misses critical context, constraints, and nuance -- Limits creative exploration to the AI's training data patterns -- Creates deliverables you can't explain or iterate on effectively - -## The Facilitation Approach - -Facilitative workflows use strategic questioning and guided discovery: - -:::note[Facilitation Example from UX Design Workflow] -**User:** "I need a comprehensive UX design for my e-commerce app" - -**Workflow:** "Welcome! I'll act as your UX facilitator to help you discover the right approach. First, let me understand what documents you already have—do you have a product brief, PRD, or any research?" - -**User:** "I have a product brief and some user research" - -**Workflow:** "Great! Let me load those. [Loads documents] Now, what are the primary user goals for your e-commerce experience? What should users be able to accomplish?" - -**User:** "They need to browse products quickly and complete purchases without friction" - -**Workflow:** "Interesting! And what makes your e-commerce situation unique? What are the specific challenges or constraints you're working with?" -::: - -This approach: -- Draws out insights and expertise already within you -- Maintains your ownership and understanding of decisions -- Captures your specific context, constraints, and goals -- Enables deeper exploration of your unique situation -- Creates outputs you can confidently explain and iterate on - -## Real-World Examples from BMAD Workflows - -### Brainstorming Workflow (from core module) - -The brainstorming workflow demonstrates pure facilitation through its entire journey: - -**Session Setup:** -``` -"Welcome! I'm excited to facilitate your brainstorming session. I'll guide you -through proven creativity techniques to generate innovative ideas. - -**What are we brainstorming about?** (The central topic or challenge) -**What specific outcomes are you hoping for?** (Types of ideas, solutions, or insights) -``` - -**Technique Selection - Offering Options:** -``` -"Ready to explore technique approaches? -[1] User-Selected Techniques - Browse our complete technique library -[2] AI-Recommended Techniques - Get customized suggestions based on your goals -[3] Random Technique Selection - Discover unexpected creative methods -[4] Progressive Technique Flow - Start broad, then systematically narrow focus - -Which approach appeals to you most?" -``` - -**Technique Execution - Interactive Coaching:** -The workflow doesn't generate ideas—it coaches you through techniques with genuine back-and-forth dialogue: - -``` -"Let's start with: What if you could remove all practical constraints? - -I'm not just looking for a quick answer - I want to explore this together. -What immediately comes to mind? Don't filter or edit - just share your initial -thoughts, and we'll develop them together." - -[User responds] - -"That's interesting! Tell me more about [specific aspect you mentioned]. -What would that look like in practice? How does that connect to your core goal?" -``` - -**Key facilitation behaviors:** -- Aims for 100+ ideas before suggesting organization -- Asks "Continue exploring?" or "Move to next technique?"—user controls pace -- Uses anti-bias protocols to force thinking in new directions every 10 ideas -- Builds on user's ideas with genuine creative contributions -- Keeps user in "generative exploration mode" as long as possible - -**Organization - Collaborative Synthesis:** -``` -"Outstanding creative work! You've generated an incredible range of ideas. -Now let's organize these creative gems and identify your most promising opportunities. - -I'm analyzing all your generated ideas to identify natural themes and patterns. -**Emerging Themes I'm Identifying:** -- Theme 1: [Name] - Ideas: [list] - Pattern: [connection] -- Theme 2: [Name] - Ideas: [list] - Pattern: [connection] - -Which themes or specific ideas stand out to you as most valuable?" -``` - -Result: A comprehensive brainstorming session document with **your** ideas, organized by **your** priorities, with **your** action plans. - -### Create UX Design Workflow (from BMM method) - -The UX design workflow facilitates a 14-step journey from project understanding to complete UX specification—**never making design decisions for you**. - -**Step 1: Document Discovery (Collaborative Setup)** -``` -"Welcome! I've set up your UX design workspace. - -**Documents Found:** -- PRD: product-requirements.md -- Product brief: brief.md - -**Files loaded:** [lists specific files] - -Do you have any other documents you'd like me to include, or shall we continue?" -``` - -**Step 2: Project Understanding (Discovery Questions)** -``` -"Based on the project documentation, let me confirm what I'm understanding... - -**From the documents:** [summary of key insights] -**Target Users:** [summary from documents] -**Key Features/Goals:** [summary from documents] - -Does this match your understanding? Are there any corrections or additions?" -``` - -Then it dives deeper with targeted questions: -``` -"Let me understand your users better to inform the UX design: - -**User Context Questions:** -- What problem are users trying to solve? -- What frustrates them with current solutions? -- What would make them say 'this is exactly what I needed'?" -``` - -**Step 3: Core Experience Definition (Guiding Insights)** -``` -"Now let's dig into the heart of the user experience. - -**Core Experience Questions:** -- What's the ONE thing users will do most frequently? -- What user action is absolutely critical to get right? -- What should be completely effortless for users? -- If we nail one interaction, everything else follows - what is it? - -Think about the core loop or primary action that defines your product's value." -``` - -**Step 4: Emotional Response (Feelings-Based Design)** -``` -"Now let's think about how your product should make users feel. - -**Emotional Response Questions:** -- What should users FEEL when using this product? -- What emotion would make them tell a friend about this? -- How should users feel after accomplishing their primary goal? - -Common emotional goals: Empowered and in control? Delighted and surprised? -Efficient and productive? Creative and inspired?" -``` - -**Step 5: Pattern Inspiration (Learning from Examples)** -``` -"Let's learn from products your users already love and use regularly. - -**Inspiration Questions:** -- Name 2-3 apps your target users already love and USE frequently -- For each one, what do they do well from a UX perspective? -- What makes the experience compelling or delightful? - -For each inspiring app, let's analyze their UX success: -- What core problem does it solve elegantly? -- What makes the onboarding experience effective? -- How do they handle navigation and information hierarchy?" -``` - -**Step 9: Design Directions (Interactive Visual Exploration)** -The workflow generates 6-8 HTML mockup variations—but **you choose**: - -``` -"🎨 Design Direction Mockups Generated! - -I'm creating a comprehensive HTML showcase with 6-8 full-screen mockup variations. -Each mockup represents a complete visual direction for your app's look and feel. - -**As you explore the design directions, look for:** -✅ Which information hierarchy matches your priorities? -✅ Which interaction style fits your core experience? -✅ Which visual density feels right for your brand? - -**Which approach resonates most with you?** -- Pick a favorite direction as-is -- Combine elements from multiple directions -- Request modifications to any direction - -Tell me: Which layout feels most intuitive? Which visual weight matches your brand?" -``` - -**Step 12: UX Patterns (Consistency Through Questions)** -``` -"Let's establish consistency patterns for common situations. - -**Pattern Categories to Define:** -- Button hierarchy and actions -- Feedback patterns (success, error, warning, info) -- Form patterns and validation -- Navigation patterns - -Which categories are most critical for your product? - -**For [Critical Pattern Category]:** -What should users see/do when they need to [pattern action]? - -**Considerations:** -- Visual hierarchy (primary vs. secondary actions) -- Feedback mechanisms -- Error recovery -- Accessibility requirements - -How should your product handle [pattern type] interactions?" -``` - -**The Result:** A complete, production-ready UX specification document that captures **your** decisions, **your** reasoning, and **your** vision—documented through guided discovery, not generation. - -## Key Principles - -### 1. Questions Over Answers - -Facilitative workflows ask strategic questions rather than providing direct answers. This: -- Activates your own creative and analytical thinking -- Uncovers assumptions you didn't know you had -- Reveals blind spots in your understanding -- Builds on your domain expertise and context - -### 2. Multi-Turn Conversation - -Facilitation uses progressive discovery, not interrogation: -- Ask 1-2 questions at a time, not laundry lists -- Think about responses before asking follow-ups -- Probe to understand deeper, not just collect facts -- Use conversation to explore, not just extract - -### 3. Intent-Based Guidance - -Workflows specify goals and approaches, not exact scripts: -- "Guide the user through discovering X" (intent) -- NOT "Say exactly: 'What is X?'" (prescriptive) - -This allows the workflow to adapt naturally to your responses while maintaining structured progress. - -### 4. Process Trust - -Facilitative workflows use proven methodologies: -- Design Thinking's phases (Empathize, Define, Ideate, Prototype, Test) -- Structured brainstorming and creativity techniques -- Root cause analysis frameworks -- Innovation strategy patterns - -You're not just having a conversation—you're following time-tested processes adapted to your specific situation. - -### 5. YOU Are the Expert - -Facilitative workflows operate on a core principle: **you are the expert on your situation**. The workflow brings: -- Process expertise (how to think through problems) -- Facilitation skills (how to guide exploration) -- Technique knowledge (proven methods and frameworks) - -You bring: -- Domain knowledge (your specific field or industry) -- Context understanding (your unique situation and constraints) -- Decision authority (what will actually work for you) - -## When Generation is Appropriate - -Facilitative workflows DO generate when appropriate: -- Synthesizing and structuring outputs after you've made decisions -- Documenting your choices and rationale -- Creating structured artifacts based on your input -- Providing technique examples or option templates -- Formatting and organizing your conclusions - -But the **core creative and analytical work** happens through facilitated discovery, not generation. - -## The Distinction: Facilitator vs Generator - -| Facilitative Workflow | Generative AI | -| ------------------------------------- | --------------------------------------- | -| "What are your goals?" | "Here's the solution" | -| Asks 1-2 questions at a time | Produces complete output immediately | -| Multiple turns, progressive discovery | Single turn, bulk generation | -| "Let me understand your context" | "Here's a generic answer" | -| Offers options, you choose | Makes decisions for you | -| Documents YOUR reasoning | No reasoning visible | -| You can explain every decision | You can't explain why choices were made | -| Ownership and understanding | Outputs feel alien | - -## Benefits - -### For Individuals -- **Deeper insights** than pure generation—ideas connect to your actual knowledge -- **Full ownership** of creative outputs and decisions -- **Skill development** in structured thinking and problem-solving -- **More memorable and actionable** results—you understand the "why" - -### For Teams -- **Shared creative experience** building alignment and trust -- **Aligned understanding** through documented exploration -- **Documented rationale** for future reference and onboarding -- **Stronger buy-in** to outcomes because everyone participated in discovery - -### For Implementation -- **Outputs match reality** because they emerged from your actual constraints -- **Easier iteration** because you understand the reasoning behind choices -- **Confident implementation** because you can defend every decision -- **Reduced rework** because facilitation catches issues early diff --git a/docs/_basement/explanation/faq/getting-started-faq.md b/docs/_basement/explanation/faq/getting-started-faq.md deleted file mode 100644 index 78b7c88e..00000000 --- a/docs/_basement/explanation/faq/getting-started-faq.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -title: "Getting Started FAQ" -description: Common questions about getting started with the BMad Method ---- - -Quick answers to common questions about getting started with the BMad Method. - -## Questions - -- [Why does BMad use so many tokens?](#why-does-bmad-use-so-many-tokens) -- [Do I always need to run workflow-init?](#do-i-always-need-to-run-workflow-init) -- [Why do I need fresh chats for each workflow?](#why-do-i-need-fresh-chats-for-each-workflow) -- [Can I skip workflow-status and just start working?](#can-i-skip-workflow-status-and-just-start-working) -- [What's the minimum I need to get started?](#whats-the-minimum-i-need-to-get-started) -- [How do I know if I'm in Phase 1, 2, 3, or 4?](#how-do-i-know-if-im-in-phase-1-2-3-or-4) - -### Why does BMad use so many tokens? - -BMad is not always the most token efficient approach, and that's by design. The checkpoints, story files, and retrospectives keep you in the loop so you can apply taste, judgment, and accumulated context that no agent has. Fully automated coding loops optimize for code velocity; BMad optimizes for decision quality. If you're building something you'll maintain for years, where user experience matters, where architectural choices compound—that tradeoff pays for itself. - -### Do I always need to run workflow-init? - -No, once you learn the flow you can go directly to workflows. However, workflow-init is helpful because it: - -- Determines your project's appropriate level automatically -- Creates the tracking status file -- Routes you to the correct starting workflow - -For experienced users: use the [Quick Start Guide](/docs/tutorials/getting-started/getting-started-bmadv6.md) to go directly to the right agent/workflow. - -### Why do I need fresh chats for each workflow? - -Context-intensive workflows (like brainstorming, PRD creation, architecture design) can cause AI hallucinations if run in sequence within the same chat. Starting fresh ensures the agent has maximum context capacity for each workflow. This is particularly important for: - -- Planning workflows (PRD, architecture) -- Analysis workflows (brainstorming, research) -- Complex story implementation - -Quick workflows like status checks can reuse chats safely. - -### Can I skip workflow-status and just start working? - -Yes, if you already know your project level and which workflow comes next. workflow-status is mainly useful for: - -- New projects (guides initial setup) -- When you're unsure what to do next -- After breaks in work (reminds you where you left off) -- Checking overall progress - -### What's the minimum I need to get started? - -For the fastest path: - -1. Install BMad Method: `npx bmad-method@alpha install` -2. For small changes: Load PM agent → run tech-spec → implement -3. For larger projects: Load PM agent → run prd → architect → implement - -### How do I know if I'm in Phase 1, 2, 3, or 4? - -Check your `bmm-workflow-status.md` file (created by workflow-init). It shows your current phase and progress. If you don't have this file, you can also tell by what you're working on: - -- **Phase 1** — Brainstorming, research, product brief (optional) -- **Phase 2** — Creating either a PRD or tech-spec (always required) -- **Phase 3** — Architecture design (Level 2-4 only) -- **Phase 4** — Actually writing code, implementing stories - -**Have a question not answered here?** Please [open an issue](https://github.com/bmad-code-org/BMAD-METHOD/issues) or ask in [Discord](https://discord.gg/gk8jAdXWmj) so we can add it! diff --git a/docs/_basement/explanation/faq/implementation-faq.md b/docs/_basement/explanation/faq/implementation-faq.md deleted file mode 100644 index fe4f64cb..00000000 --- a/docs/_basement/explanation/faq/implementation-faq.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: "Implementation FAQ" -description: Common questions about implementation in the BMad Method ---- - -Quick answers to common questions about implementation in the BMad Method. - -## Questions - -- [Does create-story include implementation context?](#does-create-story-include-implementation-context) -- [How do I mark a story as done?](#how-do-i-mark-a-story-as-done) -- [Can I work on multiple stories at once?](#can-i-work-on-multiple-stories-at-once) -- [What if my story takes longer than estimated?](#what-if-my-story-takes-longer-than-estimated) -- [When should I run retrospective?](#when-should-i-run-retrospective) - -### Does create-story include implementation context? - -Yes! The create-story workflow generates story files that include implementation-specific guidance, references existing patterns from your documentation, and provides technical context. The workflow loads your architecture, PRD, and existing project documentation to create comprehensive stories. For Quick Flow projects using tech-spec, the tech-spec itself is already comprehensive, so stories can be simpler. - -### How do I mark a story as done? - -After dev-story completes and code-review passes: - -1. Open `sprint-status.yaml` (created by sprint-planning) -2. Change the story status from `review` to `done` -3. Save the file - -### Can I work on multiple stories at once? - -Yes, if you have capacity! Stories within different epics can be worked in parallel. However, stories within the same epic are usually sequential because they build on each other. - -### What if my story takes longer than estimated? - -That's normal! Stories are estimates. If implementation reveals more complexity: - -1. Continue working until DoD is met -2. Consider if story should be split -3. Document learnings in retrospective -4. Adjust future estimates based on this learning - -### When should I run retrospective? - -After completing all stories in an epic (when epic is done). Retrospectives capture: - -- What went well -- What could improve -- Technical insights -- Learnings for future epics - -Don't wait until project end — run after each epic for continuous improvement. - -**Have a question not answered here?** Please [open an issue](https://github.com/bmad-code-org/BMAD-METHOD/issues) or ask in [Discord](https://discord.gg/gk8jAdXWmj) so we can add it! diff --git a/docs/_basement/explanation/faq/index.md b/docs/_basement/explanation/faq/index.md deleted file mode 100644 index 2ccd7d3a..00000000 --- a/docs/_basement/explanation/faq/index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: "Frequently Asked Questions" -description: Frequently asked questions about the BMad Method ---- - -Quick answers to common questions about the BMad Method, organized by topic. - -## Topics - -- [Getting Started](/docs/explanation/faq/getting-started-faq.md) - Questions about starting with BMad -- [Levels & Tracks](/docs/explanation/faq/levels-and-tracks-faq.md) - Choosing the right level -- [Workflows](/docs/explanation/faq/workflows-faq.md) - Workflow and phase questions -- [Planning](/docs/explanation/faq/planning-faq.md) - Planning document questions -- [Implementation](/docs/explanation/faq/implementation-faq.md) - Implementation questions -- [Brownfield](/docs/explanation/faq/brownfield-faq.md) - Existing codebase questions -- [Tools & Advanced](/docs/explanation/faq/tools-faq.md) - Tools, IDEs, and advanced topics diff --git a/docs/_basement/explanation/faq/levels-and-tracks-faq.md b/docs/_basement/explanation/faq/levels-and-tracks-faq.md deleted file mode 100644 index acce6ae1..00000000 --- a/docs/_basement/explanation/faq/levels-and-tracks-faq.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: "Levels and Tracks FAQ" -description: Common questions about choosing the right level for your project ---- - -Quick answers to common questions about choosing the right level for your BMad Method project. - -## Questions - -- [How do I know which level my project is?](#how-do-i-know-which-level-my-project-is) -- [Can I change levels mid-project?](#can-i-change-levels-mid-project) -- [What if workflow-init suggests the wrong level?](#what-if-workflow-init-suggests-the-wrong-level) -- [Do I always need architecture for Level 2?](#do-i-always-need-architecture-for-level-2) -- [What's the difference between Level 1 and Level 2?](#whats-the-difference-between-level-1-and-level-2) - -### How do I know which level my project is? - -Use workflow-init for automatic detection, or self-assess using these keywords: - -- **Level 0** — "fix", "bug", "typo", "small change", "patch" → 1 story -- **Level 1** — "simple", "basic", "small feature", "add" → 1-10 stories -- **Level 2** — "dashboard", "several features", "admin panel" → 5-15 stories -- **Level 3** — "platform", "integration", "complex", "system" → 12-40 stories -- **Level 4** — "enterprise", "multi-tenant", "multiple products" → 40+ stories - -When in doubt, start smaller. You can always run create-prd later if needed. - -### Can I change levels mid-project? - -Yes! If you started at Level 1 but realize it's Level 2, you can run create-prd to add proper planning docs. The system is flexible — your initial level choice isn't permanent. - -### What if workflow-init suggests the wrong level? - -You can override it! workflow-init suggests a level but always asks for confirmation. If you disagree, just say so and choose the level you think is appropriate. Trust your judgment. - -### Do I always need architecture for Level 2? - -No, architecture is **optional** for Level 2. Only create architecture if you need system-level design. Many Level 2 projects work fine with just PRD created during planning. - -### What's the difference between Level 1 and Level 2? - -- **Level 1** — 1-10 stories, uses tech-spec (simpler, faster), no architecture -- **Level 2** — 5-15 stories, uses PRD (product-focused), optional architecture - -The overlap (5-10 stories) is intentional. Choose based on: - -- Need product-level planning? → Level 2 -- Just need technical plan? → Level 1 -- Multiple epics? → Level 2 -- Single epic? → Level 1 - -**Have a question not answered here?** Please [open an issue](https://github.com/bmad-code-org/BMAD-METHOD/issues) or ask in [Discord](https://discord.gg/gk8jAdXWmj) so we can add it! diff --git a/docs/_basement/explanation/faq/planning-faq.md b/docs/_basement/explanation/faq/planning-faq.md deleted file mode 100644 index c6ab49fe..00000000 --- a/docs/_basement/explanation/faq/planning-faq.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: "Planning Documents FAQ" -description: Common questions about planning documents in the BMad Method ---- - -Quick answers to common questions about planning documents in the BMad Method. - -## Questions - -- [Why no tech-spec at Level 2+?](#why-no-tech-spec-at-level-2) -- [Do I need a PRD for a bug fix?](#do-i-need-a-prd-for-a-bug-fix) -- [Can I skip the product brief?](#can-i-skip-the-product-brief) - -### Why no tech-spec at Level 2+? - -Level 2+ projects need product-level planning (PRD) and system-level design (Architecture), which tech-spec doesn't provide. Tech-spec is too narrow for coordinating multiple features. Instead, Level 2-4 uses: - -- PRD (product vision, functional requirements, non-functional requirements) -- Architecture (system design) -- Epics+Stories (created AFTER architecture is complete) - -### Do I need a PRD for a bug fix? - -No! Bug fixes are typically Level 0 (single atomic change). Use Quick Spec Flow: - -- Load PM agent -- Run tech-spec workflow -- Implement immediately - -PRDs are for Level 2-4 projects with multiple features requiring product-level coordination. - -### Can I skip the product brief? - -Yes, product brief is always optional. It's most valuable for: - -- Level 3-4 projects needing strategic direction -- Projects with stakeholders requiring alignment -- Novel products needing market research -- When you want to explore solution space before committing - -**Have a question not answered here?** Please [open an issue](https://github.com/bmad-code-org/BMAD-METHOD/issues) or ask in [Discord](https://discord.gg/gk8jAdXWmj) so we can add it! diff --git a/docs/_basement/explanation/faq/tools-faq.md b/docs/_basement/explanation/faq/tools-faq.md deleted file mode 100644 index 061f43e9..00000000 --- a/docs/_basement/explanation/faq/tools-faq.md +++ /dev/null @@ -1,277 +0,0 @@ ---- -title: "Tools and Advanced FAQ" -description: Common questions about tools, IDEs, and advanced topics in the BMad Method ---- - -Quick answers to common questions about tools, IDEs, and advanced topics in the BMad Method. - -## Questions - -**Tools and Technical** - -- [Questions](#questions) -- [Tools and Technical](#tools-and-technical) - - [Why are my Mermaid diagrams not rendering?](#why-are-my-mermaid-diagrams-not-rendering) - - [Can I use BMM with GitHub Copilot / Cursor / other AI tools?](#can-i-use-bmm-with-github-copilot--cursor--other-ai-tools) - - [What IDEs/tools support BMM?](#what-idestools-support-bmm) - - [Can I customize agents?](#can-i-customize-agents) - - [What happens to my planning docs after implementation?](#what-happens-to-my-planning-docs-after-implementation) - - [Can I use BMM for non-software projects?](#can-i-use-bmm-for-non-software-projects) -- [Advanced](#advanced) - - [What if my project grows from Level 1 to Level 3?](#what-if-my-project-grows-from-level-1-to-level-3) - - [Can I mix greenfield and brownfield approaches?](#can-i-mix-greenfield-and-brownfield-approaches) - - [How do I handle urgent hotfixes during a sprint?](#how-do-i-handle-urgent-hotfixes-during-a-sprint) - - [What if I disagree with the workflow's recommendations?](#what-if-i-disagree-with-the-workflows-recommendations) - - [Can multiple developers work on the same BMM project?](#can-multiple-developers-work-on-the-same-bmm-project) - - [What is party mode and when should I use it?](#what-is-party-mode-and-when-should-i-use-it) -- [Getting Help](#getting-help) - - [Where do I get help if my question isn't answered here?](#where-do-i-get-help-if-my-question-isnt-answered-here) - - [How do I report a bug or request a feature?](#how-do-i-report-a-bug-or-request-a-feature) - -**Advanced** - -- [Questions](#questions) -- [Tools and Technical](#tools-and-technical) - - [Why are my Mermaid diagrams not rendering?](#why-are-my-mermaid-diagrams-not-rendering) - - [Can I use BMM with GitHub Copilot / Cursor / other AI tools?](#can-i-use-bmm-with-github-copilot--cursor--other-ai-tools) - - [What IDEs/tools support BMM?](#what-idestools-support-bmm) - - [Can I customize agents?](#can-i-customize-agents) - - [What happens to my planning docs after implementation?](#what-happens-to-my-planning-docs-after-implementation) - - [Can I use BMM for non-software projects?](#can-i-use-bmm-for-non-software-projects) -- [Advanced](#advanced) - - [What if my project grows from Level 1 to Level 3?](#what-if-my-project-grows-from-level-1-to-level-3) - - [Can I mix greenfield and brownfield approaches?](#can-i-mix-greenfield-and-brownfield-approaches) - - [How do I handle urgent hotfixes during a sprint?](#how-do-i-handle-urgent-hotfixes-during-a-sprint) - - [What if I disagree with the workflow's recommendations?](#what-if-i-disagree-with-the-workflows-recommendations) - - [Can multiple developers work on the same BMM project?](#can-multiple-developers-work-on-the-same-bmm-project) - - [What is party mode and when should I use it?](#what-is-party-mode-and-when-should-i-use-it) -- [Getting Help](#getting-help) - - [Where do I get help if my question isn't answered here?](#where-do-i-get-help-if-my-question-isnt-answered-here) - - [How do I report a bug or request a feature?](#how-do-i-report-a-bug-or-request-a-feature) - -**Getting Help** - -- [Where do I get help if my question isn't answered here?](#where-do-i-get-help-if-my-question-isnt-answered-here) -- [How do I report a bug or request a feature?](#how-do-i-report-a-bug-or-request-a-feature) - -## Tools and Technical - -### Why are my Mermaid diagrams not rendering? - -Common issues: - -1. Missing language tag: Use ` ```mermaid` not just ` ``` ` -2. Syntax errors in diagram (validate at mermaid.live) -3. Tool doesn't support Mermaid (check your Markdown renderer) - -All BMM docs use valid Mermaid syntax that should render in GitHub, VS Code, and most IDEs. - -### Can I use BMM with GitHub Copilot / Cursor / other AI tools? - -Yes! BMM is complementary. BMM handles: - -- Project planning and structure -- Workflow orchestration -- Agent Personas and expertise -- Documentation generation -- Quality gates - -Your AI coding assistant handles: - -- Line-by-line code completion -- Quick refactoring -- Test generation - -Use them together for best results. - -### What IDEs/tools support BMM? - -BMM requires tools with **agent mode** and access to **high-quality LLM models** that can load and follow complex workflows, then properly implement code changes. - -**Recommended Tools:** - -- **Claude Code** — Best choice - - Sonnet 4.5 (excellent workflow following, coding, reasoning) - - Opus (maximum context, complex planning) - - Native agent mode designed for BMM workflows - -- **Cursor** - - Supports Anthropic (Claude) and OpenAI models - - Agent mode with composer - - Good for developers who prefer Cursor's UX - -- **Windsurf** - - Multi-model support - - Agent capabilities - - Suitable for BMM workflows - -**What Matters:** - -1. **Agent mode** — Can load long workflow instructions and maintain context -2. **High-quality LLM** — Models ranked high on SWE-bench (coding benchmarks) -3. **Model selection** — Access to Claude Sonnet 4.5, Opus, or GPT-4o class models -4. **Context capacity** — Can handle large planning documents and codebases - -**Why model quality matters:** BMM workflows require LLMs that can follow multi-step processes, maintain context across phases, and implement code that adheres to specifications. Tools with weaker models will struggle with workflow adherence and code quality. - -### Can I customize agents? - -Yes! Agents are installed as markdown files with XML-style content (optimized for LLMs, readable by any model). Create customization files in `_bmad/_config/agents/[agent-name].customize.yaml` to override default behaviors while keeping core functionality intact. See agent documentation for customization options. - -**Note:** While source agents in this repo are YAML, they install as `.md` files with XML-style tags — a format any LLM can read and follow. - -### What happens to my planning docs after implementation? - -Keep them! They serve as: - -- Historical record of decisions -- Onboarding material for new team members -- Reference for future enhancements -- Audit trail for compliance - -For enterprise projects (Level 4), consider archiving completed planning artifacts to keep workspace clean. - -### Can I use BMM for non-software projects? - -BMM is optimized for software development, but the methodology principles (scale-adaptive planning, just-in-time design, context injection) can apply to other complex project types. You'd need to adapt workflows and agents for your domain. - -## Advanced - -### What if my project grows from Level 1 to Level 3? - -Totally fine! When you realize scope has grown: - -1. Run create-prd to add product-level planning -2. Run create-architecture for system design -3. Use existing tech-spec as input for PRD -4. Continue with updated level - -The system is flexible — growth is expected. - -### Can I mix greenfield and brownfield approaches? - -Yes! Common scenario: adding new greenfield feature to brownfield codebase. Approach: - -1. Run document-project for brownfield context -2. Use greenfield workflows for new feature planning -3. Explicitly document integration points between new and existing -4. Test integration thoroughly - -### How do I handle urgent hotfixes during a sprint? - -Use correct-course workflow or just: - -1. Save your current work state -2. Load PM agent → quick tech-spec for hotfix -3. Implement hotfix (Level 0 flow) -4. Deploy hotfix -5. Return to original sprint work - -Level 0 Quick Spec Flow is perfect for urgent fixes. - -### What if I disagree with the workflow's recommendations? - -Workflows are guidance, not enforcement. If a workflow recommends something that doesn't make sense for your context: - -- Explain your reasoning to the agent -- Ask for alternative approaches -- Skip the recommendation if you're confident -- Document why you deviated (for future reference) - -Trust your expertise — BMM supports your decisions. - -### Can multiple developers work on the same BMM project? - -Yes! But the paradigm is fundamentally different from traditional agile teams. - -**Key Difference:** - -- **Traditional** — Multiple devs work on stories within one epic (months) -- **Agentic** — Each dev owns complete epics (days) - -**In traditional agile:** A team of 5 devs might spend 2-3 months on a single epic, with each dev owning different stories. - -**With BMM + AI agents:** A single dev can complete an entire epic in 1-3 days. What used to take months now takes days. - -**Team Work Distribution:** - -- **Recommended:** Split work by **epic** (not story) -- Each developer owns complete epics end-to-end -- Parallel work happens at epic level -- Minimal coordination needed - -**For full-stack apps:** - -- Frontend and backend can be separate epics (unusual in traditional agile) -- Frontend dev owns all frontend epics -- Backend dev owns all backend epics -- Works because delivery is so fast - -**Enterprise Considerations:** - -- Use **git submodules** for BMM installation (not .gitignore) -- Allows personal configurations without polluting main repo -- Teams may use different AI tools (Claude Code, Cursor, etc.) -- Developers may follow different methods or create custom agents/workflows - -**Quick Tips:** - -- Share `sprint-status.yaml` (single source of truth) -- Assign entire epics to developers (not individual stories) -- Coordinate at epic boundaries, not story level -- Use git submodules for BMM in enterprise settings - -### What is party mode and when should I use it? - -Party mode is a unique multi-agent collaboration feature where ALL your installed modules agents discuss your challenges together in real-time or have some fun with any topic you have in mind. - -**How it works:** - -1. Run `/bmad:core:workflows:party-mode` (or `PM or fuzzy match on party-mode` from any agent) -2. Introduce your topic -3. BMad Master selects 2-3 most relevant agents per message -4. Agents cross-talk, debate, and build on each other's ideas - -**Best for:** - -- Strategic decisions with trade-offs (architecture choices, tech stack, scope) -- Creative brainstorming (game design, product innovation, UX ideation) -- Cross-functional alignment (epic kickoffs, retrospectives, phase transitions) -- Complex problem-solving (multi-faceted challenges, risk assessment) - -**Example parties:** - -- **Product Strategy** — PM + Innovation Strategist (CIS) + Analyst -- **Technical Design** — Architect + Creative Problem Solver (CIS) + Game Architect -- **User Experience** — UX Designer + Design Thinking Coach (CIS) + Storyteller (CIS) - -**Why it's powerful:** - -- Diverse perspectives (technical, creative, strategic) -- Healthy debate reveals blind spots -- Emergent insights from agent interaction -- Natural collaboration across modules - -**For complete documentation:** See the [Party Mode Guide](/docs/explanation/features/party-mode.md) - -## Getting Help - -### Where do I get help if my question isn't answered here? - -1. Search [Complete Documentation](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/README.md) for related topics -2. Ask in [Discord Community](https://discord.gg/gk8jAdXWmj) (#bmad-method-help) -3. Open a [GitHub Issue](https://github.com/bmad-code-org/BMAD-METHOD/issues) -4. Watch [YouTube Tutorials](https://www.youtube.com/@BMadCode) - -### How do I report a bug or request a feature? - -Open a GitHub issue at: - -Please include: - -- BMM version (check your installed version) -- Steps to reproduce (for bugs) -- Expected vs actual behavior -- Relevant workflow or agent involved - -**Have a question not answered here?** Please [open an issue](https://github.com/bmad-code-org/BMAD-METHOD/issues) or ask in [Discord](https://discord.gg/gk8jAdXWmj) so we can add it! diff --git a/docs/_basement/explanation/faq/workflows-faq.md b/docs/_basement/explanation/faq/workflows-faq.md deleted file mode 100644 index 9e92121f..00000000 --- a/docs/_basement/explanation/faq/workflows-faq.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -title: "Workflows FAQ" -description: Common questions about BMad Method workflows and phases ---- - -Quick answers to common questions about BMad Method workflows and phases. - -## Questions - -- [What's the difference between workflow-status and workflow-init?](#whats-the-difference-between-workflow-status-and-workflow-init) -- [Can I skip Phase 1 (Analysis)?](#can-i-skip-phase-1-analysis) -- [When is Phase 3 (Architecture) required?](#when-is-phase-3-architecture-required) -- [What happens if I skip a recommended workflow?](#what-happens-if-i-skip-a-recommended-workflow) -- [How do I know when Phase 3 is complete?](#how-do-i-know-when-phase-3-is-complete) -- [Can I run workflows in parallel?](#can-i-run-workflows-in-parallel) - -### What's the difference between workflow-status and workflow-init? - -- **workflow-status** — Checks existing status and tells you what's next (use when continuing work) -- **workflow-init** — Creates new status file and sets up project (use when starting new project) - -If status file exists, use workflow-status. If not, use workflow-init. - -### Can I skip Phase 1 (Analysis)? - -Yes! Phase 1 is optional for all levels, though recommended for complex projects. Skip if: - -- Requirements are clear -- No research needed -- Time-sensitive work -- Small changes (Level 0-1) - -### When is Phase 3 (Architecture) required? - -- **Level 0-1** — Never (skip entirely) -- **Level 2** — Optional (only if system design needed) -- **Level 3-4** — Required (comprehensive architecture mandatory) - -### What happens if I skip a recommended workflow? - -Nothing breaks! Workflows are guidance, not enforcement. However, skipping recommended workflows (like architecture for Level 3) may cause: - -- Integration issues during implementation -- Rework due to poor planning -- Conflicting design decisions -- Longer development time overall - -### How do I know when Phase 3 is complete? - -For Level 3-4, run the implementation-readiness workflow. It validates PRD + Architecture + Epics + UX (optional) are aligned before implementation. Pass the gate check = ready for Phase 4. - -### Can I run workflows in parallel? - -Most workflows must be sequential within a phase: - -- **Phase 1** — brainstorm → research → product-brief (optional order) -- **Phase 2** — PRD must complete before moving forward -- **Phase 3** — architecture → epics+stories → implementation-readiness (sequential) -- **Phase 4** — Stories within an epic should generally be sequential, but stories in different epics can be parallel if you have capacity - -**Have a question not answered here?** Please [open an issue](https://github.com/bmad-code-org/BMAD-METHOD/issues) or ask in [Discord](https://discord.gg/gk8jAdXWmj) so we can add it! diff --git a/docs/_basement/explanation/four-phases.md b/docs/_basement/explanation/four-phases.md deleted file mode 100644 index 59c350f0..00000000 --- a/docs/_basement/explanation/four-phases.md +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: "The Four Phases of BMad Method" -description: Understanding the four phases of the BMad Method ---- - - -BMad Method uses a four-phase approach that adapts to project complexity while ensuring consistent quality. - -## Phase Overview - -| Phase | Name | Purpose | Required? | -|-------|------|---------|-----------| -| **Phase 1** | Analysis | Exploration and discovery | Optional | -| **Phase 2** | Planning | Requirements definition | Required | -| **Phase 3** | Solutioning | Technical design | Track-dependent | -| **Phase 4** | Implementation | Building the software | Required | - -## Phase 1: Analysis (Optional) - -Exploration and discovery workflows that help validate ideas and understand markets before planning. - -**Workflows:** -- `brainstorm-project` - Solution exploration -- `research` - Market/technical/competitive research -- `product-brief` - Strategic vision capture - -**When to use:** -- Starting new projects -- Exploring opportunities -- Validating market fit - -**When to skip:** -- Clear requirements -- Well-defined features -- Continuing existing work - -## Phase 2: Planning (Required) - -Requirements definition using the scale-adaptive system to match planning depth to project complexity. - -**Workflows:** -- `prd` - Product Requirements Document (BMad Method/Enterprise) -- `tech-spec` - Technical specification (Quick Flow) -- `create-ux-design` - Optional UX specification - -**Key principle:** -Define **what** to build and **why**. Leave **how** to Phase 3. - -## Phase 3: Solutioning (Track-Dependent) - -Technical architecture and design decisions that prevent agent conflicts during implementation. - -**Workflows:** -- `architecture` - System design with ADRs -- `create-epics-and-stories` - Work breakdown (after architecture) -- `implementation-readiness` - Gate check - -**Required for:** -- BMad Method (complex projects) -- Enterprise Method - -**Skip for:** -- Quick Flow (simple changes) - -**Key principle:** -Make technical decisions explicit so all agents implement consistently. - -## Phase 4: Implementation (Required) - -Iterative sprint-based development with story-centric workflow. - -**Workflows:** -- `sprint-planning` - Initialize tracking -- `create-story` - Prepare stories -- `dev-story` - Implement with tests -- `code-review` - Quality assurance -- `retrospective` - Continuous improvement - -:::tip[Key Principle] -One story at a time — complete each story's full lifecycle before starting the next. -::: - -## Phase Flow by Track - -### Quick Flow - -``` -Phase 2 (tech-spec) → Phase 4 (implement) -``` - -Skip Phases 1 and 3 for simple changes. - -### BMad Method - -``` -Phase 1 (optional) → Phase 2 (PRD) → Phase 3 (architecture) → Phase 4 (implement) -``` - -Full methodology for complex projects. - -### Enterprise - -``` -Phase 1 → Phase 2 (PRD) → Phase 3 (architecture + extended) → Phase 4 (implement) -``` - -Same as BMad Method with optional extended workflows. diff --git a/docs/_basement/how-to/brownfield/add-feature-to-existing.md b/docs/_basement/how-to/brownfield/add-feature-to-existing.md deleted file mode 100644 index 27c6412e..00000000 --- a/docs/_basement/how-to/brownfield/add-feature-to-existing.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -title: "How to Add a Feature to an Existing Project" -description: How to add new features to an existing brownfield project ---- - -Use the `workflow-init` workflow to add new functionality to your brownfield codebase while respecting existing patterns and architecture. - -## When to Use This - -- Adding a new feature to an existing codebase -- Major enhancements that need proper planning -- Features that touch multiple parts of the system - -:::note[Prerequisites] -- BMad Method installed -- Existing project documentation (run `document-project` first if needed) -- Clear understanding of what you want to build -::: - -## Steps - -### 1. Run workflow-init - -``` -Run workflow-init -``` - -The workflow should recognize you're in an existing project. If not, explicitly clarify that this is brownfield development. - -### 2. Choose Your Approach - -| Feature Scope | Recommended Approach | -|---------------|---------------------| -| Small (1-5 stories) | Quick Flow with tech-spec | -| Medium (5-15 stories) | BMad Method with PRD | -| Large (15+ stories) | Full BMad Method with architecture | - -### 3. Create Planning Documents - -**For Quick Flow:** -- Load PM agent -- Run tech-spec workflow -- The agent will analyze your existing codebase and create a context-aware spec - -**For BMad Method:** -- Load PM agent -- Run PRD workflow -- Ensure the agent reads your existing documentation -- Review that integration points are clearly identified - -### 4. Consider Architecture Impact - -If your feature affects system architecture: - -- Load Architect agent -- Run architecture workflow -- Ensure alignment with existing patterns -- Document any new ADRs (Architecture Decision Records) - -### 5. Implement - -Follow the standard Phase 4 implementation workflows: - -1. `sprint-planning` - Organize your work -2. `create-story` - Prepare each story -3. `dev-story` - Implement with tests -4. `code-review` - Quality assurance - -## Tips - -- Always ensure agents read your existing documentation -- Pay attention to integration points with existing code -- Follow existing conventions unless deliberately changing them -- Document why you're adding new patterns (if any) diff --git a/docs/_basement/how-to/brownfield/document-existing-project.md b/docs/_basement/how-to/brownfield/document-existing-project.md deleted file mode 100644 index b318363b..00000000 --- a/docs/_basement/how-to/brownfield/document-existing-project.md +++ /dev/null @@ -1,66 +0,0 @@ ---- -title: "How to Document an Existing Project" -description: How to document an existing brownfield codebase using BMad Method ---- - -Use the `document-project` workflow to scan your entire codebase and generate comprehensive documentation about its current state. - -## When to Use This - -- Starting work on an undocumented legacy project -- Documentation is outdated and needs refresh -- AI agents need context about existing code patterns -- Onboarding new team members - -:::note[Prerequisites] -- BMad Method installed in your project -- Access to the codebase you want to document -::: - -## Steps - -### 1. Load the Analyst Agent - -Start a fresh chat and load the Analyst agent. - -### 2. Run the document-project Workflow - -Tell the agent: - -``` -Run the document-project workflow -``` - -### 3. Let the Agent Scan Your Codebase - -The workflow will: - -- Scan your codebase structure -- Identify architecture patterns -- Document the technology stack -- Create reference documentation -- Generate a PRD-like document from existing code - -### 4. Review the Generated Documentation - -The output will be saved to `project-documentation-{date}.md` in your output folder. - -Review the documentation for: - -- Accuracy of detected patterns -- Completeness of architecture description -- Any missing business rules or intent - -## What You Get - -- **Project overview** - High-level description of what the project does -- **Technology stack** - Detected frameworks, libraries, and tools -- **Architecture patterns** - Code organization and design patterns found -- **Business rules** - Logic extracted from the codebase -- **Integration points** - External APIs and services - -## Tips - -- Run this before any major brownfield work -- Keep the documentation updated as the project evolves -- Use it as input for future PRD creation diff --git a/docs/_basement/how-to/customization/customize-agents.md b/docs/_basement/how-to/customization/customize-agents.md deleted file mode 100644 index c4eec45b..00000000 --- a/docs/_basement/how-to/customization/customize-agents.md +++ /dev/null @@ -1,212 +0,0 @@ ---- -title: "Agent Customization Guide" ---- - -Use `.customize.yaml` files to customize BMad agents without modifying core files. All customizations persist through updates. - -## When to Use This - -- Change agent names or personas -- Add project-specific memories or context -- Add custom menu items and workflows -- Define critical actions for consistent behavior - -## Quick Start - -**1. Locate Customization Files** - -After installation, find agent customization files in: - -``` -_bmad/_config/agents/ -├── core-bmad-master.customize.yaml -├── bmm-dev.customize.yaml -├── bmm-pm.customize.yaml -└── ... (one file per installed agent) -``` - -**2. Edit Any Agent** - -Open the `.customize.yaml` file for the agent you want to modify. All sections are optional - customize only what you need. - -**3. Rebuild the Agent** - -After editing, IT IS CRITICAL to rebuild the agent to apply changes: - -```bash -npx bmad-method@alpha install # and then select option to compile all agents -npx bmad-method@alpha build - -npx bmad-method@alpha build bmm-dev -npx bmad-method@alpha build core-bmad-master -npx bmad-method@alpha build bmm-pm -``` - -## What You Can Customize - -### Agent Name - -Change how the agent introduces itself: - -```yaml -agent: - metadata: - name: 'Spongebob' # Default: "Amelia" -``` - -### Persona - -Replace the agent's personality, role, and communication style: - -```yaml -persona: - role: 'Senior Full-Stack Engineer' - identity: 'Lives in a pineapple (under the sea)' - communication_style: 'Spongebob' - principles: - - 'Never Nester, Spongebob Devs hate nesting more than 2 levels deep' - - 'Favor composition over inheritance' -``` - -**Note:** The persona section replaces the entire default persona (not merged). - -### Memories - -Add persistent context the agent will always remember: - -```yaml -memories: - - 'Works at Krusty Krab' - - 'Favorite Celebrity: David Hasslehoff' - - 'Learned in Epic 1 that its not cool to just pretend that tests have passed' -``` - -### Custom Menu Items - -Add your own workflows to the agent's menu: - -```yaml -menu: - - trigger: my-workflow - workflow: '{project-root}/my-custom/workflows/my-workflow.yaml' - description: My custom workflow - - trigger: deploy - action: '#deploy-prompt' - description: Deploy to production -``` - -**Don't include:** `*` prefix or `help`/`exit` items - these are auto-injected. - -### Critical Actions - -Add instructions that execute before the agent starts: - -```yaml -critical_actions: - - 'Always check git status before making changes' - - 'Use conventional commit messages' -``` - -### Custom Prompts - -Define reusable prompts for `action="#id"` menu handlers: - -```yaml -prompts: - - id: deploy-prompt - content: | - Deploy the current branch to production: - 1. Run all tests - 2. Build the project - 3. Execute deployment script -``` - -## Real-World Examples - -**Example 1: Customize Developer Agent for TDD** - -```yaml -agent: - metadata: - name: 'TDD Developer' - -memories: - - 'Always write tests before implementation' - - 'Project uses Jest and React Testing Library' - -critical_actions: - - 'Review test coverage before committing' -``` - -**Example 2: Add Custom Deployment Workflow** - -```yaml -menu: - - trigger: deploy-staging - workflow: '{project-root}/_bmad/deploy-staging.yaml' - description: Deploy to staging environment - - trigger: deploy-prod - workflow: '{project-root}/_bmad/deploy-prod.yaml' - description: Deploy to production (with approval) -``` - -**Example 3: Multilingual Product Manager** - -```yaml -persona: - role: 'Bilingual Product Manager' - identity: 'Expert in US and LATAM markets' - communication_style: 'Clear, strategic, with cultural awareness' - principles: - - 'Consider localization from day one' - - 'Balance business goals with user needs' - -memories: - - 'User speaks English and Spanish' - - 'Target markets: US and Latin America' -``` - -## Tips - -- **Start Small:** Customize one section at a time and rebuild to test -- **Backup:** Copy customization files before major changes -- **Update-Safe:** Your customizations in `_config/` survive all BMad updates -- **Per-Project:** Customization files are per-project, not global -- **Version Control:** Consider committing `_config/` to share customizations with your team - -## Module vs. Global Config - -**Module-Level (Recommended):** - -- Customize agents per-project in `_bmad/_config/agents/` -- Different projects can have different agent behaviors - -**Global Config (Coming Soon):** - -- Set defaults that apply across all projects -- Override with project-specific customizations - -## Troubleshooting - -**Changes not appearing?** - -- Make sure you ran `npx bmad-method build ` after editing -- Check YAML syntax is valid (indentation matters!) -- Verify the agent name matches the file name pattern - -**Agent not loading?** - -- Check for YAML syntax errors -- Ensure required fields aren't left empty if you uncommented them -- Try reverting to the template and rebuilding - -**Need to reset?** - -- Delete the `.customize.yaml` file -- Run `npx bmad-method build ` to regenerate defaults - -## Next Steps - -- **[Learn about Agents](/docs/explanation/core-concepts/what-are-agents.md)** - Understand Simple vs Expert agents -- **[Agent Creation Guide](https://github.com/bmad-code-org/bmad-builder/blob/main/docs/tutorials/create-custom-agent.md)** - Build completely custom agents -- **[BMM Complete Documentation](/docs/explanation/bmm/index.md)** - Full BMad Method reference diff --git a/docs/_basement/how-to/installation/install-custom-modules.md b/docs/_basement/how-to/installation/install-custom-modules.md deleted file mode 100644 index baab51ba..00000000 --- a/docs/_basement/how-to/installation/install-custom-modules.md +++ /dev/null @@ -1,118 +0,0 @@ ---- -title: "How to Install Custom Modules" -description: Add custom agents, workflows, and modules to BMad ---- - -Use the BMad installer to add custom agents, workflows, and modules that extend BMad's functionality. - -## When to Use This - -- Adding third-party BMad modules to your project -- Installing your own custom agents or workflows -- Sharing custom content across projects or teams - -:::note[Prerequisites] -- BMad installed in your project -- Custom content with a valid `module.yaml` file -::: - -## Steps - -### 1. Prepare Your Custom Content - -Your custom content needs a `module.yaml` file. Choose the appropriate structure: - -**For a cohesive module** (agents and workflows that work together): - -``` -module-code/ - module.yaml - agents/ - workflows/ - tools/ - templates/ -``` - -**For standalone items** (unrelated agents/workflows): - -``` -module-name/ - module.yaml # Contains unitary: true - agents/ - larry/larry.agent.md - curly/curly.agent.md - workflows/ -``` - -Add `unitary: true` in your `module.yaml` to indicate items don't depend on each other. - -### 2. Run the Installer - -**New project:** - -```bash -npx bmad-method install -``` - -When prompted "Would you like to install a local custom module?", select 'y' and provide the path to your module folder. - -**Existing project:** - -```bash -npx bmad-method install -``` - -1. Select `Modify BMad Installation` -2. Choose the option to add, modify, or update custom modules -3. Provide the path to your module folder - -### 3. Verify Installation - -Check that your custom content appears in the `_bmad/` directory and is accessible from your AI tool. - -## What You Get - -- Custom agents available in your AI tool -- Custom workflows accessible via `*workflow-name` -- Content integrated with BMad's update system - -## Content Types - -BMad supports several categories of custom content: - -| Type | Description | -| ----------------------- | ---------------------------------------------------- | -| **Stand Alone Modules** | Complete modules with their own agents and workflows | -| **Add On Modules** | Extensions that add to existing modules | -| **Global Modules** | Content available across all modules | -| **Custom Agents** | Individual agent definitions | -| **Custom Workflows** | Individual workflow definitions | - -For detailed information about content types, see [Custom Content Types](https://github.com/bmad-code-org/bmad-builder/blob/main/docs/explanation/bmad-builder/custom-content-types.md). - -## Updating Custom Content - -When BMad Core or module updates are available, the quick update process: - -1. Applies updates to core modules -2. Recompiles all agents with your customizations -3. Retains your custom content from cache -4. Preserves your configurations - -You don't need to keep source module files locally—just point to the updated location during updates. - -## Tips - -- **Use unique module codes** — Don't use `bmm` or other existing module codes -- **Avoid naming conflicts** — Each module needs a distinct code -- **Document dependencies** — Note any modules your custom content requires -- **Test in isolation** — Verify custom modules work before sharing -- **Version your content** — Track updates with version numbers - -:::caution[Naming Conflicts] -Don't create custom modules with codes like `bmm` (already used by BMad Method). Each custom module needs a unique code. -::: - -## Example Modules - -Find example custom modules in the `samples/sample-custom-modules/` folder of the [BMad repository](https://github.com/bmad-code-org/BMAD-METHOD). Download either sample folder to try them out. diff --git a/docs/_basement/reference/agents.md b/docs/_basement/reference/agents.md deleted file mode 100644 index 409f161c..00000000 --- a/docs/_basement/reference/agents.md +++ /dev/null @@ -1,109 +0,0 @@ ---- -title: "Agents Reference" -description: Complete reference for BMad Method agents and their commands ---- - -Quick reference of all BMad Method agents and their available commands. - -:::tip[Universal Commands] -All agents support: `*menu` (redisplay options), `*dismiss` (dismiss agent), and `*party-mode` (multi-agent collaboration). -::: - -## Analyst (Mary) - -Business analysis and research. - -**Commands:** -- `*workflow-status` — Get workflow status or initialize tracking -- `*brainstorm-project` — Guided brainstorming session -- `*research` — Market, domain, competitive, or technical research -- `*product-brief` — Create a product brief (input for PRD) -- `*document-project` — Document existing brownfield projects - -## PM (John) - -Product requirements and planning. - -**Commands:** -- `*workflow-status` — Get workflow status or initialize tracking -- `*create-prd` — Create Product Requirements Document -- `*create-epics-and-stories` — Break PRD into epics and user stories (after Architecture) -- `*implementation-readiness` — Validate PRD, UX, Architecture, Epics alignment -- `*correct-course` — Course correction during implementation - -## Architect (Winston) - -System architecture and technical design. - -**Commands:** -- `*workflow-status` — Get workflow status or initialize tracking -- `*create-architecture` — Create architecture document to guide development -- `*implementation-readiness` — Validate PRD, UX, Architecture, Epics alignment -- `*create-excalidraw-diagram` — System architecture or technical diagrams -- `*create-excalidraw-dataflow` — Data flow diagrams - -## SM (Bob) - -Sprint planning and story preparation. - -**Commands:** -- `*sprint-planning` — Generate sprint-status.yaml from epic files -- `*create-story` — Create story from epic (prep for development) -- `*validate-create-story` — Validate story quality -- `*epic-retrospective` — Team retrospective after epic completion -- `*correct-course` — Course correction during implementation - -## DEV (Amelia) - -Story implementation and code review. - -**Commands:** -- `*dev-story` — Execute story workflow (implementation with tests) -- `*code-review` — Thorough code review - -## Quick Flow Solo Dev (Barry) - -Fast solo development without handoffs. - -**Commands:** -- `*quick-spec` — Architect technical spec with implementation-ready stories -- `*quick-dev` — Implement tech spec end-to-end solo -- `*code-review` — Review and improve code - -## TEA (Murat) - -Test architecture and quality strategy. - -**Commands:** -- `*framework` — Initialize production-ready test framework -- `*atdd` — Generate E2E tests first (before implementation) -- `*automate` — Comprehensive test automation -- `*test-design` — Create comprehensive test scenarios -- `*trace` — Map requirements to tests, quality gate decision -- `*nfr-assess` — Validate non-functional requirements -- `*ci` — Scaffold CI/CD quality pipeline -- `*test-review` — Review test quality - -## UX Designer (Sally) - -User experience and UI design. - -**Commands:** -- `*create-ux-design` — Generate UX design and UI plan from PRD -- `*validate-design` — Validate UX specification and design artifacts -- `*create-excalidraw-wireframe` — Create website or app wireframe - -## Technical Writer (Paige) - -Technical documentation and diagrams. - -**Commands:** -- `*document-project` — Comprehensive project documentation -- `*generate-mermaid` — Generate Mermaid diagrams -- `*create-excalidraw-flowchart` — Process and logic flow visualizations -- `*create-excalidraw-diagram` — System architecture or technical diagrams -- `*create-excalidraw-dataflow` — Data flow visualizations -- `*validate-doc` — Review documentation against standards -- `*improve-readme` — Review and improve README files -- `*explain-concept` — Create clear technical explanations -- `*standards-guide` — Show BMad documentation standards diff --git a/docs/_basement/reference/configuration/core-tasks.md b/docs/_basement/reference/configuration/core-tasks.md deleted file mode 100644 index fa90e484..00000000 --- a/docs/_basement/reference/configuration/core-tasks.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -title: "Core Tasks" ---- - -Reusable task definitions that can be invoked by any BMad module, workflow, or agent. - -## Contents - -- [Index Docs](#index-docs) — Generate directory index files -- [Adversarial Review](#adversarial-review) — Critical content review -- [Shard Document](#shard-document) — Split large documents into sections - -## Index Docs - -**Generates or updates an index.md file documenting all files in a specified directory.** - -**Use it when:** -- You need navigable documentation for a folder of markdown files -- You want to maintain an updated index as content evolves - -**How it works:** -1. Scan the target directory for files and subdirectories -2. Group content by type, purpose, or location -3. Read each file to generate brief (3-10 word) descriptions -4. Create or update index.md with organized listings - -**Output:** Markdown index with sections for Files and Subdirectories, each entry containing a relative link and description. - -## Adversarial Review - -**Performs a cynical, skeptical review of any content to identify issues and improvement opportunities.** - -**Use it when:** -- Reviewing code diffs before merging -- Finalizing specifications or user stories -- Releasing documentation -- Any artifact needs a critical eye before completion - -**How it works:** -1. Load the content to review (diff, branch, document, etc.) -2. Perform adversarial analysis — assume problems exist -3. Find at least ten issues to fix or improve -4. Output findings as a markdown list - -:::note[Unbiased Review] -This task runs in a separate subagent with read access but no prior context, ensuring an unbiased review. -::: - -## Shard Document - -**Splits large markdown documents into smaller files based on level 2 (`##`) sections.** - -**Use it when:** -- A markdown file has grown too large to work with effectively -- You want to break a monolithic document into manageable sections -- Individual sections need to be edited independently - -**How it works:** -1. Confirm source document path (must be markdown) -2. Determine destination folder (defaults to folder named after document) -3. Execute sharding via `npx @kayvan/markdown-tree-parser` -4. Verify output files and index.md were created -5. Handle original document — delete, move to archive, or keep - -:::caution[Original File] -After sharding, delete or archive the original to avoid confusion. Updates should happen in the sharded files only. -::: diff --git a/docs/_basement/reference/configuration/global-config.md b/docs/_basement/reference/configuration/global-config.md deleted file mode 100644 index 5a2f243d..00000000 --- a/docs/_basement/reference/configuration/global-config.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: "Global Inheritable Config" ---- - -Configuration values defined in the Core Module that all other modules inherit by default. - -## Core Config Values - -These values are set during installation and recorded to the core `module.yaml`: - -| Config Key | Default | Description | -|------------|---------|-------------| -| `user_name` | System username | User's display name | -| `communication_language` | `english` | Language for agent communication | -| `document_output_language` | `english` | Language for generated documents | -| `output_folder` | `_bmad-output` | Directory for workflow outputs | - -## Inheritance Behavior - -All installed modules automatically clone these values into their own config. Modules can: - -- **Accept defaults** — Use core values as-is (recommended) -- **Override values** — Replace with module-specific settings -- **Extend values** — Build on core values with additional paths - -:::tip[Extending Config] -Use `{output_folder}` to reference the core value. Example: BMad Method defines `planning_artifacts` as `{output_folder}/planning-artifacts`, automatically inheriting whatever output folder the user configured. -::: diff --git a/docs/downloads.md b/docs/downloads.md index 7f9a4133..d063c8e1 100644 --- a/docs/downloads.md +++ b/docs/downloads.md @@ -8,19 +8,19 @@ Download BMad Method resources for offline use, AI training, or integration. Download these from the `downloads/` folder on the documentation site. -| File | Description | -|------|-------------| -| `bmad-sources.zip` | Complete BMad source files | +| File | Description | +| ------------------ | ------------------------------- | +| `bmad-sources.zip` | Complete BMad source files | | `bmad-prompts.zip` | Agent and workflow prompts only | ## LLM-Optimized Files These files are designed for AI consumption - perfect for loading into Claude, ChatGPT, or any LLM context window. See [API Access](#api-access) below for URLs. -| File | Description | Use Case | -|------|-------------|----------| -| `llms.txt` | Documentation index with summaries | Quick overview, navigation | -| `llms-full.txt` | Complete documentation concatenated | Full context loading | +| File | Description | Use Case | +| --------------- | ----------------------------------- | -------------------------- | +| `llms.txt` | Documentation index with summaries | Quick overview, navigation | +| `llms-full.txt` | Complete documentation concatenated | Full context loading | ### Using with LLMs @@ -44,7 +44,7 @@ docs = requests.get("https://bmad-code-org.github.io/BMAD-METHOD/llms-full.txt") ## Installation Options ```bash -npx bmad-method@alpha install +npx bmad-method install ``` [More details](/docs/how-to/install-bmad.md) diff --git a/docs/_basement/explanation/faq/brownfield-faq.md b/docs/explanation/brownfield-faq.md similarity index 54% rename from docs/_basement/explanation/faq/brownfield-faq.md rename to docs/explanation/brownfield-faq.md index 79e192b2..1c9b3b82 100644 --- a/docs/_basement/explanation/faq/brownfield-faq.md +++ b/docs/explanation/brownfield-faq.md @@ -6,12 +6,12 @@ Quick answers to common questions about brownfield (existing codebase) developme ## Questions -- [What is brownfield vs greenfield?](#what-is-brownfield-vs-greenfield) -- [Do I have to run document-project for brownfield?](#do-i-have-to-run-document-project-for-brownfield) -- [What if I forget to run document-project?](#what-if-i-forget-to-run-document-project) -- [Can I use Quick Spec Flow for brownfield projects?](#can-i-use-quick-spec-flow-for-brownfield-projects) -- [How does workflow-init handle old planning docs?](#how-does-workflow-init-handle-old-planning-docs) -- [What if my existing code doesn't follow best practices?](#what-if-my-existing-code-doesnt-follow-best-practices) +- [Questions](#questions) + - [What is brownfield vs greenfield?](#what-is-brownfield-vs-greenfield) + - [Do I have to run document-project for brownfield?](#do-i-have-to-run-document-project-for-brownfield) + - [What if I forget to run document-project?](#what-if-i-forget-to-run-document-project) + - [Can I use Quick Spec Flow for brownfield projects?](#can-i-use-quick-spec-flow-for-brownfield-projects) + - [What if my existing code doesn't follow best practices?](#what-if-my-existing-code-doesnt-follow-best-practices) ### What is brownfield vs greenfield? @@ -25,19 +25,12 @@ Highly recommended, especially if: - No existing documentation - Documentation is outdated - AI agents need context about existing code -- Level 2-4 complexity -You can skip it if you have comprehensive, up-to-date documentation including `docs/index.md`. +You can skip it if you have comprehensive, up-to-date documentation including `docs/index.md` or will use other tools or techniques to aid in discovery for the agent to build on an existing system. ### What if I forget to run document-project? -Workflows will lack context about existing code. You may get: - -- Suggestions that don't match existing patterns -- Integration approaches that miss existing APIs -- Architecture that conflicts with current structure - -Run document-project and restart planning with proper context. +Don't worry about it - you can do it at any time. You can even do it during or after a project to help keep docs up to date. ### Can I use Quick Spec Flow for brownfield projects? @@ -50,17 +43,6 @@ Yes! Quick Spec Flow works great for brownfield. It will: Perfect for bug fixes and small features in existing codebases. -### How does workflow-init handle old planning docs? - -workflow-init asks about YOUR current work first, then uses old artifacts as context: - -1. Shows what it found (old PRD, epics, etc.) -2. Asks: "Is this work in progress, previous effort, or proposed work?" -3. If previous effort: Asks you to describe your NEW work -4. Determines level based on YOUR work, not old artifacts - -This prevents old Level 3 PRDs from forcing Level 3 workflow for a new Level 0 bug fix. - ### What if my existing code doesn't follow best practices? Quick Spec Flow detects your conventions and asks: "Should I follow these existing conventions?" You decide: diff --git a/docs/_basement/explanation/preventing-agent-conflicts.md b/docs/explanation/preventing-agent-conflicts.md similarity index 84% rename from docs/_basement/explanation/preventing-agent-conflicts.md rename to docs/explanation/preventing-agent-conflicts.md index e8141989..4516ef6c 100644 --- a/docs/_basement/explanation/preventing-agent-conflicts.md +++ b/docs/explanation/preventing-agent-conflicts.md @@ -3,7 +3,6 @@ title: "Preventing Agent Conflicts" description: How architecture prevents conflicts when multiple agents implement a system --- - When multiple AI agents implement different parts of a system, they can make conflicting technical decisions. Architecture documentation prevents this by establishing shared standards. ## Common Conflict Types @@ -86,14 +85,14 @@ Result: Consistent implementation Common decisions that prevent conflicts: -| Topic | Example Decision | -|-------|-----------------| -| API Style | GraphQL vs REST vs gRPC | -| Database | PostgreSQL vs MongoDB | -| Auth | JWT vs Sessions | -| State Management | Redux vs Context vs Zustand | -| Styling | CSS Modules vs Tailwind vs Styled Components | -| Testing | Jest + Playwright vs Vitest + Cypress | +| Topic | Example Decision | +| ---------------- | -------------------------------------------- | +| API Style | GraphQL vs REST vs gRPC | +| Database | PostgreSQL vs MongoDB | +| Auth | JWT vs Sessions | +| State Management | Redux vs Context vs Zustand | +| Styling | CSS Modules vs Tailwind vs Styled Components | +| Testing | Jest + Playwright vs Vitest + Cypress | ## Anti-Patterns to Avoid diff --git a/docs/_basement/explanation/why-solutioning-matters.md b/docs/explanation/why-solutioning-matters.md similarity index 100% rename from docs/_basement/explanation/why-solutioning-matters.md rename to docs/explanation/why-solutioning-matters.md diff --git a/docs/gap-analysis-migration.md b/docs/gap-analysis-migration.md index 87785bbd..df3bd99a 100644 --- a/docs/gap-analysis-migration.md +++ b/docs/gap-analysis-migration.md @@ -1,3 +1,8 @@ +--- +title: Gap Analysis Migration Guide +description: Migration guide for existing BMAD users transitioning to automatic gap analysis in v6 +--- + # Gap Analysis Migration Guide ## Quick Start diff --git a/docs/gap-analysis.md b/docs/gap-analysis.md index 2a08fad2..70fa3a89 100644 --- a/docs/gap-analysis.md +++ b/docs/gap-analysis.md @@ -1,3 +1,8 @@ +--- +title: Gap Analysis - Codebase-Reality Task Validation +description: Critical feature ensuring story tasks accurately reflect current codebase state by scanning projects before development +--- + # Gap Analysis: Codebase-Reality Task Validation ## Overview diff --git a/docs/_basement/how-to/brownfield/index.md b/docs/how-to/brownfield/index.md similarity index 85% rename from docs/_basement/how-to/brownfield/index.md rename to docs/how-to/brownfield/index.md index ab5f30e9..75bab690 100644 --- a/docs/_basement/how-to/brownfield/index.md +++ b/docs/how-to/brownfield/index.md @@ -36,9 +36,11 @@ Your `docs/` folder should contain succinct, well-organized documentation that a For complex projects, consider using the `document-project` workflow. It offers runtime variants that will scan your entire project and document its actual current state. -## Step 3: Initialize for Brownfield Work +## Step 3: Get Help -Run `workflow-init`. It should recognize you are in an existing project. If not, explicitly clarify that this is brownfield development for a new feature. +Get help to know what to do next based on your unique needs + +Run `bmad-help` to get guidance when you are not sure what to do next. ### Choosing Your Approach @@ -76,9 +78,7 @@ When doing architecture, ensure the architect: Pay close attention here to prevent reinventing the wheel or making decisions that misalign with your existing architecture. -## Next Steps +## More Information -- **[Document Existing Project](/docs/how-to/brownfield/document-existing-project.md)** - How to document your brownfield codebase -- **[Add Feature to Existing Project](/docs/how-to/brownfield/add-feature-to-existing.md)** - Adding new functionality - **[Quick Fix in Brownfield](/docs/how-to/brownfield/quick-fix-in-brownfield.md)** - Bug fixes and ad-hoc changes -- **[Brownfield FAQ](/docs/explanation/faq/brownfield-faq.md)** - Common questions about brownfield development +- **[Brownfield FAQ](/docs/explanation/brownfield-faq.md)** - Common questions about brownfield development diff --git a/docs/_basement/how-to/brownfield/quick-fix-in-brownfield.md b/docs/how-to/brownfield/quick-fix-in-brownfield.md similarity index 78% rename from docs/_basement/how-to/brownfield/quick-fix-in-brownfield.md rename to docs/how-to/brownfield/quick-fix-in-brownfield.md index 2e8896ab..9dc430f1 100644 --- a/docs/_basement/how-to/brownfield/quick-fix-in-brownfield.md +++ b/docs/how-to/brownfield/quick-fix-in-brownfield.md @@ -7,11 +7,10 @@ Use the **DEV agent** directly for bug fixes, refactorings, or small targeted ch ## When to Use This -- Bug fixes -- Small refactorings -- Targeted code improvements +- Simple bug fixes +- Small refactorings and changes that don't need extensive ideation, planning, or architectural shifts +- Larger refactorings or improvement with built in tool planning and execution mode combination, or better yet use quick flow - Learning about your codebase -- One-off changes that don't need planning ## Steps @@ -20,7 +19,7 @@ Use the **DEV agent** directly for bug fixes, refactorings, or small targeted ch For quick fixes, you can use: - **DEV agent** - For implementation-focused work -- **Quick Flow Solo Dev** - For slightly larger changes that still need a tech-spec +- **Quick Flow Solo Dev** - For slightly larger changes that still need a quick-spec to keep the agent aligned to planning and standards ### 2. Describe the Change @@ -61,7 +60,7 @@ Explain how the authentication system works in this codebase Show me where error handling happens in the API layer ``` -LLMs are excellent at interpreting and analyzing code—whether it was AI-generated or not. Use the agent to: +LLMs are excellent at interpreting and analyzing code, whether it was AI-generated or not. Use the agent to: - Learn about your project - Understand how things are built diff --git a/docs/how-to/customize-bmad.md b/docs/how-to/customize-bmad.md new file mode 100644 index 00000000..c466631f --- /dev/null +++ b/docs/how-to/customize-bmad.md @@ -0,0 +1,158 @@ +--- +title: "BMad Method Customization Guide" +--- + +The ability to customize the BMad Method and its core to your needs, while still being able to get updates and enhancements is a critical idea within the BMad Ecosystem. + +The Customization Guidance outlined here, while targeted at understanding BMad Method customization, applies to any other module use within the BMad Method. + +## Types of Customization + +Customization includes Agent Customization, Workflow/Skill customization, the addition of new MCPs or Skills to be used by existing agents. Aside from all of this, a whole other realm of customization involves creating / adding your own relevant BMad Builder workflows, skills, agents and maybe even your own net new modules to compliment the BMad Method Module. + +Warning: The reason for customizing as this guide will prescribe will allow you to continue getting updates without worrying about losing your customization changes. And by continuing to get updates as BMad modules advance, you will be able to continue to evolve as the system improves. + +## Agent Customization + +### Agent Customization Areas + +- Change agent names, personas or manner of speech +- Add project-specific memories or context +- Add custom menu items to custom or inline prompts, skills or custom BMad workflows +- Define critical actions that occur agent startup for consistent behavior + +## How to customize an agent. + +**1. Locate Customization Files** + +After installation, find agent customization files in: + +``` +_bmad/_config/agents/ +├── core-bmad-master.customize.yaml +├── bmm-dev.customize.yaml +├── bmm-pm.customize.yaml +└── ... (one file per installed agent) +``` + +**2. Edit Any Agent** + +Open the `.customize.yaml` file for the agent you want to modify. All sections are optional - customize only what you need. + +**3. Rebuild the Agent** + +After editing, IT IS CRITICAL to rebuild the agent to apply changes: + +```bash +npx bmad-method install +``` + +You can either then: + +- Select `Quick Update` - This will also ensure all packages are up to date AND compile all agents to include any updates or customizations +- Select `Rebuild Agents` - This will only rebuild and apply customizations to agents, without pulling the latest + +There will be additional tools shortly after beta launch to allow install of individual agents, workflows, skills and modules without the need for using the full bmad installer. + +### What Agent Properties Can Be Customized? + +#### Agent Name + +Change how the agent introduces itself: + +```yaml +agent: + metadata: + name: 'Spongebob' # Default: "Amelia" +``` + +#### Persona + +Replace the agent's personality, role, and communication style: + +```yaml +persona: + role: 'Senior Full-Stack Engineer' + identity: 'Lives in a pineapple (under the sea)' + communication_style: 'Spongebob annoying' + principles: + - 'Never Nester, Spongebob Devs hate nesting more than 2 levels deep' + - 'Favor composition over inheritance' +``` + +**Note:** The persona section replaces the entire default persona (not merged). + +#### Memories + +Add persistent context the agent will always remember: + +```yaml +memories: + - 'Works at Krusty Krab' + - 'Favorite Celebrity: David Hasslehoff' + - 'Learned in Epic 1 that its not cool to just pretend that tests have passed' +``` + +### Custom Menu Items + +Any custom items you add here will be included in the agents display menu. + +```yaml +menu: + - trigger: my-workflow + workflow: '{project-root}/my-custom/workflows/my-workflow.yaml' + description: My custom workflow + - trigger: deploy + action: '#deploy-prompt' + description: Deploy to production +``` + +### Critical Actions + +Add instructions that execute before the agent starts: + +```yaml +critical_actions: + - 'Check the CI Pipelines with the XYZ Skill and alert user on wake if anything is urgently needing attention' +``` + +### Custom Prompts + +Define reusable prompts for `action="#id"` menu handlers: + +```yaml +prompts: + - id: deploy-prompt + content: | + Deploy the current branch to production: + 1. Run all tests + 2. Build the project + 3. Execute deployment script +``` + +## Troubleshooting + +**Changes not appearing?** + +- Make sure you ran `npx bmad-method build ` after editing +- Check YAML syntax is valid (indentation matters!) +- Verify the agent name matches the file name pattern + +**Agent not loading?** + +- Check for YAML syntax errors +- Ensure required fields aren't left empty if you uncommented them +- Try reverting to the template and rebuilding + +**Need to reset?** + +- Remove content from the `.customize.yaml` file (or delete the file) +- Run `npx bmad-method build ` to regenerate defaults + +## Workflow Customization + +Information about customizing existing BMad MEthod workflows and skills are coming soon. + +## Module Customization + +Information on how to build expansion modules that augment BMad, or make other existing module customizations are coming soon. \ No newline at end of file diff --git a/docs/how-to/get-answers-about-bmad.md b/docs/how-to/get-answers-about-bmad.md index 6581e817..a8dbad09 100644 --- a/docs/how-to/get-answers-about-bmad.md +++ b/docs/how-to/get-answers-about-bmad.md @@ -3,11 +3,11 @@ title: "How to Get Answers About BMad" description: Use an LLM to quickly answer your own BMad questions --- -Use your AI tool to get answers about BMad by pointing it at the source files. +If you have successfully installed BMad and the BMad Method (+ other modules as needed) - the first step in getting answers is `/bmad-help`. This will answer upwards of 80% of all questions and is available to you in the IDE as you are working. ## When to Use This -- You have a question about how BMad works +- You have a question about how BMad works or what to do next with BMad - You want to understand a specific agent or workflow - You need quick answers without waiting for Discord @@ -19,11 +19,11 @@ An AI tool (Claude Code, Cursor, ChatGPT, Claude.ai, etc.) and either BMad insta ### 1. Choose Your Source -| Source | Best For | Examples | -|--------|----------|----------| -| **`_bmad` folder** | How BMad works—agents, workflows, prompts | "What does the PM agent do?" | -| **Full GitHub repo** | History, installer, architecture | "What changed in v6?" | -| **`llms-full.txt`** | Quick overview from docs | "Explain BMad's four phases" | +| Source | Best For | Examples | +| -------------------- | ----------------------------------------- | ---------------------------- | +| **`_bmad` folder** | How BMad works—agents, workflows, prompts | "What does the PM agent do?" | +| **Full GitHub repo** | History, installer, architecture | "What changed in v6?" | +| **`llms-full.txt`** | Quick overview from docs | "Explain BMad's four phases" | The `_bmad` folder is created when you install BMad. If you don't have it yet, clone the repo instead. @@ -65,12 +65,12 @@ Direct answers about BMad—how agents work, what workflows do, why things are s Tried the LLM approach and still need help? You now have a much better question to ask. -| Channel | Use For | -|---------|---------| -| `#bmad-method-help` | Quick questions (real-time chat) | -| `help-requests` forum | Detailed questions (searchable, persistent) | -| `#suggestions-feedback` | Ideas and feature requests | -| `#report-bugs-and-issues` | Bug reports | +| Channel | Use For | +| ------------------------- | ------------------------------------------- | +| `#bmad-method-help` | Quick questions (real-time chat) | +| `help-requests` forum | Detailed questions (searchable, persistent) | +| `#suggestions-feedback` | Ideas and feature requests | +| `#report-bugs-and-issues` | Bug reports | **Discord:** [discord.gg/gk8jAdXWmj](https://discord.gg/gk8jAdXWmj) diff --git a/docs/how-to/install-bmad.md b/docs/how-to/install-bmad.md index 126f029f..27e7b253 100644 --- a/docs/how-to/install-bmad.md +++ b/docs/how-to/install-bmad.md @@ -22,7 +22,7 @@ Use the `npx bmad-method install` command to set up BMad in your project with yo ### 1. Run the Installer ```bash -npx bmad-method@alpha install +npx bmad-method install ``` ### 2. Choose Installation Location @@ -68,13 +68,6 @@ your-project/ Run the `help` workflow (`/bmad-help` on most platforms) to verify everything works and see what to do next. -## Living on the Edge - -**Latest pre-release (alpha/beta):** -```bash -npx bmad-method@alpha install -``` - **Latest from main branch:** ```bash npx github:bmad-code-org/BMAD-METHOD install diff --git a/docs/_basement/how-to/customization/shard-large-documents.md b/docs/how-to/shard-large-documents.md similarity index 100% rename from docs/_basement/how-to/customization/shard-large-documents.md rename to docs/how-to/shard-large-documents.md diff --git a/docs/_basement/how-to/installation/upgrade-to-v6.md b/docs/how-to/upgrade-to-v6.md similarity index 100% rename from docs/_basement/how-to/installation/upgrade-to-v6.md rename to docs/how-to/upgrade-to-v6.md diff --git a/docs/reference/workflow-map.md b/docs/reference/workflow-map.md index d32d8a32..22b97299 100644 --- a/docs/reference/workflow-map.md +++ b/docs/reference/workflow-map.md @@ -3,59 +3,68 @@ title: "Workflow Map" description: Visual reference for BMad Method workflow phases and outputs --- -BMAD is a context management system. AI agents work best with clear, structured context. The BMM workflow builds that context progressively - each phase produces documents that inform the next, so agents always know what to build and why. +The BMad Method (BMM) is a module in the BMad Ecosystem, targeted at following the best practices of context engineering and planning. AI agents work best with clear, structured context. The BMM system builds that context progressively across 4 distinct phases - each phase, and multiple workflows optionally within each phase, produce documents that inform the next, so agents always know what to build and why. -![BMad Method Workflow Map](/img/workflow-map.png) +The rationale and concepts come from agile methodologies that have been used across the industry with great success as a mental framework. + +If at anytime you are unsure what to do, the `/bmad-help` command will help you stay on track or know what to do next. You can always refer to this for reference also - but /bmad-help is fully interactive and much quicker if you have already installed the BMadMethod. Additionally, if you are using different modules that have extended the BMad Method or added other complimentary non extension modules - the /bmad-help evolves to know all that is available to give you the best in the moment advice. + +Final important note: Every workflow below can be run directly with your tool of choice via slash command or by loading an agent first and using the entry from the agents menu. + + + +*[Interactive diagram - hover over outputs to see artifact flows]* ## Phase 1: Analysis (Optional) Explore the problem space and validate ideas before committing to planning. -| Workflow | Purpose | Produces | -|----------|---------|----------| -| `research` | Validate market, technical, or domain assumptions | Research findings | -| `create-product-brief` | Capture strategic vision | `product-brief.md` | +| Workflow | Purpose | Produces | +| ---------------------- | -------------------------------------------------------------------------- | ------------------------- | +| `brainstorm` | Brainstorm Project Ideas with guided facilitation of a brainstorming coach | `brainstorming-report.md` | +| `research` | Validate market, technical, or domain assumptions | Research findings | +| `create-product-brief` | Capture strategic vision | `product-brief.md` | ## Phase 2: Planning Define what to build and for whom. -| Workflow | Purpose | Produces | -|----------|---------|----------| -| `prd` | Define requirements (FRs/NFRs) | `PRD.md` | +| Workflow | Purpose | Produces | +| ------------------ | ---------------------------------------- | ------------ | +| `create-prd` | Define requirements (FRs/NFRs) | `PRD.md` | | `create-ux-design` | Design user experience (when UX matters) | `ux-spec.md` | ## Phase 3: Solutioning Decide how to build it and break work into stories. -| Workflow | Purpose | Produces | -|----------|---------|----------| -| `create-architecture` | Make technical decisions explicit | `architecture.md` with ADRs | -| `create-epics-and-stories` | Break requirements into implementable work | Epic files with stories | -| `check-implementation-readiness` | Gate check before implementation | PASS/CONCERNS/FAIL decision | +| Workflow | Purpose | Produces | +| -------------------------------- | ------------------------------------------ | --------------------------- | +| `create-architecture` | Make technical decisions explicit | `architecture.md` with ADRs | +| `create-epics-and-stories` | Break requirements into implementable work | Epic files with stories | +| `check-implementation-readiness` | Gate check before implementation | PASS/CONCERNS/FAIL decision | ## Phase 4: Implementation Build it, one story at a time. -| Workflow | Purpose | Produces | -|----------|---------|----------| -| `sprint-planning` | Initialize tracking (once per project) | `sprint-status.yaml` | -| `create-story` | Prepare next story for implementation | `story-[slug].md` | -| `dev-story` | Implement the story | Working code + tests | -| `code-review` | Validate implementation quality | Approved or changes requested | -| `correct-course` | Handle significant mid-sprint changes | Updated plan or re-routing | -| `retrospective` | Review after epic completion | Lessons learned | +| Workflow | Purpose | Produces | +| ----------------- | -------------------------------------- | ----------------------------- | +| `sprint-planning` | Initialize tracking (once per project) | `sprint-status.yaml` | +| `create-story` | Prepare next story for implementation | `story-[slug].md` | +| `dev-story` | Implement the story | Working code + tests | +| `code-review` | Validate implementation quality | Approved or changes requested | +| `correct-course` | Handle significant mid-sprint changes | Updated plan or re-routing | +| `retrospective` | Review after epic completion | Lessons learned | ## Quick Flow (Parallel Track) Skip phases 1-3 for small, well-understood work. -| Workflow | Purpose | Produces | -|----------|---------|----------| -| `quick-spec` | Define an ad-hoc change | `tech-spec.md` (story file for small changes) | -| `quick-dev` | Implement from spec or direct instructions | Working code + tests | +| Workflow | Purpose | Produces | +| ------------ | ------------------------------------------ | --------------------------------------------- | +| `quick-spec` | Define an ad-hoc change | `tech-spec.md` (story file for small changes) | +| `quick-dev` | Implement from spec or direct instructions | Working code + tests | ## Context Management @@ -65,10 +74,10 @@ For brownfield projects, `document-project` creates or updates `project-context. All implementation workflows load `project-context.md` if it exists. Additional context per workflow: -| Workflow | Also Loads | -|----------|------------| +| Workflow | Also Loads | +| -------------- | ---------------------------- | | `create-story` | epics, PRD, architecture, UX | -| `dev-story` | story file | -| `code-review` | architecture, story file | -| `quick-spec` | planning docs (if exist) | -| `quick-dev` | tech-spec | +| `dev-story` | story file | +| `code-review` | architecture, story file | +| `quick-spec` | planning docs (if exist) | +| `quick-dev` | tech-spec | diff --git a/docs/super-dev-mode.md b/docs/super-dev-mode.md index 5721c87d..26ad7ff7 100644 --- a/docs/super-dev-mode.md +++ b/docs/super-dev-mode.md @@ -1,3 +1,8 @@ +--- +title: Super-Dev Mode - Comprehensive Quality Workflow +description: Multi-stage validation workflow ensuring stories are truly complete through pre-validation, development, post-validation, and code review +--- + # Super-Dev Mode: Comprehensive Quality Workflow ## TL;DR diff --git a/docs/tutorials/getting-started.md b/docs/tutorials/getting-started.md index bd29888d..38d25a2d 100644 --- a/docs/tutorials/getting-started.md +++ b/docs/tutorials/getting-started.md @@ -20,7 +20,7 @@ Build software faster using AI-powered workflows with specialized agents that gu ::: :::tip[Quick Path] -**Install** → `npx bmad-method@alpha install` +**Install** → `npx bmad-method install` **Plan** → PM creates PRD, Architect creates architecture **Build** → SM manages sprints, DEV implements stories **Fresh chats** for each workflow to avoid context issues. @@ -56,7 +56,7 @@ Story counts are guidance, not definitions. Choose your track based on planning Open a terminal in your project directory and run: ```bash -npx bmad-method@alpha install +npx bmad-method install ``` When prompted to select modules, choose **BMad Method**. @@ -130,11 +130,11 @@ Load the **SM agent** and run `sprint-planning`. This creates `sprint-status.yam For each story, repeat this cycle with fresh chats: -| Step | Agent | Workflow | Purpose | -| ---- | ----- | -------------- | ------------------------------------- | -| 1 | SM | `create-story` | Create story file from epic | -| 2 | DEV | `dev-story` | Implement the story | -| 3 | DEV | `code-review` | Quality validation *(recommended)* | +| Step | Agent | Workflow | Purpose | +| ---- | ----- | -------------- | ---------------------------------- | +| 1 | SM | `create-story` | Create story file from epic | +| 2 | DEV | `dev-story` | Implement the story | +| 3 | DEV | `code-review` | Quality validation *(recommended)* | After completing all stories in an epic, load the **SM agent** and run `retrospective`. @@ -162,17 +162,17 @@ your-project/ ## Quick Reference -| Workflow | Agent | Purpose | -| ---------------------------------- | --------- | ------------------------------------ | -| `help` | Any | Get guidance on what to do next | -| `prd` | PM | Create Product Requirements Document | -| `create-architecture` | Architect | Create architecture document | -| `create-epics-and-stories` | PM | Break down PRD into epics | -| `check-implementation-readiness` | Architect | Validate planning cohesion | -| `sprint-planning` | SM | Initialize sprint tracking | -| `create-story` | SM | Create a story file | -| `dev-story` | DEV | Implement a story | -| `code-review` | DEV | Review implemented code | +| Workflow | Agent | Purpose | +| -------------------------------- | --------- | ------------------------------------ | +| `help` | Any | Get guidance on what to do next | +| `prd` | PM | Create Product Requirements Document | +| `create-architecture` | Architect | Create architecture document | +| `create-epics-and-stories` | PM | Break down PRD into epics | +| `check-implementation-readiness` | Architect | Validate planning cohesion | +| `sprint-planning` | SM | Initialize sprint tracking | +| `create-story` | SM | Create a story file | +| `dev-story` | DEV | Implement a story | +| `code-review` | DEV | Review implemented code | ## Common Questions diff --git a/package-lock.json b/package-lock.json index b93ccece..a1384a41 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@jonahschulte/bmad-method", - "version": "6.3.7-alpha.23", + "version": "6.0.0-Beta.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@jonahschulte/bmad-method", - "version": "6.3.7-alpha.23", + "version": "6.0.0-Beta.1", "license": "MIT", "dependencies": { "@clack/prompts": "^0.11.0", diff --git a/package.json b/package.json index e2d55cb3..f3de928c 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@jonahschulte/bmad-method", - "version": "6.3.7-alpha.23", + "version": "6.0.0-Beta.1", "description": "Breakthrough Method of Agile AI-driven Development (Enhanced with TDD, intelligent multi-agent review, and production-hardened enforcement)", "keywords": [ "agile", diff --git a/src/bmm/agents/pm.agent.yaml b/src/bmm/agents/pm.agent.yaml index 14d04612..1fa22545 100644 --- a/src/bmm/agents/pm.agent.yaml +++ b/src/bmm/agents/pm.agent.yaml @@ -22,15 +22,15 @@ agent: menu: - trigger: CP or fuzzy match on create-prd - exec: "{project-root}/_bmad/bmm/workflows/2-plan-workflows/prd/workflow.md" + exec: "{project-root}/_bmad/bmm/workflows/2-plan-workflows/create-prd/workflow.md" description: "[CP] Create PRD: Expert led facilitation to produce your Product Requirements Document" - trigger: VP or fuzzy match on validate-prd - exec: "{project-root}/_bmad/bmm/workflows/2-plan-workflows/prd/workflow.md" + exec: "{project-root}/_bmad/bmm/workflows/2-plan-workflows/create-prd/workflow.md" description: "[VP] Validate PRD: Validate a Product Requirements Document is comprehensive, lean, well organized and cohesive" - trigger: EP or fuzzy match on edit-prd - exec: "{project-root}/_bmad/bmm/workflows/2-plan-workflows/prd/workflow.md" + exec: "{project-root}/_bmad/bmm/workflows/2-plan-workflows/create-prd/workflow.md" description: "[EP] Edit PRD: Update an existing Product Requirements Document" - trigger: CE or fuzzy match on epics-stories diff --git a/src/bmm/module-help.csv b/src/bmm/module-help.csv index 811da6ad..323cd77d 100644 --- a/src/bmm/module-help.csv +++ b/src/bmm/module-help.csv @@ -9,8 +9,8 @@ bmm,1-analysis,Domain Research,DR,21,_bmad/bmm/workflows/1-analysis/research/wor bmm,1-analysis,Technical Research,TR,22,_bmad/bmm/workflows/1-analysis/research/workflow.md,bmad_bmm_research,false,analyst,Create Mode research_type=technical,"Technical feasibility architecture options and implementation approaches","planning_artifacts|project-knowledge","research documents" bmm,1-analysis,Create Brief,CB,30,_bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md,bmad_bmm_create-brief,false,analyst,Create Mode,"A guided experience to nail down your product idea",planning_artifacts,"product brief", bmm,1-analysis,Validate Brief,VB,40,_bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md,bmad_bmm_validate-brief,false,analyst,Validate Mode,"Validates product brief completeness",planning_artifacts,"brief validation report", -bmm,2-planning,Create PRD,CP,10,_bmad/bmm/workflows/2-plan-workflows/prd/workflow.md,bmad_bmm_prd,true,pm,Create Mode,"Expert led facilitation to produce your Product Requirements Document",planning_artifacts,prd, -bmm,2-planning,Validate PRD,VP,20,_bmad/bmm/workflows/2-plan-workflows/prd/workflow.md,bmad_bmm_prd,false,pm,Validate Mode,"Validate PRD is comprehensive lean well organized and cohesive",planning_artifacts,"prd validation report", +bmm,2-planning,Create PRD,CP,10,_bmad/bmm/workflows/2-plan-workflows/create-prd/workflow.md,bmad_bmm_prd,true,pm,Create Mode,"Expert led facilitation to produce your Product Requirements Document",planning_artifacts,prd, +bmm,2-planning,Validate PRD,VP,20,_bmad/bmm/workflows/2-plan-workflows/create-prd/workflow.md,bmad_bmm_prd,false,pm,Validate Mode,"Validate PRD is comprehensive lean well organized and cohesive",planning_artifacts,"prd validation report", bmm,2-planning,Create UX,CU,30,_bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md,bmad_bmm_create-ux-design,false,ux-designer,Create Mode,"Guidance through realizing the plan for your UX, strongly recommended if a UI is a primary piece of the proposed project",planning_artifacts,"ux design", bmm,2-planning,Validate UX,VU,40,_bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md,bmad_bmm_create-ux-design,false,ux-designer,Validate Mode,"Validates UX design deliverables",planning_artifacts,"ux validation report", ,anytime,Create Dataflow,CDF,50,_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml,bmad_bmm_create-excalidraw-dataflow,false,ux-designer,Create Mode,"Create data flow diagrams (DFD) in Excalidraw format - can be called standalone or during any workflow to add visual documentation",planning_artifacts,"dataflow diagram", diff --git a/src/bmm/sub-modules/claude-code/config.yaml b/src/bmm/sub-modules/claude-code/config.yaml deleted file mode 100644 index 26d26bf9..00000000 --- a/src/bmm/sub-modules/claude-code/config.yaml +++ /dev/null @@ -1,4 +0,0 @@ -name: bmmcc -short-title: BMM Claude Code Sub Module -author: Brian (BMad) Madison -submodule: true diff --git a/src/bmm/sub-modules/claude-code/injections.yaml b/src/bmm/sub-modules/claude-code/injections.yaml deleted file mode 100644 index e8fabbe2..00000000 --- a/src/bmm/sub-modules/claude-code/injections.yaml +++ /dev/null @@ -1,242 +0,0 @@ -# Claude Code Content Injection Configuration -# This file defines content to be injected at specific points in BMAD files -# when Claude Code is selected as the IDE during installation -# -# The installer will: -# 1. Ask users if they want to install subagents (all/selective/none) -# 2. Ask where to install (project-level .claude/agents/_bmad/ or user-level ~/.claude/agents/_bmad/) -# 3. Only inject content related to selected subagents -# 4. Templates stay in _bmad/ directory and are referenced from there -# 5. Injections are placed at specific sections where each subagent is most valuable - -injections: - # ===== PRD WORKFLOW INJECTIONS ===== - - # PRD Subagent Instructions - - file: "_bmad/bmm/workflows/prd/instructions.md" - point: "prd-subagent-instructions" - requires: "all-prd-subagents" - content: | - - **Subagent Usage**: Throughout this workflow, leverage specialized subagents at critical decision points: - - Use `bmm-requirements-analyst` when defining functional requirements - - Use `bmm-user-journey-mapper` for comprehensive journey mapping - - Use `bmm-epic-optimizer` when structuring epic boundaries - - Use `bmm-technical-decisions-curator` to capture all technical mentions - - # PRD Requirements Analysis - - file: "_bmad/bmm/workflows/prd/instructions.md" - point: "prd-requirements-analysis" - requires: "requirements-analyst" - content: | - - **Subagent Hint**: Use `bmm-requirements-analyst` to validate requirements are testable and complete. - - # PRD User Journey Mapping - - file: "_bmad/bmm/workflows/prd/instructions.md" - point: "prd-user-journey" - requires: "user-journey-mapper" - content: | - - **Subagent Hint**: Use `bmm-user-journey-mapper` to map all user types and their value paths. - - # PRD Epic Optimization - - file: "_bmad/bmm/workflows/prd/instructions.md" - point: "prd-epic-optimization" - requires: "epic-optimizer" - content: | - - **Subagent Hint**: Use `bmm-epic-optimizer` to validate epic boundaries deliver coherent value. - - # PRD Document Review - - file: "_bmad/bmm/workflows/prd/instructions.md" - point: "prd-checklist-review" - requires: "document-reviewer" - content: | - - **Subagent Hint**: Use `bmm-document-reviewer` to validate PRD completeness before finalizing. - - # Technical Decisions Curator - - file: "_bmad/bmm/workflows/prd/instructions.md" - point: "technical-decisions-curator" - requires: "technical-decisions-curator" - content: | - - **Automatic Capture**: The `bmm-technical-decisions-curator` should be invoked whenever: - - Technology, framework, or tool is mentioned - - Architecture patterns are discussed - - Infrastructure or deployment topics arise - - Integration requirements are specified - - # ===== MARKET RESEARCH TEMPLATE INJECTIONS ===== - - # Market TAM/SAM/SOM Calculations - - file: "_bmad/bmm/templates/market.md" - point: "market-tam-calculations" - requires: "data-analyst" - content: | - - - MANDATORY: Use the 'bmm-data-analyst' subagent to perform all TAM, SAM, and SOM calculations. - The subagent will apply proper methodologies, validate assumptions, and provide defensible market sizing. - - - # Market Trends Analysis - - file: "_bmad/bmm/templates/market.md" - point: "market-trends-analysis" - requires: "trend-spotter" - content: | - - - MANDATORY: Use the 'bmm-trend-spotter' subagent to identify and analyze emerging market trends. - The subagent will detect disruption signals, technology shifts, and future opportunities. - - - # Market Customer Personas - - file: "_bmad/bmm/templates/market.md" - point: "market-customer-segments" - requires: "user-researcher" - content: | - - - MANDATORY: Use the 'bmm-user-researcher' subagent to develop detailed customer segment profiles and personas. - The subagent will analyze behavior patterns, needs, and journey maps for each segment. - - - # Market Research Review - - file: "_bmad/bmm/templates/market.md" - point: "market-executive-summary" - requires: "document-reviewer" - content: | - - - MANDATORY: Before finalizing the executive summary, use the 'bmm-document-reviewer' subagent to validate all market research findings and ensure data accuracy. - - - # ===== COMPETITOR ANALYSIS TEMPLATE INJECTIONS ===== - - # Competitor Intelligence Gathering - - file: "_bmad/bmm/templates/competitor.md" - point: "competitor-intelligence" - requires: "market-researcher" - content: | - - - MANDATORY: Use the 'bmm-market-researcher' subagent to gather comprehensive competitive intelligence for each competitor profile. - The subagent will analyze positioning, strategy, and market dynamics. - - - # Competitor Technical Analysis - - file: "_bmad/bmm/templates/competitor.md" - point: "competitor-tech-stack" - requires: "technical-evaluator" - content: | - - - MANDATORY: Use the 'bmm-technical-evaluator' subagent to analyze and compare competitor technology stacks. - The subagent will identify technical differentiators and architectural advantages. - - - # Competitor Metrics Analysis - - file: "_bmad/bmm/templates/competitor.md" - point: "competitor-metrics" - requires: "data-analyst" - content: | - - - MANDATORY: Use the 'bmm-data-analyst' subagent to analyze competitor performance metrics and market share data. - - - # Competitor Analysis Review - - file: "_bmad/bmm/templates/competitor.md" - point: "competitor-executive-summary" - requires: "document-reviewer" - content: | - - - MANDATORY: Before finalizing, use the 'bmm-document-reviewer' subagent to validate competitive analysis completeness and strategic recommendations. - - - # ===== PROJECT BRIEF TEMPLATE INJECTIONS ===== - - # Brief Problem Validation - - file: "_bmad/bmm/templates/brief.md" - point: "brief-problem-validation" - requires: "market-researcher" - content: | - - - IF market research has not been provided as input, MANDATORY: Use the 'bmm-market-researcher' subagent to validate the problem statement and assess market opportunity. - - - # Brief Target User Analysis - - file: "_bmad/bmm/templates/brief.md" - point: "brief-user-analysis" - requires: "user-researcher" - content: | - - - IF target user analysis has not been provided, MANDATORY: Use the 'bmm-user-researcher' subagent to develop detailed user profiles and validate user needs. - - - # Brief Success Metrics - - file: "_bmad/bmm/templates/brief.md" - point: "brief-success-metrics" - requires: "data-analyst" - content: | - - - MANDATORY: Use the 'bmm-data-analyst' subagent to define and validate KPIs, success metrics, and measurement approaches. - - - # Brief Technical Feasibility - - file: "_bmad/bmm/templates/brief.md" - point: "brief-technical-feasibility" - requires: "technical-evaluator" - content: | - - - IF technical assumptions need validation, use the 'bmm-technical-evaluator' subagent to assess feasibility and identify technical risks. - - - # Brief Requirements Extraction - - file: "_bmad/bmm/templates/brief.md" - point: "brief-requirements" - requires: "requirements-analyst" - content: | - - - MANDATORY: Use the 'bmm-requirements-analyst' subagent to extract initial high-level requirements from the brief content. - - - # Brief Document Review - - file: "_bmad/bmm/templates/brief.md" - point: "brief-final-review" - requires: "document-reviewer" - content: | - - - MANDATORY: Before finalizing the brief, use the 'bmm-document-reviewer' subagent to ensure completeness and internal consistency. - - -# Subagents to copy -subagents: - source: "sub-agents" - target: ".claude/agents" - files: - - "market-researcher.md" - - "requirements-analyst.md" - - "technical-evaluator.md" - - "epic-optimizer.md" - - "document-reviewer.md" - - "codebase-analyzer.md" - - "dependency-mapper.md" - - "pattern-detector.md" - - "tech-debt-auditor.md" - - "api-documenter.md" - - "test-coverage-analyzer.md" - - "user-researcher.md" - - "user-journey-mapper.md" - - "technical-decisions-curator.md" - - "data-analyst.md" - - "trend-spotter.md" diff --git a/src/bmm/sub-modules/claude-code/readme.md b/src/bmm/sub-modules/claude-code/readme.md deleted file mode 100644 index c0ef2694..00000000 --- a/src/bmm/sub-modules/claude-code/readme.md +++ /dev/null @@ -1,87 +0,0 @@ -# BMM Claude Code Sub-Module - -## Overview - -This sub-module provides Claude Code-specific enhancements for the BMM module, including specialized subagents and content injection for enhanced AI-assisted development workflows. - -## How the Installer Works - -When Claude Code is selected during BMAD installation: - -1. **Module Detection**: The installer checks for `sub-modules/claude-code/` in each selected module -2. **Configuration Loading**: Reads `injections.yaml` to understand what to inject and which subagents are available -3. **User Interaction**: Prompts users to: - - Choose subagent installation (all/selective/none) - - Select installation location (project `.claude/agents/` or user `~/.claude/agents/`) -4. **Selective Installation**: Based on user choices: - - Copies only selected subagents to Claude's agents directory - - Injects only relevant content at defined injection points - - Skips injection if no subagents selected - -## Subagent Directory - -### Product Management Subagents - -| Subagent | Purpose | Used By | Recommended For | -| ------------------------ | ---------------------------------------- | ---------- | --------------------------------------------- | -| **market-researcher** | Competitive analysis and market insights | PM Agent | PRD creation (`*create-prd`), market analysis | -| **requirements-analyst** | Extract and validate requirements | PM Agent | Requirements sections, user story creation | -| **technical-evaluator** | Technology stack evaluation | PM Agent | Technical assumptions in PRDs | -| **epic-optimizer** | Story breakdown and sizing | PM Agent | Epic details, story sequencing | -| **document-reviewer** | Quality checks and validation | PM/Analyst | Final document review before delivery | - -### Architecture and Documentation Subagents - -| Subagent | Purpose | Used By | Recommended For | -| -------------------------- | ----------------------------------------- | --------- | ---------------------------------------------- | -| **codebase-analyzer** | Project structure and tech stack analysis | Architect | `*generate-context-docs` (doc-proj task) | -| **dependency-mapper** | Module and package dependency analysis | Architect | Brownfield documentation, refactoring planning | -| **pattern-detector** | Identify patterns and conventions | Architect | Understanding existing codebases | -| **tech-debt-auditor** | Assess technical debt and risks | Architect | Brownfield architecture, migration planning | -| **api-documenter** | Document APIs and integrations | Architect | API documentation, service boundaries | -| **test-coverage-analyzer** | Analyze test suites and coverage | Architect | Test strategy, quality assessment | - -## Adding New Subagents - -1. **Create the subagent file** in `sub-agents/`: - - ```markdown - --- - name: your-subagent-name - description: Brief description. use PROACTIVELY when [specific scenario] - tools: Read, Write, Grep # Specify required tools - check claude-code docs to see what tools are available, or just leave blank to allow all - --- - - [System prompt describing the subagent's role and expertise] - ``` - -2. **Add to injections.yaml**: - - Add filename to `subagents.files` list - - Update relevant agent injection content if needed - -3. **Create injection point** (if new agent): - ```xml - - ``` - -## Injection Points - -All injection points in this module are documented in: `{project-root}{output_folder}/injection-points.md` - ensure this is kept up to date. - -Injection points allow IDE-specific content to be added during installation without modifying source files. They use HTML comment syntax and are replaced during the installation process based on user selections. - -## Configuration Files - -- **injections.yaml**: Defines what content to inject and where -- **config.yaml**: Additional Claude Code configuration (if needed) -- **sub-agents/**: Directory containing all subagent definitions - -## Testing - -To test subagent installation: - -1. Run the BMAD installer -2. Select BMM module and Claude Code -3. Verify prompts appear for subagent selection -4. Check `.claude/agents/` for installed subagents -5. Verify injection points are replaced in `.claude/commands/_bmad/` and the various tasks and templates under `_bmad/...` diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv b/src/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv new file mode 100644 index 00000000..2e44a896 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv @@ -0,0 +1,13 @@ +domain,signals,complexity,key_concerns,required_knowledge,suggested_workflow,web_searches,special_sections +healthcare,"medical,diagnostic,clinical,FDA,patient,treatment,HIPAA,therapy,pharma,drug",high,"FDA approval;Clinical validation;HIPAA compliance;Patient safety;Medical device classification;Liability","Regulatory pathways;Clinical trial design;Medical standards;Data privacy;Integration requirements","domain-research","FDA software medical device guidance {date};HIPAA compliance software requirements;Medical software standards {date};Clinical validation software","clinical_requirements;regulatory_pathway;validation_methodology;safety_measures" +fintech,"payment,banking,trading,investment,crypto,wallet,transaction,KYC,AML,funds,fintech",high,"Regional compliance;Security standards;Audit requirements;Fraud prevention;Data protection","KYC/AML requirements;PCI DSS;Open banking;Regional laws (US/EU/APAC);Crypto regulations","domain-research","fintech regulations {date};payment processing compliance {date};open banking API standards;cryptocurrency regulations {date}","compliance_matrix;security_architecture;audit_requirements;fraud_prevention" +govtech,"government,federal,civic,public sector,citizen,municipal,voting",high,"Procurement rules;Security clearance;Accessibility (508);FedRAMP;Privacy;Transparency","Government procurement;Security frameworks;Accessibility standards;Privacy laws;Open data requirements","domain-research","government software procurement {date};FedRAMP compliance requirements;section 508 accessibility;government security standards","procurement_compliance;security_clearance;accessibility_standards;transparency_requirements" +edtech,"education,learning,student,teacher,curriculum,assessment,K-12,university,LMS",medium,"Student privacy (COPPA/FERPA);Accessibility;Content moderation;Age verification;Curriculum standards","Educational privacy laws;Learning standards;Accessibility requirements;Content guidelines;Assessment validity","domain-research","educational software privacy {date};COPPA FERPA compliance;WCAG education requirements;learning management standards","privacy_compliance;content_guidelines;accessibility_features;curriculum_alignment" +aerospace,"aircraft,spacecraft,aviation,drone,satellite,propulsion,flight,radar,navigation",high,"Safety certification;DO-178C compliance;Performance validation;Simulation accuracy;Export controls","Aviation standards;Safety analysis;Simulation validation;ITAR/export controls;Performance requirements","domain-research + technical-model","DO-178C software certification;aerospace simulation standards {date};ITAR export controls software;aviation safety requirements","safety_certification;simulation_validation;performance_requirements;export_compliance" +automotive,"vehicle,car,autonomous,ADAS,automotive,driving,EV,charging",high,"Safety standards;ISO 26262;V2X communication;Real-time requirements;Certification","Automotive standards;Functional safety;V2X protocols;Real-time systems;Testing requirements","domain-research","ISO 26262 automotive software;automotive safety standards {date};V2X communication protocols;EV charging standards","safety_standards;functional_safety;communication_protocols;certification_requirements" +scientific,"research,algorithm,simulation,modeling,computational,analysis,data science,ML,AI",medium,"Reproducibility;Validation methodology;Peer review;Performance;Accuracy;Computational resources","Scientific method;Statistical validity;Computational requirements;Domain expertise;Publication standards","technical-model","scientific computing best practices {date};research reproducibility standards;computational modeling validation;peer review software","validation_methodology;accuracy_metrics;reproducibility_plan;computational_requirements" +legaltech,"legal,law,contract,compliance,litigation,patent,attorney,court",high,"Legal ethics;Bar regulations;Data retention;Attorney-client privilege;Court system integration","Legal practice rules;Ethics requirements;Court filing systems;Document standards;Confidentiality","domain-research","legal technology ethics {date};law practice management software requirements;court filing system standards;attorney client privilege technology","ethics_compliance;data_retention;confidentiality_measures;court_integration" +insuretech,"insurance,claims,underwriting,actuarial,policy,risk,premium",high,"Insurance regulations;Actuarial standards;Data privacy;Fraud detection;State compliance","Insurance regulations by state;Actuarial methods;Risk modeling;Claims processing;Regulatory reporting","domain-research","insurance software regulations {date};actuarial standards software;insurance fraud detection;state insurance compliance","regulatory_requirements;risk_modeling;fraud_detection;reporting_compliance" +energy,"energy,utility,grid,solar,wind,power,electricity,oil,gas",high,"Grid compliance;NERC standards;Environmental regulations;Safety requirements;Real-time operations","Energy regulations;Grid standards;Environmental compliance;Safety protocols;SCADA systems","domain-research","energy sector software compliance {date};NERC CIP standards;smart grid requirements;renewable energy software standards","grid_compliance;safety_protocols;environmental_compliance;operational_requirements" +gaming,"game,player,gameplay,level,character,multiplayer,quest",redirect,"REDIRECT TO GAME WORKFLOWS","Game design","game-brief","NA","NA" +general,"",low,"Standard requirements;Basic security;User experience;Performance","General software practices","continue","software development best practices {date}","standard_requirements" \ No newline at end of file diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md b/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md new file mode 100644 index 00000000..755230be --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md @@ -0,0 +1,197 @@ +# BMAD PRD Purpose + +**The PRD is the top of the required funnel that feeds all subsequent product development work in rhw BMad Method.** + +--- + +## What is a BMAD PRD? + +A dual-audience document serving: +1. **Human Product Managers and builders** - Vision, strategy, stakeholder communication +2. **LLM Downstream Consumption** - UX Design → Architecture → Epics → Development AI Agents + +Each successive document becomes more AI-tailored and granular. + +--- + +## Core Philosophy: Information Density + +**High Signal-to-Noise Ratio** + +Every sentence must carry information weight. LLMs consume precise, dense content efficiently. + +**Anti-Patterns (Eliminate These):** +- ❌ "The system will allow users to..." → ✅ "Users can..." +- ❌ "It is important to note that..." → ✅ State the fact directly +- ❌ "In order to..." → ✅ "To..." +- ❌ Conversational filler and padding → ✅ Direct, concise statements + +**Goal:** Maximum information per word. Zero fluff. + +--- + +## The Traceability Chain + +**PRD starts the chain:** +``` +Vision → Success Criteria → User Journeys → Functional Requirements → (future: User Stories) +``` + +**In the PRD, establish:** +- Vision → Success Criteria alignment +- Success Criteria → User Journey coverage +- User Journey → Functional Requirement mapping +- All requirements traceable to user needs + +**Why:** Each downstream artifact (UX, Architecture, Epics, Stories) must trace back to documented user needs and business objectives. This chain ensures we build the right thing. + +--- + +## What Makes Great Functional Requirements? + +### FRs are Capabilities, Not Implementation + +**Good FR:** "Users can reset their password via email link" +**Bad FR:** "System sends JWT via email and validates with database" (implementation leakage) + +**Good FR:** "Dashboard loads in under 2 seconds for 95th percentile" +**Bad FR:** "Fast loading time" (subjective, unmeasurable) + +### SMART Quality Criteria + +**Specific:** Clear, precisely defined capability +**Measurable:** Quantifiable with test criteria +**Attainable:** Realistic within constraints +**Relevant:** Aligns with business objectives +**Traceable:** Links to source (executive summary or user journey) + +### FR Anti-Patterns + +**Subjective Adjectives:** +- ❌ "easy to use", "intuitive", "user-friendly", "fast", "responsive" +- ✅ Use metrics: "completes task in under 3 clicks", "loads in under 2 seconds" + +**Implementation Leakage:** +- ❌ Technology names, specific libraries, implementation details +- ✅ Focus on capability and measurable outcomes + +**Vague Quantifiers:** +- ❌ "multiple users", "several options", "various formats" +- ✅ "up to 100 concurrent users", "3-5 options", "PDF, DOCX, TXT formats" + +**Missing Test Criteria:** +- ❌ "The system shall provide notifications" +- ✅ "The system shall send email notifications within 30 seconds of trigger event" + +--- + +## What Makes Great Non-Functional Requirements? + +### NFRs Must Be Measurable + +**Template:** +``` +"The system shall [metric] [condition] [measurement method]" +``` + +**Examples:** +- ✅ "The system shall respond to API requests in under 200ms for 95th percentile as measured by APM monitoring" +- ✅ "The system shall maintain 99.9% uptime during business hours as measured by cloud provider SLA" +- ✅ "The system shall support 10,000 concurrent users as measured by load testing" + +### NFR Anti-Patterns + +**Unmeasurable Claims:** +- ❌ "The system shall be scalable" → ✅ "The system shall handle 10x load growth through horizontal scaling" +- ❌ "High availability required" → ✅ "99.9% uptime as measured by cloud provider SLA" + +**Missing Context:** +- ❌ "Response time under 1 second" → ✅ "API response time under 1 second for 95th percentile under normal load" + +--- + +## Domain-Specific Requirements + +**Auto-Detect and Enforce Based on Project Context** + +Certain industries have mandatory requirements that must be present: + +- **Healthcare:** HIPAA Privacy & Security Rules, PHI encryption, audit logging, MFA +- **Fintech:** PCI-DSS Level 1, AML/KYC compliance, SOX controls, financial audit trails +- **GovTech:** NIST framework, Section 508 accessibility (WCAG 2.1 AA), FedRAMP, data residency +- **E-Commerce:** PCI-DSS for payments, inventory accuracy, tax calculation by jurisdiction + +**Why:** Missing these requirements in the PRD means they'll be missed in architecture and implementation, creating expensive rework. During PRD creation there is a step to cover this - during validation we want to make sure it was covered. For this purpose steps will utilize a domain-complexity.csv and project-types.csv. + +--- + +## Document Structure (Markdown, Human-Readable) + +### Required Sections +1. **Executive Summary** - Vision, differentiator, target users +2. **Success Criteria** - Measurable outcomes (SMART) +3. **Product Scope** - MVP, Growth, Vision phases +4. **User Journeys** - Comprehensive coverage +5. **Domain Requirements** - Industry-specific compliance (if applicable) +6. **Innovation Analysis** - Competitive differentiation (if applicable) +7. **Project-Type Requirements** - Platform-specific needs +8. **Functional Requirements** - Capability contract (FRs) +9. **Non-Functional Requirements** - Quality attributes (NFRs) + +### Formatting for Dual Consumption + +**For Humans:** +- Clear, professional language +- Logical flow from vision to requirements +- Easy for stakeholders to review and approve + +**For LLMs:** +- ## Level 2 headers for all main sections (enables extraction) +- Consistent structure and patterns +- Precise, testable language +- High information density + +--- + +## Downstream Impact + +**How the PRD Feeds Next Artifacts:** + +**UX Design:** +- User journeys → interaction flows +- FRs → design requirements +- Success criteria → UX metrics + +**Architecture:** +- FRs → system capabilities +- NFRs → architecture decisions +- Domain requirements → compliance architecture +- Project-type requirements → platform choices + +**Epics & Stories (created after architecture):** +- FRs → user stories (1 FR could map to 1-3 stories potentially) +- Acceptance criteria → story acceptance tests +- Priority → sprint sequencing +- Traceability → stories map back to vision + +**Development AI Agents:** +- Precise requirements → implementation clarity +- Test criteria → automated test generation +- Domain requirements → compliance enforcement +- Measurable NFRs → performance targets + +--- + +## Summary: What Makes a Great BMAD PRD? + +✅ **High Information Density** - Every sentence carries weight, zero fluff +✅ **Measurable Requirements** - All FRs and NFRs are testable with specific criteria +✅ **Clear Traceability** - Each requirement links to user need and business objective +✅ **Domain Awareness** - Industry-specific requirements auto-detected and included +✅ **Zero Anti-Patterns** - No subjective adjectives, implementation leakage, or vague quantifiers +✅ **Dual Audience Optimized** - Human-readable AND LLM-consumable +✅ **Markdown Format** - Professional, clean, accessible to all stakeholders + +--- + +**Remember:** The PRD is the foundation. Quality here ripples through every subsequent phase. A dense, precise, well-traced PRD makes UX design, architecture, epic breakdown, and AI development dramatically more effective. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv b/src/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv new file mode 100644 index 00000000..6f71c513 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv @@ -0,0 +1,11 @@ +project_type,detection_signals,key_questions,required_sections,skip_sections,web_search_triggers,innovation_signals +api_backend,"API,REST,GraphQL,backend,service,endpoints","Endpoints needed?;Authentication method?;Data formats?;Rate limits?;Versioning?;SDK needed?","endpoint_specs;auth_model;data_schemas;error_codes;rate_limits;api_docs","ux_ui;visual_design;user_journeys","framework best practices;OpenAPI standards","API composition;New protocol" +mobile_app,"iOS,Android,app,mobile,iPhone,iPad","Native or cross-platform?;Offline needed?;Push notifications?;Device features?;Store compliance?","platform_reqs;device_permissions;offline_mode;push_strategy;store_compliance","desktop_features;cli_commands","app store guidelines;platform requirements","Gesture innovation;AR/VR features" +saas_b2b,"SaaS,B2B,platform,dashboard,teams,enterprise","Multi-tenant?;Permission model?;Subscription tiers?;Integrations?;Compliance?","tenant_model;rbac_matrix;subscription_tiers;integration_list;compliance_reqs","cli_interface;mobile_first","compliance requirements;integration guides","Workflow automation;AI agents" +developer_tool,"SDK,library,package,npm,pip,framework","Language support?;Package managers?;IDE integration?;Documentation?;Examples?","language_matrix;installation_methods;api_surface;code_examples;migration_guide","visual_design;store_compliance","package manager best practices;API design patterns","New paradigm;DSL creation" +cli_tool,"CLI,command,terminal,bash,script","Interactive or scriptable?;Output formats?;Config method?;Shell completion?","command_structure;output_formats;config_schema;scripting_support","visual_design;ux_principles;touch_interactions","CLI design patterns;shell integration","Natural language CLI;AI commands" +web_app,"website,webapp,browser,SPA,PWA","SPA or MPA?;Browser support?;SEO needed?;Real-time?;Accessibility?","browser_matrix;responsive_design;performance_targets;seo_strategy;accessibility_level","native_features;cli_commands","web standards;WCAG guidelines","New interaction;WebAssembly use" +game,"game,player,gameplay,level,character","REDIRECT TO USE THE BMad Method Game Module Agent and Workflows - HALT","game-brief;GDD","most_sections","game design patterns","Novel mechanics;Genre mixing" +desktop_app,"desktop,Windows,Mac,Linux,native","Cross-platform?;Auto-update?;System integration?;Offline?","platform_support;system_integration;update_strategy;offline_capabilities","web_seo;mobile_features","desktop guidelines;platform requirements","Desktop AI;System automation" +iot_embedded,"IoT,embedded,device,sensor,hardware","Hardware specs?;Connectivity?;Power constraints?;Security?;OTA updates?","hardware_reqs;connectivity_protocol;power_profile;security_model;update_mechanism","visual_ui;browser_support","IoT standards;protocol specs","Edge AI;New sensors" +blockchain_web3,"blockchain,crypto,DeFi,NFT,smart contract","Chain selection?;Wallet integration?;Gas optimization?;Security audit?","chain_specs;wallet_support;smart_contracts;security_audit;gas_optimization","traditional_auth;centralized_db","blockchain standards;security patterns","Novel tokenomics;DAO structure" \ No newline at end of file diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md new file mode 100644 index 00000000..4b53688d --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md @@ -0,0 +1,191 @@ +--- +name: 'step-01-init' +description: 'Initialize the PRD workflow by detecting continuation state and setting up the document' + +# File References +nextStepFile: './step-02-discovery.md' +continueStepFile: './step-01b-continue.md' +outputFile: '{planning_artifacts}/prd.md' + +# Template Reference +prdTemplate: '../templates/prd-template.md' +--- + +# Step 1: Workflow Initialization + +**Progress: Step 1 of 11** - Next: Project Discovery + +## STEP GOAL: + +Initialize the PRD workflow by detecting continuation state, discovering input documents, and setting up the document structure for collaborative product requirement discovery. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a product-focused PM facilitator collaborating with an expert peer +- ✅ If you already have been given a name, communication_style and persona, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring structured thinking and facilitation skills, while the user brings domain expertise and product vision + +### Step-Specific Rules: + +- 🎯 Focus only on initialization and setup - no content generation yet +- 🚫 FORBIDDEN to look ahead to future steps or assume knowledge from them +- 💬 Approach: Systematic setup with clear reporting to user +- 🚪 Detect existing workflow state and handle continuation properly + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis of current state before taking any action +- 💾 Initialize document structure and update frontmatter appropriately +- Update frontmatter: add this step name to the end of the steps completed array (it should be the first entry in the steps array since this is step 1) +- 🚫 FORBIDDEN to load next step until user selects 'C' (Continue) + +## CONTEXT BOUNDARIES: + +- Available context: Variables from workflow.md are available in memory +- Focus: Workflow initialization and document setup only +- Limits: Don't assume knowledge from other steps or create content yet +- Dependencies: Configuration loaded from workflow.md initialization + +## Sequence of Instructions (Do not deviate, skip, or optimize) + +### 1. Check for Existing Workflow State + +First, check if the output document already exists: + +**Workflow State Detection:** + +- Look for file at `{outputFile}` +- If exists, read the complete file including frontmatter +- If not exists, this is a fresh workflow + +### 2. Handle Continuation (If Document Exists) + +If the document exists and has frontmatter with `stepsCompleted` BUT `step-11-complete` is NOT in the list, follow the Continuation Protocol since the document is incomplete: + +**Continuation Protocol:** + +- **STOP immediately** and load `{continueStepFile}` +- Do not proceed with any initialization tasks +- Let step-01b handle all continuation logic +- This is an auto-proceed situation - no user choice needed + +### 3. Fresh Workflow Setup (If No Document) + +If no document exists or no `stepsCompleted` in frontmatter: + +#### A. Input Document Discovery + +Discover and load context documents using smart discovery. Documents can be in the following locations: +- {planning_artifacts}/** +- {output_folder}/** +- {product_knowledge}/** +- docs/** + +Also - when searching - documents can be a single markdown file, or a folder with an index and multiple files. For Example, if searching for `*foo*.md` and not found, also search for a folder called *foo*/index.md (which indicates sharded content) + +Try to discover the following: +- Product Brief (`*brief*.md`) +- Research Documents (`/*research*.md`) +- Project Documentation (generally multiple documents might be found for this in the `{product_knowledge}` or `docs` folder.) +- Project Context (`**/project-context.md`) + +Confirm what you have found with the user, along with asking if the user wants to provide anything else. Only after this confirmation will you proceed to follow the loading rules + +**Loading Rules:** + +- Load ALL discovered files completely that the user confirmed or provided (no offset/limit) +- If there is a project context, whatever is relevant should try to be biased in the remainder of this whole workflow process +- For sharded folders, load ALL files to get complete picture, using the index first to potentially know the potential of each document +- index.md is a guide to what's relevant whenever available +- Track all successfully loaded files in frontmatter `inputDocuments` array + +#### B. Create Initial Document + +**Document Setup:** + +- Copy the template from `{prdTemplate}` to `{outputFile}` +- Initialize frontmatter with proper structure including inputDocuments array. + +#### C. Present Initialization Results + +**Setup Report to User:** + +"Welcome {{user_name}}! I've set up your PRD workspace for {{project_name}}. + +**Document Setup:** + +- Created: `{outputFile}` from template +- Initialized frontmatter with workflow state + +**Input Documents Discovered:** + +- Product briefs: {{briefCount}} files {if briefCount > 0}✓ loaded{else}(none found){/if} +- Research: {{researchCount}} files {if researchCount > 0}✓ loaded{else}(none found){/if} +- Brainstorming: {{brainstormingCount}} files {if brainstormingCount > 0}✓ loaded{else}(none found){/if} +- Project docs: {{projectDocsCount}} files {if projectDocsCount > 0}✓ loaded (brownfield project){else}(none found - greenfield project){/if} + +**Files loaded:** {list of specific file names or "No additional documents found"} + +{if projectDocsCount > 0} +📋 **Note:** This is a **brownfield project**. Your existing project documentation has been loaded. In the next step, I'll ask specifically about what new features or changes you want to add to your existing system. +{/if} + +Do you have any other documents you'd like me to include, or shall we continue to the next step?" + +### 4. Present MENU OPTIONS + +Display menu after setup report: + +"[C] Continue - Save this and move to Project Discovery (Step 2 of 11)" + +#### Menu Handling Logic: + +- IF C: Update output file frontmatter, adding this step name to the end of the list of stepsCompleted, then read fully and follow: {nextStepFile} +- IF user provides additional files: Load them, update inputDocuments and documentCounts, redisplay report +- IF user asks questions: Answer and redisplay menu + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' + +## CRITICAL STEP COMPLETION NOTE + +ONLY WHEN [C continue option] is selected and [frontmatter properly updated with this step added to stepsCompleted and documentCounts], will you then read fully and follow: `{nextStepFile}` to begin project discovery. + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Existing workflow detected and properly handed off to step-01b +- Fresh workflow initialized with template and proper frontmatter +- Input documents discovered and loaded using sharded-first logic +- All discovered files tracked in frontmatter `inputDocuments` +- User clearly informed of brownfield vs greenfield status +- Menu presented and user input handled correctly +- Frontmatter updated with this step name added to stepsCompleted before proceeding + +### ❌ SYSTEM FAILURE: + +- Proceeding with fresh initialization when existing workflow exists +- Not updating frontmatter with discovered input documents +- **Not storing document counts in frontmatter** +- Creating document without proper template structure +- Not checking sharded folders first before whole files +- Not reporting discovered documents to user clearly +- Proceeding without user selecting 'C' (Continue) + +**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md new file mode 100644 index 00000000..4f9198af --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md @@ -0,0 +1,153 @@ +--- +name: 'step-01b-continue' +description: 'Resume an interrupted PRD workflow from the last completed step' + +# File References +outputFile: '{planning_artifacts}/prd.md' +--- + +# Step 1B: Workflow Continuation + +## STEP GOAL: + +Resume the PRD workflow from where it was left off, ensuring smooth continuation with full context restoration. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a product-focused PM facilitator collaborating with an expert peer +- ✅ We engage in collaborative dialogue, not command-response +- ✅ Resume workflow from exact point where it was interrupted + +### Step-Specific Rules: + +- 💬 FOCUS on understanding where we left off and continuing appropriately +- 🚫 FORBIDDEN to modify content completed in previous steps +- 📖 Only reload documents that were already tracked in `inputDocuments` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis of current state before taking action +- Update frontmatter: add this step name to the end of the steps completed array +- 📖 Only load documents that were already tracked in `inputDocuments` +- 🚫 FORBIDDEN to discover new input documents during continuation + +## CONTEXT BOUNDARIES: + +- Available context: Current document and frontmatter are already loaded +- Focus: Workflow state analysis and continuation logic only +- Limits: Don't assume knowledge beyond what's in the document +- Dependencies: Existing workflow state from previous session + +## Sequence of Instructions (Do not deviate, skip, or optimize) + +### 1. Analyze Current State + +**State Assessment:** +Review the frontmatter to understand: + +- `stepsCompleted`: Array of completed step filenames +- Last element of `stepsCompleted` array: The most recently completed step +- `inputDocuments`: What context was already loaded +- All other frontmatter variables + +### 2. Restore Context Documents + +**Context Reloading:** + +- For each document in `inputDocuments`, load the complete file +- This ensures you have full context for continuation +- Don't discover new documents - only reload what was previously processed + +### 3. Determine Next Step + +**Simplified Next Step Logic:** +1. Get the last element from the `stepsCompleted` array (this is the filename of the last completed step, e.g., "step-03-success.md") +2. Load that step file and read its frontmatter +3. Extract the `nextStepFile` value from the frontmatter +4. That's the next step to load! + +**Example:** +- If `stepsCompleted = ["step-01-init.md", "step-02-discovery.md", "step-03-success.md"]` +- Last element is `"step-03-success.md"` +- Load `step-03-success.md`, read its frontmatter +- Find `nextStepFile: './step-04-journeys.md'` +- Next step to load is `./step-04-journeys.md` + +### 4. Handle Workflow Completion + +**If `stepsCompleted` array contains `"step-11-complete.md"`:** +"Great news! It looks like we've already completed the PRD workflow for {{project_name}}. + +The final document is ready at `{outputFile}` with all sections completed. + +Would you like me to: + +- Review the completed PRD with you +- Suggest next workflow steps (like architecture or epic creation) +- Start a new PRD revision + +What would be most helpful?" + +### 5. Present Current Progress + +**If workflow not complete:** +"Welcome back {{user_name}}! I'm resuming our PRD collaboration for {{project_name}}. + +**Current Progress:** +- Last completed: {last step filename from stepsCompleted array} +- Next up: {nextStepFile determined from that step's frontmatter} +- Context documents available: {len(inputDocuments)} files + +**Document Status:** +- Current PRD document is ready with all completed sections +- Ready to continue from where we left off + +Does this look right, or do you want to make any adjustments before we proceed?" + +### 6. Present MENU OPTIONS + +Display: "**Select an Option:** [C] Continue to {next step name}" + +#### Menu Handling Logic: + +- IF C: Read fully and follow the {nextStepFile} determined in step 3 +- IF Any other comments or queries: respond and redisplay menu + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' + +## CRITICAL STEP COMPLETION NOTE + +ONLY WHEN [C continue option] is selected and [current state confirmed], will you then read fully and follow: {nextStepFile} to resume the workflow. + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- All previous input documents successfully reloaded +- Current workflow state accurately analyzed and presented +- User confirms understanding of progress before continuation +- Correct next step identified and prepared for loading + +### ❌ SYSTEM FAILURE: + +- Discovering new input documents instead of reloading existing ones +- Modifying content from already completed steps +- Failing to extract nextStepFile from the last completed step's frontmatter +- Proceeding without user confirmation of current state + +**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md new file mode 100644 index 00000000..4829a4d3 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md @@ -0,0 +1,224 @@ +--- +name: 'step-02-discovery' +description: 'Discover project type, domain, and context through collaborative dialogue' + +# File References +nextStepFile: './step-03-success.md' +outputFile: '{planning_artifacts}/prd.md' + +# Data Files +projectTypesCSV: '../data/project-types.csv' +domainComplexityCSV: '../data/domain-complexity.csv' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 2: Project Discovery + +**Progress: Step 2 of 13** - Next: Product Vision + +## STEP GOAL: + +Discover and classify the project - understand what type of product this is, what domain it operates in, and the project context (greenfield vs brownfield). + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a product-focused PM facilitator collaborating with an expert peer +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring structured thinking and facilitation skills, while the user brings domain expertise and product vision + +### Step-Specific Rules: + +- 🎯 Focus on classification and understanding - no content generation yet +- 🚫 FORBIDDEN to generate executive summary or vision statements (that's next steps) +- 💬 APPROACH: Natural conversation to understand the project +- 🎯 LOAD classification data BEFORE starting discovery conversation + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- ⚠️ Present A/P/C menu after classification complete +- 💾 ONLY save classification to frontmatter when user chooses C (Continue) +- 📖 Update frontmatter, adding this step to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + +## CONTEXT BOUNDARIES: + +- Current document and frontmatter from step 1 are available +- Input documents already loaded are in memory (product briefs, research, brainstorming, project docs) +- **Document counts available in frontmatter `documentCounts`** +- Classification CSV data will be loaded in this step only +- No executive summary or vision content yet (that's steps 2b and 2c) + +## YOUR TASK: + +Discover and classify the project through natural conversation: +- What type of product is this? (web app, API, mobile, etc.) +- What domain does it operate in? (healthcare, fintech, e-commerce, etc.) +- What's the project context? (greenfield new product vs brownfield existing system) +- How complex is this domain? (low, medium, high) + +## DISCOVERY SEQUENCE: + +### 1. Check Document State + +Read the frontmatter from `{outputFile}` to get document counts: +- `briefCount` - Product briefs available +- `researchCount` - Research documents available +- `brainstormingCount` - Brainstorming docs available +- `projectDocsCount` - Existing project documentation + +**Announce your understanding:** + +"From step 1, I have loaded: +- Product briefs: {{briefCount}} +- Research: {{researchCount}} +- Brainstorming: {{brainstormingCount}} +- Project docs: {{projectDocsCount}} + +{{if projectDocsCount > 0}}This is a brownfield project - I'll focus on understanding what you want to add or change.{{else}}This is a greenfield project - I'll help you define the full product vision.{{/if}}" + +### 2. Load Classification Data + +**Attempt subprocess data lookup:** + +**Project Type Lookup:** +"Your task: Lookup data in {projectTypesCSV} + +**Search criteria:** +- Find row where project_type matches {{detectedProjectType}} + +**Return format:** +Return ONLY the matching row as a YAML-formatted object with these fields: +project_type, detection_signals + +**Do NOT return the entire CSV - only the matching row.**" + +**Domain Complexity Lookup:** +"Your task: Lookup data in {domainComplexityCSV} + +**Search criteria:** +- Find row where domain matches {{detectedDomain}} + +**Return format:** +Return ONLY the matching row as a YAML-formatted object with these fields: +domain, complexity, typical_concerns, compliance_requirements + +**Do NOT return the entire CSV - only the matching row.**" + +**Graceful degradation (if Task tool unavailable):** +- Load the CSV files directly +- Find the matching rows manually +- Extract required fields +- Keep in memory for intelligent classification + +### 3. Begin Discovery Conversation + +**Start with what you know:** + +If the user has a product brief or project docs, acknowledge them and share your understanding. Then ask clarifying questions to deepen your understanding. + +If this is a greenfield project with no docs, start with open-ended discovery: +- What problem does this solve? +- Who's it for? +- What excites you about building this? + +**Listen for classification signals:** + +As the user describes their product, match against: +- **Project type signals** (API, mobile, SaaS, etc.) +- **Domain signals** (healthcare, fintech, education, etc.) +- **Complexity indicators** (regulated industries, novel technology, etc.) + +### 4. Confirm Classification + +Once you have enough understanding, share your classification: + +"I'm hearing this as: +- **Project Type:** {{detectedType}} +- **Domain:** {{detectedDomain}} +- **Complexity:** {{complexityLevel}} + +Does this sound right to you?" + +Let the user confirm or refine your classification. + +### 5. Save Classification to Frontmatter + +When user selects 'C', update frontmatter with classification: +```yaml +classification: + projectType: {{projectType}} + domain: {{domain}} + complexity: {{complexityLevel}} + projectContext: {{greenfield|brownfield}} +``` + +### N. Present MENU OPTIONS + +Present the project classification for review, then display menu: + +"Based on our conversation, I've discovered and classified your project. + +**Here's the classification:** + +**Project Type:** {{detectedType}} +**Domain:** {{detectedDomain}} +**Complexity:** {{complexityLevel}} +**Project Context:** {{greenfield|brownfield}} + +**What would you like to do?**" + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Product Vision (Step 2b of 13)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the current classification, process the enhanced insights that come back, ask user if they accept the improvements, if yes update classification then redisplay menu, if no keep original classification then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the current classification, process the collaborative insights, ask user if they accept the changes, if yes update classification then redisplay menu, if no keep original classification then redisplay menu +- IF C: Save classification to {outputFile} frontmatter, add this step name to the end of stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## CRITICAL STEP COMPLETION NOTE + +ONLY WHEN [C continue option] is selected and [classification saved to frontmatter], will you then read fully and follow: `{nextStepFile}` to explore product vision. + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Document state checked and announced to user +- Classification data loaded and used intelligently +- Natural conversation to understand project type, domain, complexity +- Classification validated with user before saving +- Frontmatter updated with classification when C selected +- User's existing documents acknowledged and built upon + +### ❌ SYSTEM FAILURE: + +- Not reading documentCounts from frontmatter first +- Skipping classification data loading +- Generating executive summary or vision content (that's later steps!) +- Not validating classification with user +- Being prescriptive instead of having natural conversation +- Proceeding without user selecting 'C' + +**Master Rule:** This is classification and understanding only. No content generation yet. Build on what the user already has. Have natural conversations, don't follow scripts. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md new file mode 100644 index 00000000..9a3c5e34 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md @@ -0,0 +1,226 @@ +--- +name: 'step-03-success' +description: 'Define comprehensive success criteria covering user, business, and technical success' + +# File References +nextStepFile: './step-04-journeys.md' +outputFile: '{planning_artifacts}/prd.md' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 3: Success Criteria Definition + +**Progress: Step 3 of 11** - Next: User Journey Mapping + +## MANDATORY EXECUTION RULES (READ FIRST): + +- 🛑 NEVER generate content without user input + +- 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- 💬 FOCUS on defining what winning looks like for this product +- 🎯 COLLABORATIVE discovery, not assumption-based goal setting +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- ⚠️ Present A/P/C menu after generating success criteria content +- 💾 ONLY save when user chooses C (Continue) +- 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + +## CONTEXT BOUNDARIES: + +- Current document and frontmatter from previous steps are available +- Executive Summary and Project Classification already exist in document +- Input documents from step-01 are available (product briefs, research, brainstorming) +- No additional data files needed for this step +- Focus on measurable, specific success criteria +- LEVERAGE existing input documents to inform success criteria + +## YOUR TASK: + +Define comprehensive success criteria that cover user success, business success, and technical success, using input documents as a foundation while allowing user refinement. + +## SUCCESS DISCOVERY SEQUENCE: + +### 1. Begin Success Definition Conversation + +**Check Input Documents for Success Indicators:** +Analyze product brief, research, and brainstorming documents for success criteria already mentioned. + +**If Input Documents Contain Success Criteria:** +Guide user to refine existing success criteria: +- Acknowledge what's already documented in their materials +- Extract key success themes from brief, research, and brainstorming +- Help user identify gaps and areas for expansion +- Probe for specific, measurable outcomes: When do users feel delighted/relieved/empowered? +- Ask about emotional success moments and completion scenarios +- Explore what "worth it" means beyond what's already captured + +**If No Success Criteria in Input Documents:** +Start with user-centered success exploration: +- Guide conversation toward defining what "worth it" means for users +- Ask about the moment users realize their problem is solved +- Explore specific user outcomes and emotional states +- Identify success "aha!" moments and completion scenarios +- Focus on user experience of success first + +### 2. Explore User Success Metrics + +Listen for specific user outcomes and help make them measurable: + +- Guide from vague to specific: NOT "users are happy" → "users complete [key action] within [timeframe]" +- Ask about emotional success: "When do they feel delighted/relieved/empowered?" +- Identify success moments: "What's the 'aha!' moment?" +- Define completion scenarios: "What does 'done' look like for the user?" + +### 3. Define Business Success + +Transition to business metrics: +- Guide conversation to business perspective on success +- Explore timelines: What does 3-month success look like? 12-month success? +- Identify key business metrics: revenue, user growth, engagement, or other measures? +- Ask what specific metric would indicate "this is working" +- Understand business success from their perspective + +### 4. Challenge Vague Metrics + +Push for specificity on business metrics: + +- "10,000 users" → "What kind of users? Doing what?" +- "99.9% uptime" → "What's the real concern - data loss? Failed payments?" +- "Fast" → "How fast, and what specifically needs to be fast?" +- "Good adoption" → "What percentage adoption by when?" + +### 5. Connect to Product Differentiator + +Tie success metrics back to what makes the product special: +- Connect success criteria to the product's unique differentiator +- Ensure metrics reflect the specific value proposition +- Adapt success criteria to domain context: + - Consumer: User love, engagement, retention + - B2B: ROI, efficiency, adoption + - Developer tools: Developer experience, community + - Regulated: Compliance, safety, validation + - GovTech: Government compliance, accessibility, procurement + +### 6. Smart Scope Negotiation + +Guide scope definition through success lens: +- Help user distinguish MVP (must work to be useful) from growth (competitive) and vision (dream) +- Guide conversation through three scope levels: + 1. MVP: What's essential for proving the concept? + 2. Growth: What makes it competitive? + 3. Vision: What's the dream version? +- Challenge scope creep conversationally: Could this wait until after launch? Is this essential for MVP? +- For complex domains: Ensure compliance minimums are included in MVP + +### 7. Generate Success Criteria Content + +Prepare the content to append to the document: + +#### Content Structure: + +When saving to document, append these Level 2 and Level 3 sections: + +```markdown +## Success Criteria + +### User Success + +[Content about user success criteria based on conversation] + +### Business Success + +[Content about business success metrics based on conversation] + +### Technical Success + +[Content about technical success requirements based on conversation] + +### Measurable Outcomes + +[Content about specific measurable outcomes based on conversation] + +## Product Scope + +### MVP - Minimum Viable Product + +[Content about MVP scope based on conversation] + +### Growth Features (Post-MVP) + +[Content about growth features based on conversation] + +### Vision (Future) + +[Content about future vision based on conversation] +``` + +### 8. Present MENU OPTIONS + +Present the success criteria content for user review, then display menu: + +- Show the drafted success criteria and scope definition (using structure from section 7) +- Ask if they'd like to refine further, get other perspectives, or proceed +- Present menu options naturally as part of the conversation + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to User Journey Mapping (Step 4 of 11)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the current success criteria content, process the enhanced success metrics that come back, ask user "Accept these improvements to the success criteria? (y/n)", if yes update content with improvements then redisplay menu, if no keep original content then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the current success criteria, process the collaborative improvements to metrics and scope, ask user "Accept these changes to the success criteria? (y/n)", if yes update content with improvements then redisplay menu, if no keep original content then redisplay menu +- IF C: Append the final content to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## APPEND TO DOCUMENT: + +When user selects 'C', append the content directly to the document using the structure from step 7. + +## SUCCESS METRICS: + +✅ User success criteria clearly identified and made measurable +✅ Business success metrics defined with specific targets +✅ Success criteria connected to product differentiator +✅ Scope properly negotiated (MVP, Growth, Vision) +✅ A/P/C menu presented and handled correctly +✅ Content properly appended to document when C selected + +## FAILURE MODES: + +❌ Accepting vague success metrics without pushing for specificity +❌ Not connecting success criteria back to product differentiator +❌ Missing scope negotiation and leaving it undefined +❌ Generating content without real user input on what success looks like +❌ Not presenting A/P/C menu after content generation +❌ Appending content without user selecting 'C' + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file +❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols + +## DOMAIN CONSIDERATIONS: + +If working in regulated domains (healthcare, fintech, govtech): + +- Include compliance milestones in success criteria +- Add regulatory approval timelines to MVP scope +- Consider audit requirements as technical success metrics + +## NEXT STEP: + +After user selects 'C' and content is saved to document, load `./step-04-journeys.md` to map user journeys. + +Remember: Do NOT proceed to step-04 until user explicitly selects 'C' from the A/P/C menu and content is saved! diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md new file mode 100644 index 00000000..314dab56 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md @@ -0,0 +1,213 @@ +--- +name: 'step-04-journeys' +description: 'Map ALL user types that interact with the system with narrative story-based journeys' + +# File References +nextStepFile: './step-05-domain.md' +outputFile: '{planning_artifacts}/prd.md' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 4: User Journey Mapping + +**Progress: Step 4 of 11** - Next: Domain Requirements + +## MANDATORY EXECUTION RULES (READ FIRST): + +- 🛑 NEVER generate content without user input + +- 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- 💬 FOCUS on mapping ALL user types that interact with the system +- 🎯 CRITICAL: No journey = no functional requirements = product doesn't exist +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- ⚠️ Present A/P/C menu after generating journey content +- 💾 ONLY save when user chooses C (Continue) +- 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + +## CONTEXT BOUNDARIES: + +- Current document and frontmatter from previous steps are available +- Success criteria and scope already defined +- Input documents from step-01 are available (product briefs with user personas) +- Every human interaction with the system needs a journey + +## YOUR TASK: + +Create compelling narrative user journeys that leverage existing personas from product briefs and identify additional user types needed for comprehensive coverage. + +## JOURNEY MAPPING SEQUENCE: + +### 1. Leverage Existing Users & Identify Additional Types + +**Check Input Documents for Existing Personas:** +Analyze product brief, research, and brainstorming documents for user personas already defined. + +**If User Personas Exist in Input Documents:** +Guide user to build on existing personas: +- Acknowledge personas found in their product brief +- Extract key persona details and backstories +- Leverage existing insights about their needs +- Prompt to identify additional user types beyond those documented +- Suggest additional user types based on product context (admins, moderators, support, API consumers, internal ops) +- Ask what additional user types should be considered + +**If No Personas in Input Documents:** +Start with comprehensive user type discovery: +- Guide exploration of ALL people who interact with the system +- Consider beyond primary users: admins, moderators, support staff, API consumers, internal ops +- Ask what user types should be mapped for this specific product +- Ensure comprehensive coverage of all system interactions + +### 2. Create Narrative Story-Based Journeys + +For each user type, create compelling narrative journeys that tell their story: + +#### Narrative Journey Creation Process: + +**If Using Existing Persona from Input Documents:** +Guide narrative journey creation: +- Use persona's existing backstory from brief +- Explore how the product changes their life/situation +- Craft journey narrative: where do we meet them, how does product help them write their next chapter? + +**If Creating New Persona:** +Guide persona creation with story framework: +- Name: realistic name and personality +- Situation: What's happening in their life/work that creates need? +- Goal: What do they desperately want to achieve? +- Obstacle: What's standing in their way? +- Solution: How does the product solve their story? + +**Story-Based Journey Mapping:** + +Guide narrative journey creation using story structure: +- **Opening Scene**: Where/how do we meet them? What's their current pain? +- **Rising Action**: What steps do they take? What do they discover? +- **Climax**: Critical moment where product delivers real value +- **Resolution**: How does their situation improve? What's their new reality? + +Encourage narrative format with specific user details, emotional journey, and clear before/after contrast + +### 3. Guide Journey Exploration + +For each journey, facilitate detailed exploration: +- What happens at each step specifically? +- What could go wrong? What's the recovery path? +- What information do they need to see/hear? +- What's their emotional state at each point? +- Where does this journey succeed or fail? + +### 4. Connect Journeys to Requirements + +After each journey, explicitly state: +- This journey reveals requirements for specific capability areas +- Help user see how different journeys create different feature sets +- Connect journey needs to concrete capabilities (onboarding, dashboards, notifications, etc.) + +### 5. Aim for Comprehensive Coverage + +Guide toward complete journey set: + +- **Primary user** - happy path (core experience) +- **Primary user** - edge case (different goal, error recovery) +- **Secondary user** (admin, moderator, support, etc.) +- **API consumer** (if applicable) + +Ask if additional journeys are needed to cover uncovered user types + +### 6. Generate User Journey Content + +Prepare the content to append to the document: + +#### Content Structure: + +When saving to document, append these Level 2 and Level 3 sections: + +```markdown +## User Journeys + +[All journey narratives based on conversation] + +### Journey Requirements Summary + +[Summary of capabilities revealed by journeys based on conversation] +``` + +### 7. Present MENU OPTIONS + +Present the user journey content for review, then display menu: +- Show the mapped user journeys (using structure from section 6) +- Highlight how each journey reveals different capabilities +- Ask if they'd like to refine further, get other perspectives, or proceed +- Present menu options naturally as part of conversation + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Domain Requirements (Step 5 of 11)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the current journey content, process the enhanced journey insights that come back, ask user "Accept these improvements to the user journeys? (y/n)", if yes update content with improvements then redisplay menu, if no keep original content then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the current journeys, process the collaborative journey improvements and additions, ask user "Accept these changes to the user journeys? (y/n)", if yes update content with improvements then redisplay menu, if no keep original content then redisplay menu +- IF C: Append the final content to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## APPEND TO DOCUMENT: + +When user selects 'C', append the content directly to the document using the structure from step 6. + +## SUCCESS METRICS: + +✅ Existing personas from product briefs leveraged when available +✅ All user types identified (not just primary users) +✅ Rich narrative storytelling for each persona and journey +✅ Complete story-based journey mapping with emotional arc +✅ Journey requirements clearly connected to capabilities needed +✅ Minimum 3-4 compelling narrative journeys covering different user types +✅ A/P/C menu presented and handled correctly +✅ Content properly appended to document when C selected + +## FAILURE MODES: + +❌ Ignoring existing personas from product briefs +❌ Only mapping primary user journeys and missing secondary users +❌ Creating generic journeys without rich persona details and narrative +❌ Missing emotional storytelling elements that make journeys compelling +❌ Missing critical decision points and failure scenarios +❌ Not connecting journeys to required capabilities +❌ Not having enough journey diversity (admin, support, API, etc.) +❌ Not presenting A/P/C menu after content generation +❌ Appending content without user selecting 'C' + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file +❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols + +## JOURNEY TYPES TO ENSURE: + +**Minimum Coverage:** + +1. **Primary User - Success Path**: Core experience journey +2. **Primary User - Edge Case**: Error recovery, alternative goals +3. **Admin/Operations User**: Management, configuration, monitoring +4. **Support/Troubleshooting**: Help, investigation, issue resolution +5. **API/Integration** (if applicable): Developer/technical user journey + +## NEXT STEP: + +After user selects 'C' and content is saved to document, load `./step-05-domain.md`. + +Remember: Do NOT proceed to step-05 until user explicitly selects 'C' from the A/P/C menu and content is saved! diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md new file mode 100644 index 00000000..9539527d --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md @@ -0,0 +1,207 @@ +--- +name: 'step-05-domain' +description: 'Explore domain-specific requirements for complex domains (optional step)' + +# File References +nextStepFile: './step-06-innovation.md' +outputFile: '{planning_artifacts}/prd.md' +domainComplexityCSV: '../data/domain-complexity.csv' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 5: Domain-Specific Requirements (Optional) + +**Progress: Step 5 of 13** - Next: Innovation Focus + +## STEP GOAL: + +For complex domains only that have a mapping in {domainComplexityCSV}, explore domain-specific constraints, compliance requirements, and technical considerations that shape the product. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a product-focused PM facilitator collaborating with an expert peer +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring structured thinking and facilitation skills, while the user brings domain expertise + +### Step-Specific Rules: + +- 🎯 This step is OPTIONAL - only needed for complex domains +- 🚫 SKIP if domain complexity is "low" from step-02 +- 💬 APPROACH: Natural conversation to discover domain-specific needs +- 🎯 Focus on constraints, compliance, and domain patterns + +## EXECUTION PROTOCOLS: + +- 🎯 Check domain complexity from step-02 classification first +- ⚠️ If complexity is "low", offer to skip this step +- ⚠️ Present A/P/C menu after domain requirements defined (or skipped) +- 💾 ONLY save when user chooses C (Continue) +- 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + +## CONTEXT BOUNDARIES: + +- Domain classification from step-02 is available +- If complexity is low, this step may be skipped +- Domain CSV data provides complexity reference +- Focus on domain-specific constraints, not general requirements + +## YOUR TASK: + +For complex domains, explore what makes this domain special: +- **Compliance requirements** - regulations, standards, certifications +- **Technical constraints** - security, privacy, integration requirements +- **Domain patterns** - common patterns, best practices, anti-patterns +- **Risks and mitigations** - what could go wrong, how to prevent it + +## DOMAIN DISCOVERY SEQUENCE: + +### 1. Check Domain Complexity + +**Review classification from step-02:** + +- What's the domain complexity level? (low/medium/high) +- What's the specific domain? (healthcare, fintech, education, etc.) + +**If complexity is LOW:** + +Offer to skip: +"The domain complexity from our discovery is low. We may not need deep domain-specific requirements. Would you like to: +- [C] Skip this step and move to Innovation +- [D] Do domain exploration anyway" + +**If complexity is MEDIUM or HIGH:** + +Proceed with domain exploration. + +### 2. Load Domain Reference Data + +**Attempt subprocess data lookup:** + +"Your task: Lookup data in {domainComplexityCSV} + +**Search criteria:** +- Find row where domain matches {{domainFromStep02}} + +**Return format:** +Return ONLY the matching row as a YAML-formatted object with these fields: +domain, complexity, typical_concerns, compliance_requirements + +**Do NOT return the entire CSV - only the matching row.**" + +**Graceful degradation (if Task tool unavailable):** +- Load the CSV file directly +- Find the matching row manually +- Extract required fields +- Understand typical concerns and compliance requirements + +### 3. Explore Domain-Specific Concerns + +**Start with what you know:** + +Acknowledge the domain and explore what makes it complex: +- What regulations apply? (HIPAA, PCI-DSS, GDPR, SOX, etc.) +- What standards matter? (ISO, NIST, domain-specific standards) +- What certifications are needed? (security, privacy, domain-specific) +- What integrations are required? (EMR systems, payment processors, etc.) + +**Explore technical constraints:** +- Security requirements (encryption, audit logs, access control) +- Privacy requirements (data handling, consent, retention) +- Performance requirements (real-time, batch, latency) +- Availability requirements (uptime, disaster recovery) + +### 4. Document Domain Requirements + +**Structure the requirements around key concerns:** + +```markdown +### Compliance & Regulatory +- [Specific requirements] + +### Technical Constraints +- [Security, privacy, performance needs] + +### Integration Requirements +- [Required systems and data flows] + +### Risk Mitigations +- [Domain-specific risks and how to address them] +``` + +### 5. Validate Completeness + +**Check with the user:** + +"Are there other domain-specific concerns we should consider? For [this domain], what typically gets overlooked?" + +### N. Present MENU OPTIONS + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue - Save and Proceed to Innovation (Step 6 of 13)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask}, and when finished redisplay the menu +- IF P: Read fully and follow: {partyModeWorkflow}, and when finished redisplay the menu +- IF C: Save content to {outputFile}, update frontmatter, then read fully and follow: {nextStepFile} +- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#n-present-menu-options) + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## APPEND TO DOCUMENT + +When user selects 'C', append to `{outputFile}`: + +```markdown +## Domain-Specific Requirements + +{{discovered domain requirements}} +``` + +If step was skipped, append nothing and proceed. + +## CRITICAL STEP COMPLETION NOTE + +ONLY WHEN [C continue option] is selected and [content saved or skipped], will you then read fully and follow: `{nextStepFile}` to explore innovation. + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Domain complexity checked before proceeding +- Offered to skip if complexity is low +- Natural conversation exploring domain concerns +- Compliance, technical, and integration requirements identified +- Domain-specific risks documented with mitigations +- User validated completeness +- Content properly saved (or step skipped) when C selected + +### ❌ SYSTEM FAILURE: + +- Not checking domain complexity first +- Not offering to skip for low-complexity domains +- Missing critical compliance requirements +- Not exploring technical constraints +- Not asking about domain-specific risks +- Being generic instead of domain-specific +- Proceeding without user validation + +**Master Rule:** This step is OPTIONAL for simple domains. For complex domains, focus on compliance, constraints, and domain patterns. Natural conversation, not checklists. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md new file mode 100644 index 00000000..440ccf2d --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md @@ -0,0 +1,226 @@ +--- +name: 'step-06-innovation' +description: 'Detect and explore innovative aspects of the product (optional step)' + +# File References +nextStepFile: './step-07-project-type.md' +outputFile: '{planning_artifacts}/prd.md' + +# Data Files +projectTypesCSV: '../data/project-types.csv' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 6: Innovation Discovery + +**Progress: Step 6 of 11** - Next: Project Type Analysis + +## MANDATORY EXECUTION RULES (READ FIRST): + +- 🛑 NEVER generate content without user input + +- 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- 💬 FOCUS on detecting and exploring innovative aspects of the product +- 🎯 OPTIONAL STEP: Only proceed if innovation signals are detected +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- ⚠️ Present A/P/C menu after generating innovation content +- 💾 ONLY save when user chooses C (Continue) +- 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + +## CONTEXT BOUNDARIES: + +- Current document and frontmatter from previous steps are available +- Project type from step-02 is available for innovation signal matching +- Project-type CSV data will be loaded in this step +- Focus on detecting genuine innovation, not forced creativity + +## OPTIONAL STEP CHECK: + +Before proceeding with this step, scan for innovation signals: + +- Listen for language like "nothing like this exists", "rethinking how X works" +- Check for project-type innovation signals from CSV +- Look for novel approaches or unique combinations +- If no innovation detected, skip this step + +## YOUR TASK: + +Detect and explore innovation patterns in the product, focusing on what makes it truly novel and how to validate the innovative aspects. + +## INNOVATION DISCOVERY SEQUENCE: + +### 1. Load Project-Type Innovation Data + +Load innovation signals specific to this project type: + +- Load `{projectTypesCSV}` completely +- Find the row where `project_type` matches detected type from step-02 +- Extract `innovation_signals` (semicolon-separated list) +- Extract `web_search_triggers` for potential innovation research + +### 2. Listen for Innovation Indicators + +Monitor conversation for both general and project-type-specific innovation signals: + +#### General Innovation Language: + +- "Nothing like this exists" +- "We're rethinking how [X] works" +- "Combining [A] with [B] for the first time" +- "Novel approach to [problem]" +- "No one has done [concept] before" + +#### Project-Type-Specific Signals (from CSV): + +Match user descriptions against innovation_signals for their project_type: + +- **api_backend**: "API composition;New protocol" +- **mobile_app**: "Gesture innovation;AR/VR features" +- **saas_b2b**: "Workflow automation;AI agents" +- **developer_tool**: "New paradigm;DSL creation" + +### 3. Initial Innovation Screening + +Ask targeted innovation discovery questions: +- Guide exploration of what makes the product innovative +- Explore if they're challenging existing assumptions +- Ask about novel combinations of technologies/approaches +- Identify what hasn't been done before +- Understand which aspects feel most innovative + +### 4. Deep Innovation Exploration (If Detected) + +If innovation signals are found, explore deeply: + +#### Innovation Discovery Questions: +- What makes it unique compared to existing solutions? +- What assumption are you challenging? +- How do we validate it works? +- What's the fallback if it doesn't? +- Has anyone tried this before? + +#### Market Context Research: + +If relevant innovation detected, consider web search for context: +Use `web_search_triggers` from project-type CSV: +`[web_search_triggers] {concept} innovations {date}` + +### 5. Generate Innovation Content (If Innovation Detected) + +Prepare the content to append to the document: + +#### Content Structure: + +When saving to document, append these Level 2 and Level 3 sections: + +```markdown +## Innovation & Novel Patterns + +### Detected Innovation Areas + +[Innovation patterns identified based on conversation] + +### Market Context & Competitive Landscape + +[Market context and research based on conversation] + +### Validation Approach + +[Validation methodology based on conversation] + +### Risk Mitigation + +[Innovation risks and fallbacks based on conversation] +``` + +### 6. Present MENU OPTIONS (Only if Innovation Detected) + +Present the innovation content for review, then display menu: +- Show identified innovative aspects (using structure from section 5) +- Highlight differentiation from existing solutions +- Ask if they'd like to refine further, get other perspectives, or proceed +- Present menu options naturally as part of conversation + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Project Type Analysis (Step 7 of 11)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the current innovation content, process the enhanced innovation insights that come back, ask user "Accept these improvements to the innovation analysis? (y/n)", if yes update content with improvements then redisplay menu, if no keep original content then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the current innovation content, process the collaborative innovation exploration and ideation, ask user "Accept these changes to the innovation analysis? (y/n)", if yes update content with improvements then redisplay menu, if no keep original content then redisplay menu +- IF C: Append the final content to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## NO INNOVATION DETECTED: + +If no genuine innovation signals are found after exploration: +- Acknowledge that no clear innovation signals were found +- Note this is fine - many successful products are excellent executions of existing concepts +- Ask if they'd like to try finding innovative angles or proceed + +Display: "**Select:** [A] Advanced Elicitation - Let's try to find innovative angles [C] Continue - Skip innovation section and move to Project Type Analysis (Step 7 of 11)" + +### Menu Handling Logic: +- IF A: Proceed with content generation anyway, then return to menu +- IF C: Skip this step, then read fully and follow: {nextStepFile} + +### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' + +## APPEND TO DOCUMENT: + +When user selects 'C', append the content directly to the document using the structure from step 5. + +## SUCCESS METRICS: + +✅ Innovation signals properly detected from user conversation +✅ Project-type innovation signals used to guide discovery +✅ Genuine innovation explored (not forced creativity) +✅ Validation approach clearly defined for innovative aspects +✅ Risk mitigation strategies identified +✅ A/P/C menu presented and handled correctly +✅ Content properly appended to document when C selected + +## FAILURE MODES: + +❌ Forced innovation when none genuinely exists +❌ Not using project-type innovation signals from CSV +❌ Missing market context research for novel concepts +❌ Not addressing validation approach for innovative features +❌ Creating innovation theater without real innovative aspects +❌ Not presenting A/P/C menu after content generation +❌ Appending content without user selecting 'C' + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file +❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols + +## SKIP CONDITIONS: + +Skip this step and load `{nextStepFile}` if: + +- No innovation signals detected in conversation +- Product is incremental improvement rather than breakthrough +- User confirms innovation exploration is not needed +- Project-type CSV has no innovation signals for this type + +## NEXT STEP: + +After user selects 'C' and content is saved to document (or step is skipped), load `{nextStepFile}`. + +Remember: Do NOT proceed to step-07 until user explicitly selects 'C' from the A/P/C menu (or confirms step skip)! diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md new file mode 100644 index 00000000..c078d6db --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md @@ -0,0 +1,237 @@ +--- +name: 'step-07-project-type' +description: 'Conduct project-type specific discovery using CSV-driven guidance' + +# File References +nextStepFile: './step-08-scoping.md' +outputFile: '{planning_artifacts}/prd.md' + +# Data Files +projectTypesCSV: '../data/project-types.csv' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 7: Project-Type Deep Dive + +**Progress: Step 7 of 11** - Next: Scoping + +## MANDATORY EXECUTION RULES (READ FIRST): + +- 🛑 NEVER generate content without user input + +- 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- 💬 FOCUS on project-type specific requirements and technical considerations +- 🎯 DATA-DRIVEN: Use CSV configuration to guide discovery +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- ⚠️ Present A/P/C menu after generating project-type content +- 💾 ONLY save when user chooses C (Continue) +- 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + +## CONTEXT BOUNDARIES: + +- Current document and frontmatter from previous steps are available +- Project type from step-02 is available for configuration loading +- Project-type CSV data will be loaded in this step +- Focus on technical and functional requirements specific to this project type + +## YOUR TASK: + +Conduct project-type specific discovery using CSV-driven guidance to define technical requirements. + +## PROJECT-TYPE DISCOVERY SEQUENCE: + +### 1. Load Project-Type Configuration Data + +**Attempt subprocess data lookup:** + +"Your task: Lookup data in {projectTypesCSV} + +**Search criteria:** +- Find row where project_type matches {{projectTypeFromStep02}} + +**Return format:** +Return ONLY the matching row as a YAML-formatted object with these fields: +project_type, key_questions, required_sections, skip_sections, innovation_signals + +**Do NOT return the entire CSV - only the matching row.**" + +**Graceful degradation (if Task tool unavailable):** +- Load the CSV file directly +- Find the matching row manually +- Extract required fields: + - `key_questions` (semicolon-separated list of discovery questions) + - `required_sections` (semicolon-separated list of sections to document) + - `skip_sections` (semicolon-separated list of sections to skip) + - `innovation_signals` (already explored in step-6) + +### 2. Conduct Guided Discovery Using Key Questions + +Parse `key_questions` from CSV and explore each: + +#### Question-Based Discovery: + +For each question in `key_questions` from CSV: + +- Ask the user naturally in conversational style +- Listen for their response and ask clarifying follow-ups +- Connect answers to product value proposition + +**Example Flow:** +If key_questions = "Endpoints needed?;Authentication method?;Data formats?;Rate limits?;Versioning?;SDK needed?" + +Ask naturally: + +- "What are the main endpoints your API needs to expose?" +- "How will you handle authentication and authorization?" +- "What data formats will you support for requests and responses?" + +### 3. Document Project-Type Specific Requirements + +Based on user answers to key_questions, synthesize comprehensive requirements: + +#### Requirement Categories: + +Cover the areas indicated by `required_sections` from CSV: + +- Synthesize what was discovered for each required section +- Document specific requirements, constraints, and decisions +- Connect to product differentiator when relevant + +#### Skip Irrelevant Sections: + +Skip areas indicated by `skip_sections` from CSV to avoid wasting time on irrelevant aspects. + +### 4. Generate Dynamic Content Sections + +Parse `required_sections` list from the matched CSV row. For each section name, generate corresponding content: + +#### Common CSV Section Mappings: + +- "endpoint_specs" or "endpoint_specification" → API endpoints documentation +- "auth_model" or "authentication_model" → Authentication approach +- "platform_reqs" or "platform_requirements" → Platform support needs +- "device_permissions" or "device_features" → Device capabilities +- "tenant_model" → Multi-tenancy approach +- "rbac_matrix" or "permission_matrix" → Permission structure + +#### Template Variable Strategy: + +- For sections matching common template variables: generate specific content +- For sections without template matches: include in main project_type_requirements +- Hybrid approach balances template structure with CSV-driven flexibility + +### 5. Generate Project-Type Content + +Prepare the content to append to the document: + +#### Content Structure: + +When saving to document, append these Level 2 and Level 3 sections: + +```markdown +## [Project Type] Specific Requirements + +### Project-Type Overview + +[Project type summary based on conversation] + +### Technical Architecture Considerations + +[Technical architecture requirements based on conversation] + +[Dynamic sections based on CSV and conversation] + +### Implementation Considerations + +[Implementation specific requirements based on conversation] +``` + +### 6. Present MENU OPTIONS + +Present the project-type content for review, then display menu: + +"Based on our conversation and best practices for this product type, I've documented the {project_type}-specific requirements for {{project_name}}. + +**Here's what I'll add to the document:** + +[Show the complete markdown content from section 5] + +**What would you like to do?**" + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Scoping (Step 8 of 11)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the current project-type content, process the enhanced technical insights that come back, ask user "Accept these improvements to the technical requirements? (y/n)", if yes update content with improvements then redisplay menu, if no keep original content then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the current project-type requirements, process the collaborative technical expertise and validation, ask user "Accept these changes to the technical requirements? (y/n)", if yes update content with improvements then redisplay menu, if no keep original content then redisplay menu +- IF C: Append the final content to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## APPEND TO DOCUMENT: + +When user selects 'C', append the content directly to the document using the structure from previous steps. + +## SUCCESS METRICS: + +✅ Project-type configuration loaded and used effectively +✅ All key questions from CSV explored with user input +✅ Required sections generated per CSV configuration +✅ Skip sections properly avoided to save time +✅ Technical requirements connected to product value +✅ A/P/C menu presented and handled correctly +✅ Content properly appended to document when C selected + +## FAILURE MODES: + +❌ Not loading or using project-type CSV configuration +❌ Missing key questions from CSV in discovery process +❌ Not generating required sections per CSV configuration +❌ Documenting sections that should be skipped per CSV +❌ Creating generic content without project-type specificity +❌ Not presenting A/P/C menu after content generation +❌ Appending content without user selecting 'C' + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file +❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols + +## PROJECT-TYPE EXAMPLES: + +**For api_backend:** + +- Focus on endpoints, authentication, data schemas, rate limiting +- Skip visual design and user journey sections +- Generate API specification documentation + +**For mobile_app:** + +- Focus on platform requirements, device permissions, offline mode +- Skip API endpoint documentation unless needed +- Generate mobile-specific technical requirements + +**For saas_b2b:** + +- Focus on multi-tenancy, permissions, integrations +- Skip mobile-first considerations unless relevant +- Generate enterprise-specific requirements + +## NEXT STEP: + +After user selects 'C' and content is saved to document, load `{nextStepFile}` to define project scope. + +Remember: Do NOT proceed to step-08 (Scoping) until user explicitly selects 'C' from the A/P/C menu and content is saved! diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md new file mode 100644 index 00000000..da9230ad --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md @@ -0,0 +1,228 @@ +--- +name: 'step-08-scoping' +description: 'Define MVP boundaries and prioritize features across development phases' + +# File References +nextStepFile: './step-09-functional.md' +outputFile: '{planning_artifacts}/prd.md' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 8: Scoping Exercise - MVP & Future Features + +**Progress: Step 8 of 11** - Next: Functional Requirements + +## MANDATORY EXECUTION RULES (READ FIRST): + +- 🛑 NEVER generate content without user input + +- 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- 💬 FOCUS on strategic scope decisions that keep projects viable +- 🎯 EMPHASIZE lean MVP thinking while preserving long-term vision +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- 📚 Review the complete PRD document built so far +- ⚠️ Present A/P/C menu after generating scoping decisions +- 💾 ONLY save when user chooses C (Continue) +- 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + + +## CONTEXT BOUNDARIES: + +- Complete PRD document built so far is available for review +- User journeys, success criteria, and domain requirements are documented +- Focus on strategic scope decisions, not feature details +- Balance between user value and implementation feasibility + +## YOUR TASK: + +Conduct comprehensive scoping exercise to define MVP boundaries and prioritize features across development phases. + +## SCOPING SEQUENCE: + +### 1. Review Current PRD State + +Analyze everything documented so far: +- Present synthesis of established vision, success criteria, journeys +- Assess domain and innovation focus +- Evaluate scope implications: simple MVP, medium, or complex project +- Ask if initial assessment feels right or if they see it differently + +### 2. Define MVP Strategy + +Facilitate strategic MVP decisions: +- Explore MVP philosophy options: problem-solving, experience, platform, or revenue MVP +- Ask critical questions: + - What's the minimum that would make users say 'this is useful'? + - What would make investors/partners say 'this has potential'? + - What's the fastest path to validated learning? +- Guide toward appropriate MVP approach for their product + +### 3. Scoping Decision Framework + +Use structured decision-making for scope: + +**Must-Have Analysis:** +- Guide identification of absolute MVP necessities +- For each journey and success criterion, ask: + - Without this, does the product fail? + - Can this be manual initially? + - Is this a deal-breaker for early adopters? +- Analyze journeys for MVP essentials + +**Nice-to-Have Analysis:** +- Identify what could be added later: + - Features that enhance but aren't essential + - User types that can be added later + - Advanced functionality that builds on MVP +- Ask what features could be added in versions 2, 3, etc. + +### 4. Progressive Feature Roadmap + +Create phased development approach: +- Guide mapping of features across development phases +- Structure as Phase 1 (MVP), Phase 2 (Growth), Phase 3 (Vision) +- Ensure clear progression and dependencies + +- Core user value delivery +- Essential user journeys +- Basic functionality that works reliably + +**Phase 2: Growth** + +- Additional user types +- Enhanced features +- Scale improvements + +**Phase 3: Expansion** + +- Advanced capabilities +- Platform features +- New markets or use cases + +**Where does your current vision fit in this development sequence?**" + +### 5. Risk-Based Scoping + +Identify and mitigate scoping risks: + +**Technical Risks:** +"Looking at your innovation and domain requirements: + +- What's the most technically challenging aspect? +- Could we simplify the initial implementation? +- What's the riskiest assumption about technology feasibility?" + +**Market Risks:** + +- What's the biggest market risk? +- How does the MVP address this? +- What learning do we need to de-risk this?" + +**Resource Risks:** + +- What if we have fewer resources than planned? +- What's the absolute minimum team size needed? +- Can we launch with a smaller feature set?" + +### 6. Generate Scoping Content + +Prepare comprehensive scoping section: + +#### Content Structure: + +```markdown +## Project Scoping & Phased Development + +### MVP Strategy & Philosophy + +**MVP Approach:** {{chosen_mvp_approach}} +**Resource Requirements:** {{mvp_team_size_and_skills}} + +### MVP Feature Set (Phase 1) + +**Core User Journeys Supported:** +{{essential_journeys_for_mvp}} + +**Must-Have Capabilities:** +{{list_of_essential_mvp_features}} + +### Post-MVP Features + +**Phase 2 (Post-MVP):** +{{planned_growth_features}} + +**Phase 3 (Expansion):** +{{planned_expansion_features}} + +### Risk Mitigation Strategy + +**Technical Risks:** {{mitigation_approach}} +**Market Risks:** {{validation_approach}} +**Resource Risks:** {{contingency_approach}} +``` + +### 7. Present MENU OPTIONS + +Present the scoping decisions for review, then display menu: +- Show strategic scoping plan (using structure from step 6) +- Highlight MVP boundaries and phased roadmap +- Ask if they'd like to refine further, get other perspectives, or proceed +- Present menu options naturally as part of conversation + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Functional Requirements (Step 9 of 11)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the current scoping analysis, process the enhanced insights that come back, ask user if they accept the improvements, if yes update content then redisplay menu, if no keep original content then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the scoping context, process the collaborative insights on MVP and roadmap decisions, ask user if they accept the changes, if yes update content then redisplay menu, if no keep original content then redisplay menu +- IF C: Append the final content to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## APPEND TO DOCUMENT: + +When user selects 'C', append the content directly to the document using the structure from step 6. + +## SUCCESS METRICS: + +✅ Complete PRD document analyzed for scope implications +✅ Strategic MVP approach defined and justified +✅ Clear MVP feature boundaries established +✅ Phased development roadmap created +✅ Key risks identified and mitigation strategies defined +✅ User explicitly agrees to scope decisions +✅ A/P/C menu presented and handled correctly +✅ Content properly appended to document when C selected + +## FAILURE MODES: + +❌ Not analyzing the complete PRD before making scoping decisions +❌ Making scope decisions without strategic rationale +❌ Not getting explicit user agreement on MVP boundaries +❌ Missing critical risk analysis +❌ Not creating clear phased development approach +❌ Not presenting A/P/C menu after content generation + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file +❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols + +## NEXT STEP: + +After user selects 'C' and content is saved to document, load {nextStepFile}. + +Remember: Do NOT proceed to step-09 until user explicitly selects 'C' from the A/P/C menu and content is saved! diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md new file mode 100644 index 00000000..d689ebf3 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md @@ -0,0 +1,231 @@ +--- +name: 'step-09-functional' +description: 'Synthesize all discovery into comprehensive functional requirements' + +# File References +nextStepFile: './step-10-nonfunctional.md' +outputFile: '{planning_artifacts}/prd.md' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 9: Functional Requirements Synthesis + +**Progress: Step 9 of 11** - Next: Non-Functional Requirements + +## MANDATORY EXECUTION RULES (READ FIRST): + +- 🛑 NEVER generate content without user input + +- 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- 💬 FOCUS on creating comprehensive capability inventory for the product +- 🎯 CRITICAL: This is THE CAPABILITY CONTRACT for all downstream work +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- ⚠️ Present A/P/C menu after generating functional requirements +- 💾 ONLY save when user chooses C (Continue) +- 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + + +## CONTEXT BOUNDARIES: + +- Current document and frontmatter from previous steps are available +- ALL previous content (executive summary, success criteria, journeys, domain, innovation, project-type) must be referenced +- No additional data files needed for this step +- Focus on capabilities, not implementation details + +## CRITICAL IMPORTANCE: + +**This section defines THE CAPABILITY CONTRACT for the entire product:** + +- UX designers will ONLY design what's listed here +- Architects will ONLY support what's listed here +- Epic breakdown will ONLY implement what's listed here +- If a capability is missing from FRs, it will NOT exist in the final product + +## FUNCTIONAL REQUIREMENTS SYNTHESIS SEQUENCE: + +### 1. Understand FR Purpose and Usage + +Start by explaining the critical role of functional requirements: + +**Purpose:** +FRs define WHAT capabilities the product must have. They are the complete inventory of user-facing and system capabilities that deliver the product vision. + +**Critical Properties:** +✅ Each FR is a testable capability +✅ Each FR is implementation-agnostic (could be built many ways) +✅ Each FR specifies WHO and WHAT, not HOW +✅ No UI details, no performance numbers, no technology choices +✅ Comprehensive coverage of capability areas + +**How They Will Be Used:** + +1. UX Designer reads FRs → designs interactions for each capability +2. Architect reads FRs → designs systems to support each capability +3. PM reads FRs → creates epics and stories to implement each capability + +### 2. Review Existing Content for Capability Extraction + +Systematically review all previous sections to extract capabilities: + +**Extract From:** + +- Executive Summary → Core product differentiator capabilities +- Success Criteria → Success-enabling capabilities +- User Journeys → Journey-revealed capabilities +- Domain Requirements → Compliance and regulatory capabilities +- Innovation Patterns → Innovative feature capabilities +- Project-Type Requirements → Technical capability needs + +### 3. Organize Requirements by Capability Area + +Group FRs by logical capability areas (NOT by technology or layer): + +**Good Grouping Examples:** + +- ✅ "User Management" (not "Authentication System") +- ✅ "Content Discovery" (not "Search Algorithm") +- ✅ "Team Collaboration" (not "WebSocket Infrastructure") + +**Target 5-8 Capability Areas** for typical projects. + +### 4. Generate Comprehensive FR List + +Create complete functional requirements using this format: + +**Format:** + +- FR#: [Actor] can [capability] [context/constraint if needed] +- Number sequentially (FR1, FR2, FR3...) +- Aim for 20-50 FRs for typical projects + +**Altitude Check:** +Each FR should answer "WHAT capability exists?" NOT "HOW it's implemented?" + +**Examples:** + +- ✅ "Users can customize appearance settings" +- ❌ "Users can toggle light/dark theme with 3 font size options stored in LocalStorage" + +### 5. Self-Validation Process + +Before presenting to user, validate the FR list: + +**Completeness Check:** + +1. "Did I cover EVERY capability mentioned in the MVP scope section?" +2. "Did I include domain-specific requirements as FRs?" +3. "Did I cover the project-type specific needs?" +4. "Could a UX designer read ONLY the FRs and know what to design?" +5. "Could an Architect read ONLY the FRs and know what to support?" +6. "Are there any user actions or system behaviors we discussed that have no FR?" + +**Altitude Check:** + +1. "Am I stating capabilities (WHAT) or implementation (HOW)?" +2. "Am I listing acceptance criteria or UI specifics?" (Remove if yes) +3. "Could this FR be implemented 5 different ways?" (Good - means it's not prescriptive) + +**Quality Check:** + +1. "Is each FR clear enough that someone could test whether it exists?" +2. "Is each FR independent (not dependent on reading other FRs to understand)?" +3. "Did I avoid vague terms like 'good', 'fast', 'easy'?" (Use NFRs for quality attributes) + +### 6. Generate Functional Requirements Content + +Prepare the content to append to the document: + +#### Content Structure: + +When saving to document, append these Level 2 and Level 3 sections: + +```markdown +## Functional Requirements + +### [Capability Area Name] + +- FR1: [Specific Actor] can [specific capability] +- FR2: [Specific Actor] can [specific capability] +- FR3: [Specific Actor] can [specific capability] + +### [Another Capability Area] + +- FR4: [Specific Actor] can [specific capability] +- FR5: [Specific Actor] can [specific capability] + +[Continue for all capability areas discovered in conversation] +``` + +### 7. Present MENU OPTIONS + +Present the functional requirements for review, then display menu: +- Show synthesized functional requirements (using structure from step 6) +- Emphasize this is the capability contract for all downstream work +- Highlight that every feature must trace back to these requirements +- Ask if they'd like to refine further, get other perspectives, or proceed +- Present menu options naturally as part of conversation + +**What would you like to do?**" + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Non-Functional Requirements (Step 10 of 11)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the current FR list, process the enhanced capability coverage that comes back, ask user if they accept the additions, if yes update content then redisplay menu, if no keep original content then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the current FR list, process the collaborative capability validation and additions, ask user if they accept the changes, if yes update content then redisplay menu, if no keep original content then redisplay menu +- IF C: Append the final content to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## APPEND TO DOCUMENT: + +When user selects 'C', append the content directly to the document using the structure from step 6. + +## SUCCESS METRICS: + +✅ All previous discovery content synthesized into FRs +✅ FRs organized by capability areas (not technology) +✅ Each FR states WHAT capability exists, not HOW to implement +✅ Comprehensive coverage with 20-50 FRs typical +✅ Altitude validation ensures implementation-agnostic requirements +✅ Completeness check validates coverage of all discussed capabilities +✅ A/P/C menu presented and handled correctly +✅ Content properly appended to document when C selected + +## FAILURE MODES: + +❌ Missing capabilities from previous discovery sections +❌ Organizing FRs by technology instead of capability areas +❌ Including implementation details or UI specifics in FRs +❌ Not achieving comprehensive coverage of discussed capabilities +❌ Using vague terms instead of testable capabilities +❌ Not presenting A/P/C menu after content generation +❌ Appending content without user selecting 'C' + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file +❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols + +## CAPABILITY CONTRACT REMINDER: + +Emphasize to user: "This FR list is now binding. Any feature not listed here will not exist in the final product unless we explicitly add it. This is why it's critical to ensure completeness now." + +## NEXT STEP: + +After user selects 'C' and content is saved to document, load {nextStepFile} to define non-functional requirements. + +Remember: Do NOT proceed to step-10 until user explicitly selects 'C' from the A/P/C menu and content is saved! diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md new file mode 100644 index 00000000..40919635 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md @@ -0,0 +1,242 @@ +--- +name: 'step-10-nonfunctional' +description: 'Define quality attributes that matter for this specific product' + +# File References +nextStepFile: './step-11-polish.md' +outputFile: '{planning_artifacts}/prd.md' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 10: Non-Functional Requirements + +**Progress: Step 10 of 12** - Next: Polish Document + +## MANDATORY EXECUTION RULES (READ FIRST): + +- 🛑 NEVER generate content without user input + +- 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions +- 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding +- ✅ ALWAYS treat this as collaborative discovery between PM peers +- 📋 YOU ARE A FACILITATOR, not a content generator +- 💬 FOCUS on quality attributes that matter for THIS specific product +- 🎯 SELECTIVE: Only document NFRs that actually apply to the product +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- ⚠️ Present A/P/C menu after generating NFR content +- 💾 ONLY save when user chooses C (Continue) +- 📖 Update output file frontmatter, adding this step name to the end of the list of stepsCompleted +- 🚫 FORBIDDEN to load next step until C is selected + + +## CONTEXT BOUNDARIES: + +- Current document and frontmatter from previous steps are available +- Functional requirements already defined and will inform NFRs +- Domain and project-type context will guide which NFRs matter +- Focus on specific, measurable quality criteria + +## YOUR TASK: + +Define non-functional requirements that specify quality attributes for the product, focusing only on what matters for THIS specific product. + +## NON-FUNCTIONAL REQUIREMENTS SEQUENCE: + +### 1. Explain NFR Purpose and Scope + +Start by clarifying what NFRs are and why we're selective: + +**NFR Purpose:** +NFRs define HOW WELL the system must perform, not WHAT it must do. They specify quality attributes like performance, security, scalability, etc. + +**Selective Approach:** +We only document NFRs that matter for THIS product. If a category doesn't apply, we skip it entirely. This prevents requirement bloat and focuses on what's actually important. + +### 2. Assess Product Context for NFR Relevance + +Evaluate which NFR categories matter based on product context: + +**Quick Assessment Questions:** + +- **Performance**: Is there user-facing impact of speed? +- **Security**: Are we handling sensitive data or payments? +- **Scalability**: Do we expect rapid user growth? +- **Accessibility**: Are we serving broad public audiences? +- **Integration**: Do we need to connect with other systems? +- **Reliability**: Would downtime cause significant problems? + +### 3. Explore Relevant NFR Categories + +For each relevant category, conduct targeted discovery: + +#### Performance NFRs (If relevant): + +Explore performance requirements: +- What parts of the system need to be fast for users to be successful? +- Are there specific response time expectations? +- What happens if performance is slower than expected? +- Are there concurrent user scenarios we need to support? + +#### Security NFRs (If relevant): + +Explore security requirements: +- What data needs to be protected? +- Who should have access to what? +- What are the security risks we need to mitigate? +- Are there compliance requirements (GDPR, HIPAA, PCI-DSS)? + +#### Scalability NFRs (If relevant): + +Explore scalability requirements: +- How many users do we expect initially? Long-term? +- Are there seasonal or event-based traffic spikes? +- What happens if we exceed our capacity? +- What growth scenarios should we plan for? + +#### Accessibility NFRs (If relevant): + +Explore accessibility requirements: +- Are we serving users with visual, hearing, or motor impairments? +- Are there legal accessibility requirements (WCAG, Section 508)? +- What accessibility features are most important for our users? + +#### Integration NFRs (If relevant): + +Explore integration requirements: +- What external systems do we need to connect with? +- Are there APIs or data formats we must support? +- How reliable do these integrations need to be? + +### 4. Make NFRs Specific and Measurable + +For each relevant NFR category, ensure criteria are testable: + +**From Vague to Specific:** + +- NOT: "The system should be fast" → "User actions complete within 2 seconds" +- NOT: "The system should be secure" → "All data is encrypted at rest and in transit" +- NOT: "The system should scale" → "System supports 10x user growth with <10% performance degradation" + +### 5. Generate NFR Content (Only Relevant Categories) + +Prepare the content to append to the document: + +#### Content Structure (Dynamic based on relevance): + +When saving to document, append these Level 2 and Level 3 sections (only include sections that are relevant): + +```markdown +## Non-Functional Requirements + +### Performance + +[Performance requirements based on conversation - only include if relevant] + +### Security + +[Security requirements based on conversation - only include if relevant] + +### Scalability + +[Scalability requirements based on conversation - only include if relevant] + +### Accessibility + +[Accessibility requirements based on conversation - only include if relevant] + +### Integration + +[Integration requirements based on conversation - only include if relevant] +``` + +### 6. Present MENU OPTIONS + +Present the non-functional requirements for review, then display menu: +- Show defined NFRs (using structure from step 5) +- Note that only relevant categories were included +- Emphasize NFRs specify how well the system needs to perform +- Ask if they'd like to refine further, get other perspectives, or proceed +- Present menu options naturally as part of conversation + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Polish Document (Step 11 of 12)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the current NFR content, process the enhanced quality attribute insights that come back, ask user if they accept the improvements, if yes update content then redisplay menu, if no keep original content then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the current NFR list, process the collaborative technical validation and additions, ask user if they accept the changes, if yes update content then redisplay menu, if no keep original content then redisplay menu +- IF C: Append the final content to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## APPEND TO DOCUMENT: + +When user selects 'C', append the content directly to the document using the structure from step 5. + +## SUCCESS METRICS: + +✅ Only relevant NFR categories documented (no requirement bloat) +✅ Each NFR is specific and measurable +✅ NFRs connected to actual user needs and business context +✅ Vague requirements converted to testable criteria +✅ Domain-specific compliance requirements included if relevant +✅ A/P/C menu presented and handled correctly +✅ Content properly appended to document when C selected + +## FAILURE MODES: + +❌ Documenting NFR categories that don't apply to the product +❌ Leaving requirements vague and unmeasurable +❌ Not connecting NFRs to actual user or business needs +❌ Missing domain-specific compliance requirements +❌ Creating overly prescriptive technical requirements +❌ Not presenting A/P/C menu after content generation +❌ Appending content without user selecting 'C' + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file +❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols + +## NFR CATEGORY GUIDANCE: + +**Include Performance When:** + +- User-facing response times impact success +- Real-time interactions are critical +- Performance is a competitive differentiator + +**Include Security When:** + +- Handling sensitive user data +- Processing payments or financial information +- Subject to compliance regulations +- Protecting intellectual property + +**Include Scalability When:** + +- Expecting rapid user growth +- Handling variable traffic patterns +- Supporting enterprise-scale usage +- Planning for market expansion + +**Include Accessibility When:** + +- Serving broad public audiences +- Subject to accessibility regulations +- Targeting users with disabilities +- B2B customers with accessibility requirements + +## NEXT STEP: + +After user selects 'C' and content is saved to document, load {nextStepFile} to finalize the PRD and complete the workflow. + +Remember: Do NOT proceed to step-11 until user explicitly selects 'C' from the A/P/C menu and content is saved! diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md new file mode 100644 index 00000000..23200915 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md @@ -0,0 +1,217 @@ +--- +name: 'step-11-polish' +description: 'Optimize and polish the complete PRD document for flow, coherence, and readability' + +# File References +nextStepFile: './step-12-complete.md' +outputFile: '{planning_artifacts}/prd.md' +purposeFile: './data/prd-purpose.md' + +# Task References +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step 11: Document Polish + +**Progress: Step 11 of 12** - Next: Complete PRD + +## MANDATORY EXECUTION RULES (READ FIRST): + +- 🛑 CRITICAL: Load the ENTIRE document before making changes +- 📖 CRITICAL: Read complete step file before taking action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- ✅ This is a POLISH step - optimize existing content +- 📋 IMPROVE flow, coherence, and readability +- 💬 PRESERVE user's voice and intent +- 🎯 MAINTAIN all essential information while improving presentation +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Load complete document first +- 📝 Review for flow and coherence issues +- ✂️ Reduce duplication while preserving essential info +- 📖 Ensure proper ## Level 2 headers throughout +- 💾 Save optimized document +- ⚠️ Present A/P/C menu after polish +- 🚫 DO NOT skip review steps + +## CONTEXT BOUNDARIES: + +- Complete PRD document exists from all previous steps +- Document may have duplication from progressive append +- Sections may not flow smoothly together +- Level 2 headers ensure document can be split if needed +- Focus on readability and coherence + +## YOUR TASK: + +Optimize the complete PRD document for flow, coherence, and professional presentation while preserving all essential information. + +## DOCUMENT POLISH SEQUENCE: + +### 1. Load Context and Document + +**CRITICAL:** Load the PRD purpose document first: + +- Read `{purposeFile}` to understand what makes a great BMAD PRD +- Internalize the philosophy: information density, traceability, measurable requirements +- Keep the dual-audience nature (humans + LLMs) in mind + +**Then Load the PRD Document:** + +- Read `{outputFile}` completely from start to finish +- Understand the full document structure and content +- Identify all sections and their relationships +- Note areas that need attention + +### 2. Document Quality Review + +Review the entire document with PRD purpose principles in mind: + +**Information Density:** +- Are there wordy phrases that can be condensed? +- Is conversational padding present? +- Can sentences be more direct and concise? + +**Flow and Coherence:** +- Do sections transition smoothly? +- Are there jarring topic shifts? +- Does the document tell a cohesive story? +- Is the progression logical for readers? + +**Duplication Detection:** +- Are ideas repeated across sections? +- Is the same information stated multiple times? +- Can redundant content be consolidated? +- Are there contradictory statements? + +**Header Structure:** +- Are all main sections using ## Level 2 headers? +- Is the hierarchy consistent (##, ###, ####)? +- Can sections be easily extracted or referenced? +- Are headers descriptive and clear? + +**Readability:** +- Are sentences clear and concise? +- Is the language consistent throughout? +- Are technical terms used appropriately? +- Would stakeholders find this easy to understand? + +### 3. Optimization Actions + +Make targeted improvements: + +**Improve Flow:** +- Add transition sentences between sections +- Smooth out jarring topic shifts +- Ensure logical progression +- Connect related concepts across sections + +**Reduce Duplication:** +- Consolidate repeated information +- Keep content in the most appropriate section +- Use cross-references instead of repetition +- Remove redundant explanations + +**Enhance Coherence:** +- Ensure consistent terminology throughout +- Align all sections with product differentiator +- Maintain consistent voice and tone +- Verify scope consistency across sections + +**Optimize Headers:** +- Ensure all main sections use ## Level 2 +- Make headers descriptive and action-oriented +- Check that headers follow consistent patterns +- Verify headers support document navigation + +### 4. Preserve Critical Information + +**While optimizing, ensure NOTHING essential is lost:** + +**Must Preserve:** +- All user success criteria +- All functional requirements (capability contract) +- All user journey narratives +- All scope decisions (MVP, Growth, Vision) +- All non-functional requirements +- Product differentiator and vision +- Domain-specific requirements +- Innovation analysis (if present) + +**Can Consolidate:** +- Repeated explanations of the same concept +- Redundant background information +- Multiple versions of similar content +- Overlapping examples + +### 5. Generate Optimized Document + +Create the polished version: + +**Polishing Process:** +1. Start with original document +2. Apply all optimization actions +3. Review to ensure nothing essential was lost +4. Verify improvements enhance readability +5. Prepare optimized version for review + +### 6. Present MENU OPTIONS + +Present the polished document for review, then display menu: +- Show what changed in the polish +- Highlight improvements made (flow, duplication, headers) +- Ask if they'd like to refine further, get other perspectives, or proceed +- Present menu options naturally as part of conversation + +Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Complete PRD (Step 12 of 12)" + +#### Menu Handling Logic: +- IF A: Read fully and follow: {advancedElicitationTask} with the polished document, process the enhanced refinements that come back, ask user "Accept these polish improvements? (y/n)", if yes update content with improvements then redisplay menu, if no keep original polish then redisplay menu +- IF P: Read fully and follow: {partyModeWorkflow} with the polished document, process the collaborative refinements to flow and coherence, ask user "Accept these polish changes? (y/n)", if yes update content with improvements then redisplay menu, if no keep original polish then redisplay menu +- IF C: Save the polished document to {outputFile}, update frontmatter by adding this step name to the end of the stepsCompleted array, then read fully and follow: {nextStepFile} +- IF Any other: help user respond, then redisplay menu + +#### EXECUTION RULES: +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- After other menu items execution, return to this menu + +## APPEND TO DOCUMENT: + +When user selects 'C', replace the entire document content with the polished version. + +## SUCCESS METRICS: + +✅ Complete document loaded and reviewed +✅ Flow and coherence improved +✅ Duplication reduced while preserving essential information +✅ All main sections use ## Level 2 headers +✅ Transitions between sections are smooth +✅ User's voice and intent preserved +✅ Document is more readable and professional +✅ A/P/C menu presented and handled correctly +✅ Polished document saved when C selected + +## FAILURE MODES: + +❌ Loading only partial document (leads to incomplete polish) +❌ Removing essential information while reducing duplication +❌ Not preserving user's voice and intent +❌ Changing content instead of improving presentation +❌ Not ensuring ## Level 2 headers for main sections +❌ Making arbitrary style changes instead of coherence improvements +❌ Not presenting A/P/C menu for user approval +❌ Saving polished document without user selecting 'C' + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file +❌ **CRITICAL**: Making changes without complete understanding of document requirements + +## NEXT STEP: + +After user selects 'C' and polished document is saved, load `./step-12-complete.md` to complete the workflow. + +Remember: Do NOT proceed to step-12 until user explicitly selects 'C' from the A/P/C menu and polished document is saved! diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md new file mode 100644 index 00000000..ec3272ff --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md @@ -0,0 +1,124 @@ +--- +name: 'step-12-complete' +description: 'Complete the PRD workflow, update status files, and suggest next steps including validation' + +# File References +outputFile: '{planning_artifacts}/prd.md' +validationFlow: '../steps-v/step-v-01-discovery.md' +--- + +# Step 12: Workflow Completion + +**Final Step - Complete the PRD** + +## MANDATORY EXECUTION RULES (READ FIRST): + +- ✅ THIS IS A FINAL STEP - Workflow completion required +- 📖 CRITICAL: ALWAYS read the complete step file before taking any action +- 🛑 NO content generation - this is a wrap-up step +- 📋 FINALIZE document and update workflow status +- 💬 FOCUS on completion, validation options, and next steps +- 🎯 UPDATE workflow status files with completion information +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +## EXECUTION PROTOCOLS: + +- 🎯 Show your analysis before taking any action +- 💾 Update the main workflow status file with completion information (if exists) +- 📖 Offer validation workflow options to user +- 🚫 DO NOT load additional steps after this one + +## TERMINATION STEP PROTOCOLS: + +- This is a FINAL step - workflow completion required +- Update workflow status file with finalized document +- Suggest validation and next workflow steps +- Mark workflow as complete in status tracking + +## CONTEXT BOUNDARIES: + +- Complete and polished PRD document is available from all previous steps +- Workflow frontmatter shows all completed steps including polish +- All collaborative content has been generated, saved, and optimized +- Focus on completion, validation options, and next steps + +## YOUR TASK: + +Complete the PRD workflow, update status files, offer validation options, and suggest next steps for the project. + +## WORKFLOW COMPLETION SEQUENCE: + +### 1. Announce Workflow Completion + +Inform user that the PRD is complete and polished: +- Celebrate successful completion of comprehensive PRD +- Summarize all sections that were created +- Highlight that document has been polished for flow and coherence +- Emphasize document is ready for downstream work + +### 2. Workflow Status Update + +Update the main workflow status file if there is one: + +- Load `{status_file}` from workflow configuration (if exists) +- Update workflow_status["prd"] = "{default_output_file}" +- Save file, preserving all comments and structure +- Mark current timestamp as completion time + +### 3. Validation Workflow Options + +Offer validation workflows to ensure PRD is ready for implementation: + +**Available Validation Workflows:** + +**Option 1: Check Implementation Readiness** (`{checkImplementationReadinessWorkflow}`) +- Validates PRD has all information needed for development +- Checks epic coverage completeness +- Reviews UX alignment with requirements +- Assesses epic quality and readiness +- Identifies gaps before architecture/design work begins + +**When to use:** Before starting technical architecture or epic breakdown + +**Option 2: Skip for Now** +- Proceed directly to next workflows (architecture, UX, epics) +- Validation can be done later if needed +- Some teams prefer to validate during architecture reviews + +### 4. Suggest Next Workflows + +PRD complete. Read fully and follow: `_bmad/core/tasks/bmad-help.md` with argument `Create PRD`. + +### 5. Final Completion Confirmation + +- Confirm completion with user and summarize what has been accomplished +- Document now contains: Executive Summary, Success Criteria, User Journeys, Domain Requirements (if applicable), Innovation Analysis (if applicable), Project-Type Requirements, Functional Requirements (capability contract), Non-Functional Requirements, and has been polished for flow and coherence +- Ask if they'd like to run validation workflow or proceed to next workflows + +## SUCCESS METRICS: + +✅ PRD document contains all required sections and has been polished +✅ All collaborative content properly saved and optimized +✅ Workflow status file updated with completion information (if exists) +✅ Validation workflow options clearly presented +✅ Clear next step guidance provided to user +✅ Document quality validation completed +✅ User acknowledges completion and understands next options + +## FAILURE MODES: + +❌ Not updating workflow status file with completion information (if exists) +❌ Not offering validation workflow options +❌ Missing clear next step guidance for user +❌ Not confirming document completeness with user +❌ Workflow not properly marked as complete in status tracking (if applicable) +❌ User unclear about what happens next or what validation options exist + +❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions +❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols + +## FINAL REMINDER to give the user: + +The polished PRD serves as the foundation for all subsequent product development activities. All design, architecture, and development work should trace back to the requirements and vision documented in this PRD - update it also as needed as you continue planning. + +**Congratulations on completing the Product Requirements Document for {{project_name}}!** 🎉 diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md new file mode 100644 index 00000000..7af674fd --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md @@ -0,0 +1,247 @@ +--- +name: 'step-e-01-discovery' +description: 'Discovery & Understanding - Understand what user wants to edit and detect PRD format' + +# File references (ONLY variables used in this step) +altStepFile: './step-e-01b-legacy-conversion.md' +prdPurpose: '{project-root}/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md' +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +--- + +# Step E-1: Discovery & Understanding + +## STEP GOAL: + +Understand what the user wants to edit in the PRD, detect PRD format/type, check for validation report guidance, and route appropriately. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and PRD Improvement Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring analytical expertise and improvement guidance +- ✅ User brings domain knowledge and edit requirements + +### Step-Specific Rules: + +- 🎯 Focus ONLY on discovering user intent and PRD format +- 🚫 FORBIDDEN to make any edits yet +- 💬 Approach: Inquisitive and analytical, understanding before acting +- 🚪 This is a branch step - may route to legacy conversion + +## EXECUTION PROTOCOLS: + +- 🎯 Discover user's edit requirements +- 🎯 Auto-detect validation reports in PRD folder (use as guide) +- 🎯 Load validation report if provided (use as guide) +- 🎯 Detect PRD format (BMAD/legacy) +- 🎯 Route appropriately based on format +- 💾 Document discoveries for next step +- 🚫 FORBIDDEN to proceed without understanding requirements + +## CONTEXT BOUNDARIES: + +- Available context: PRD file to edit, optional validation report, auto-detected validation reports +- Focus: User intent discovery and format detection only +- Limits: Don't edit yet, don't validate yet +- Dependencies: None - this is first edit step + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Load PRD Purpose Standards + +Load and read the complete file at: +`{prdPurpose}` (data/prd-purpose.md) + +This file defines what makes a great BMAD PRD. Internalize this understanding - it will guide improvement recommendations. + +### 2. Discover PRD to Edit + +"**PRD Edit Workflow** + +Which PRD would you like to edit? + +Please provide the path to the PRD file you want to edit." + +**Wait for user to provide PRD path.** + +### 3. Validate PRD Exists and Load + +Once PRD path is provided: +- Check if PRD file exists at specified path +- If not found: "I cannot find a PRD at that path. Please check the path and try again." +- If found: Load the complete PRD file including frontmatter + +### 4. Check for Existing Validation Report + +**Check if validation report exists in the PRD folder:** + +```bash +# Look for most recent validation report in the PRD folder +ls -t {prd_folder_path}/validation-report-*.md 2>/dev/null | head -1 +``` + +**If validation report found:** + +Display: +"**📋 Found Validation Report** + +I found a validation report from {validation_date} in the PRD folder. + +This report contains findings from previous validation checks and can help guide our edits to fix known issues. + +**Would you like to:** +- **[U] Use validation report** - Load it to guide and prioritize edits +- **[S] Skip** - Proceed with manual edit discovery" + +**Wait for user input.** + +**IF U (Use validation report):** +- Load the validation report file +- Extract findings, issues, and improvement suggestions +- Note: "Validation report loaded - will use it to guide prioritized improvements" +- Continue to step 5 + +**IF S (Skip) or no validation report found:** +- Note: "Proceeding with manual edit discovery" +- Continue to step 5 + +**If no validation report found:** +- Note: "No validation report found in PRD folder" +- Continue to step 5 without asking user + +### 5. Ask About Validation Report + +"**Do you have a validation report to guide edits?** + +If you've run the validation workflow on this PRD, I can use that report to guide improvements and prioritize changes. + +Validation report path (or type 'none'):" + +**Wait for user input.** + +**If validation report path provided:** +- Load the validation report +- Extract findings, severity, improvement suggestions +- Note: "Validation report loaded - will use it to guide prioritized improvements" + +**If no validation report:** +- Note: "Proceeding with manual edit discovery" +- Continue to step 6 + +### 6. Discover Edit Requirements + +"**What would you like to edit in this PRD?** + +Please describe the changes you want to make. For example: +- Fix specific issues (information density, implementation leakage, etc.) +- Add missing sections or content +- Improve structure and flow +- Convert to BMAD format (if legacy PRD) +- General improvements +- Other changes + +**Describe your edit goals:**" + +**Wait for user to describe their requirements.** + +### 7. Detect PRD Format + +Analyze the loaded PRD: + +**Extract all ## Level 2 headers** from PRD + +**Check for BMAD PRD core sections:** +1. Executive Summary +2. Success Criteria +3. Product Scope +4. User Journeys +5. Functional Requirements +6. Non-Functional Requirements + +**Classify format:** +- **BMAD Standard:** 5-6 core sections present +- **BMAD Variant:** 3-4 core sections present, generally follows BMAD patterns +- **Legacy (Non-Standard):** Fewer than 3 core sections, does not follow BMAD structure + +### 8. Route Based on Format and Context + +**IF validation report provided OR PRD is BMAD Standard/Variant:** + +Display: "**Edit Requirements Understood** + +**PRD Format:** {classification} +{If validation report: "**Validation Guide:** Yes - will use validation report findings"} +**Edit Goals:** {summary of user's requirements} + +**Proceeding to deep review and analysis...**" + +Read fully and follow: next step (step-e-02-review.md) + +**IF PRD is Legacy (Non-Standard) AND no validation report:** + +Display: "**Format Detected:** Legacy PRD + +This PRD does not follow BMAD standard structure (only {count}/6 core sections present). + +**Your edit goals:** {user's requirements} + +**How would you like to proceed?**" + +Present MENU OPTIONS below for user selection + +### 9. Present MENU OPTIONS (Legacy PRDs Only) + +**[C] Convert to BMAD Format** - Convert PRD to BMAD standard structure, then apply your edits +**[E] Edit As-Is** - Apply your edits without converting the format +**[X] Exit** - Exit and review conversion options + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input +- Only proceed based on user selection + +#### Menu Handling Logic: + +- IF C (Convert): Read fully and follow: {altStepFile} (step-e-01b-legacy-conversion.md) +- IF E (Edit As-Is): Display "Proceeding with edits..." then load next step +- IF X (Exit): Display summary and exit +- IF Any other: help user, then redisplay menu + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- User's edit requirements clearly understood +- Auto-detected validation reports loaded and analyzed (when found) +- Manual validation report loaded and analyzed (if provided) +- PRD format detected correctly +- BMAD PRDs proceed directly to review step +- Legacy PRDs pause and present conversion options +- User can choose conversion path or edit as-is + +### ❌ SYSTEM FAILURE: + +- Not discovering user's edit requirements +- Not auto-detecting validation reports in PRD folder +- Not loading validation report when provided (auto or manual) +- Missing format detection +- Not pausing for legacy PRDs without guidance +- Auto-proceeding without understanding intent + +**Master Rule:** Understand before editing. Detect format early so we can guide users appropriately. Auto-detect and use validation reports for prioritized improvements. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md new file mode 100644 index 00000000..5be8f63a --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md @@ -0,0 +1,208 @@ +--- +name: 'step-e-01b-legacy-conversion' +description: 'Legacy PRD Conversion Assessment - Analyze legacy PRD and propose conversion strategy' + +# File references (ONLY variables used in this step) +nextStepFile: './step-e-02-review.md' +prdFile: '{prd_file_path}' +prdPurpose: '{project-root}/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md' +--- + +# Step E-1B: Legacy PRD Conversion Assessment + +## STEP GOAL: + +Analyze legacy PRD against BMAD standards, identify gaps, propose conversion strategy, and let user choose how to proceed. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and PRD Improvement Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring BMAD standards expertise and conversion guidance +- ✅ User brings domain knowledge and edit requirements + +### Step-Specific Rules: + +- 🎯 Focus ONLY on conversion assessment and proposal +- 🚫 FORBIDDEN to perform conversion yet (that comes in edit step) +- 💬 Approach: Analytical gap analysis with clear recommendations +- 🚪 This is a branch step - user chooses conversion path + +## EXECUTION PROTOCOLS: + +- 🎯 Analyze legacy PRD against BMAD standard +- 💾 Identify gaps and estimate conversion effort +- 📖 Present conversion options with effort estimates +- 🚫 FORBIDDEN to proceed without user selection + +## CONTEXT BOUNDARIES: + +- Available context: Legacy PRD, user's edit requirements, prd-purpose standards +- Focus: Conversion assessment only (not actual conversion) +- Limits: Don't convert yet, don't validate yet +- Dependencies: Step e-01 detected legacy format and routed here + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Attempt Sub-Process Assessment + +**Try to use Task tool with sub-agent:** + +"Perform legacy PRD conversion assessment: + +**Load the PRD and prd-purpose.md** + +**For each BMAD PRD section, analyze:** +1. Does PRD have this section? (Executive Summary, Success Criteria, Product Scope, User Journeys, Functional Requirements, Non-Functional Requirements) +2. If present: Is it complete and well-structured? +3. If missing: What content exists that could migrate to this section? +4. Effort to create/complete: Minimal / Moderate / Significant + +**Identify:** +- Core sections present: {count}/6 +- Content gaps in each section +- Overall conversion effort: Quick / Moderate / Substantial +- Recommended approach: Full restructuring vs targeted improvements + +Return conversion assessment with gap analysis and effort estimate." + +**Graceful degradation (if no Task tool):** +- Manually check PRD for each BMAD section +- Note what's present and what's missing +- Estimate conversion effort +- Identify best conversion approach + +### 2. Build Gap Analysis + +**For each BMAD core section:** + +**Executive Summary:** +- Present: [Yes/No/Partial] +- Gap: [what's missing or incomplete] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Success Criteria:** +- Present: [Yes/No/Partial] +- Gap: [what's missing or incomplete] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Product Scope:** +- Present: [Yes/No/Partial] +- Gap: [what's missing or incomplete] +- Effort to Complete: [Minimal/Moderate/Significant] + +**User Journeys:** +- Present: [Yes/No/Partial] +- Gap: [what's missing or incomplete] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Functional Requirements:** +- Present: [Yes/No/Partial] +- Gap: [what's missing or incomplete] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Non-Functional Requirements:** +- Present: [Yes/No/Partial] +- Gap: [what's missing or incomplete] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Overall Assessment:** +- Sections Present: {count}/6 +- Total Conversion Effort: [Quick/Moderate/Substantial] +- Recommended: [Full restructuring / Targeted improvements] + +### 3. Present Conversion Assessment + +Display: + +"**Legacy PRD Conversion Assessment** + +**Current PRD Structure:** +- Core sections present: {count}/6 +{List which sections are present/missing} + +**Gap Analysis:** + +{Present gap analysis table showing each section's status and effort} + +**Overall Conversion Effort:** {effort level} + +**Your Edit Goals:** +{Reiterate user's stated edit requirements} + +**Recommendation:** +{Based on effort and user goals, recommend best approach} + +**How would you like to proceed?**" + +### 4. Present MENU OPTIONS + +**[R] Restructure to BMAD** - Full conversion to BMAD format, then apply your edits +**[I] Targeted Improvements** - Apply your edits to existing structure without restructuring +**[E] Edit & Restructure** - Do both: convert format AND apply your edits +**[X] Exit** - Review assessment and decide + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input +- Only proceed based on user selection + +#### Menu Handling Logic: + +- IF R (Restructure): Note conversion mode, then load next step +- IF I (Targeted): Note targeted mode, then load next step +- IF E (Edit & Restructure): Note both mode, then load next step +- IF X (Exit): Display summary, exit + +### 5. Document Conversion Strategy + +Store conversion decision for next step: + +- **Conversion mode:** [Full restructuring / Targeted improvements / Both] +- **Edit requirements:** [user's requirements from step e-01] +- **Gap analysis:** [summary of gaps identified] + +Display: "**Conversion Strategy Documented** + +Mode: {conversion mode} +Edit goals: {summary} + +**Proceeding to deep review...**" + +Read fully and follow: {nextStepFile} (step-e-02-review.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- All 6 BMAD core sections analyzed for gaps +- Effort estimates provided for each section +- Overall conversion effort assessed correctly +- Clear recommendation provided based on effort and user goals +- User chooses conversion strategy (restructure/targeted/both) +- Conversion strategy documented for next step + +### ❌ SYSTEM FAILURE: + +- Not analyzing all 6 core sections +- Missing effort estimates +- Not providing clear recommendation +- Auto-proceeding without user selection +- Not documenting conversion strategy + +**Master Rule:** Legacy PRDs need conversion assessment so users understand the work involved and can choose the best approach. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md new file mode 100644 index 00000000..e89c1500 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md @@ -0,0 +1,249 @@ +--- +name: 'step-e-02-review' +description: 'Deep Review & Analysis - Thoroughly review existing PRD and prepare detailed change plan' + +# File references (ONLY variables used in this step) +nextStepFile: './step-e-03-edit.md' +prdFile: '{prd_file_path}' +validationReport: '{validation_report_path}' # If provided +prdPurpose: '{project-root}/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md' +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +--- + +# Step E-2: Deep Review & Analysis + +## STEP GOAL: + +Thoroughly review the existing PRD, analyze validation report findings (if provided), and prepare a detailed change plan before editing. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and PRD Improvement Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring analytical expertise and improvement planning +- ✅ User brings domain knowledge and approval authority + +### Step-Specific Rules: + +- 🎯 Focus ONLY on review and analysis, not editing yet +- 🚫 FORBIDDEN to make changes to PRD in this step +- 💬 Approach: Thorough analysis with user confirmation on plan +- 🚪 This is a middle step - user confirms plan before proceeding + +## EXECUTION PROTOCOLS: + +- 🎯 Load and analyze validation report (if provided) +- 🎯 Deep review of entire PRD +- 🎯 Map validation findings to specific sections +- 🎯 Prepare detailed change plan +- 💬 Get user confirmation on plan +- 🚫 FORBIDDEN to proceed to edit without user approval + +## CONTEXT BOUNDARIES: + +- Available context: PRD file, validation report (if provided), user requirements from step e-01 +- Focus: Analysis and planning only (no editing) +- Limits: Don't change PRD yet, don't validate yet +- Dependencies: Step e-01 completed - requirements and format known + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Attempt Sub-Process Deep Review + +**Try to use Task tool with sub-agent:** + +"Perform deep PRD review and change planning: + +**Context from step e-01:** +- User's edit requirements: {user_requirements} +- PRD format: {BMAD/legacy} +- Validation report provided: {yes/no} +- Conversion mode: {restructure/targeted/both} (if legacy) + +**IF validation report provided:** +1. Extract all findings from validation report +2. Map findings to specific PRD sections +3. Prioritize by severity: Critical > Warning > Informational +4. For each critical issue: identify specific fix needed +5. For user's manual edit goals: identify where in PRD to apply + +**IF no validation report:** +1. Read entire PRD thoroughly +2. Analyze against BMAD standards (from prd-purpose.md) +3. Identify issues in: + - Information density (anti-patterns) + - Structure and flow + - Completeness (missing sections/content) + - Measurability (unmeasurable requirements) + - Traceability (broken chains) + - Implementation leakage +4. Map user's edit goals to specific sections + +**Output:** +- Section-by-section analysis +- Specific changes needed for each section +- Prioritized action list +- Recommended order for applying changes + +Return detailed change plan with section breakdown." + +**Graceful degradation (if no Task tool):** +- Manually read PRD sections +- Manually analyze validation report findings (if provided) +- Build section-by-section change plan +- Prioritize changes by severity/user goals + +### 2. Build Change Plan + +**Organize by PRD section:** + +**For each section (in order):** +- **Current State:** Brief description of what exists +- **Issues Identified:** [List from validation report or manual analysis] +- **Changes Needed:** [Specific changes required] +- **Priority:** [Critical/High/Medium/Low] +- **User Requirements Met:** [Which user edit goals address this section] + +**Include:** +- Sections to add (if missing) +- Sections to update (if present but needs work) +- Content to remove (if incorrect/leakage) +- Structure changes (if reformatting needed) + +### 3. Prepare Change Plan Summary + +**Summary sections:** + +**Changes by Type:** +- **Additions:** {count} sections to add +- **Updates:** {count} sections to update +- **Removals:** {count} items to remove +- **Restructuring:** {yes/no} if format conversion needed + +**Priority Distribution:** +- **Critical:** {count} changes (must fix) +- **High:** {count} changes (important) +- **Medium:** {count} changes (nice to have) +- **Low:** {count} changes (optional) + +**Estimated Effort:** +[Quick/Moderate/Substantial] based on scope and complexity + +### 4. Present Change Plan to User + +Display: + +"**Deep Review Complete - Change Plan** + +**PRD Analysis:** +{Brief summary of PRD current state} + +{If validation report provided:} +**Validation Findings:** +{count} issues identified: {critical} critical, {warning} warnings + +**Your Edit Requirements:** +{summary of what user wants to edit} + +**Proposed Change Plan:** + +**By Section:** +{Present section-by-section breakdown} + +**By Priority:** +- Critical: {count} items +- High: {count} items +- Medium: {count} items + +**Estimated Effort:** {effort level} + +**Questions:** +1. Does this change plan align with what you had in mind? +2. Any sections I should add/remove/reprioritize? +3. Any concerns before I proceed with edits? + +**Review the plan and let me know if you'd like any adjustments.**" + +### 5. Get User Confirmation + +Wait for user to review and provide feedback. + +**If user wants adjustments:** +- Discuss requested changes +- Revise change plan accordingly +- Represent for confirmation + +**If user approves:** +- Note: "Change plan approved. Proceeding to edit step." +- Continue to step 6 + +### 6. Document Approved Plan + +Store approved change plan for next step: + +- **Approved changes:** Section-by-section list +- **Priority order:** Sequence to apply changes +- **User confirmed:** Yes + +Display: "**Change Plan Approved** + +{Brief summary of approved plan} + +**Proceeding to edit step...**" + +Read fully and follow: {nextStepFile} (step-e-03-edit.md) + +### 7. Present MENU OPTIONS (If User Wants Discussion) + +**[A] Advanced Elicitation** - Get additional perspectives on change plan +**[P] Party Mode** - Discuss with team for more ideas +**[C] Continue to Edit** - Proceed with approved plan + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input +- Only proceed to edit when user selects 'C' + +#### Menu Handling Logic: + +- IF A: Read fully and follow: {advancedElicitationTask}, then return to discussion +- IF P: Read fully and follow: {partyModeWorkflow}, then return to discussion +- IF C: Document approval, then load {nextStepFile} +- IF Any other: discuss, then redisplay menu + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Validation report findings fully analyzed (if provided) +- Deep PRD review completed systematically +- Change plan built section-by-section +- Changes prioritized by severity/user goals +- User presented with clear plan +- User confirms or adjusts plan +- Approved plan documented for next step + +### ❌ SYSTEM FAILURE: + +- Not analyzing validation report findings (if provided) +- Superficial review instead of deep analysis +- Missing section-by-section breakdown +- Not prioritizing changes +- Proceeding without user approval + +**Master Rule:** Plan before editing. Thorough analysis ensures we make the right changes in the right order. User approval prevents misalignment. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md new file mode 100644 index 00000000..c60a1d5e --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md @@ -0,0 +1,253 @@ +--- +name: 'step-e-03-edit' +description: 'Edit & Update - Apply changes to PRD following approved change plan' + +# File references (ONLY variables used in this step) +nextStepFile: './step-e-04-complete.md' +prdFile: '{prd_file_path}' +prdPurpose: '{project-root}/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md' +--- + +# Step E-3: Edit & Update + +## STEP GOAL: + +Apply changes to the PRD following the approved change plan from step e-02, including content updates, structure improvements, and format conversion if needed. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 ALWAYS generate content WITH user input/approval +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and PRD Improvement Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring analytical expertise and precise editing skills +- ✅ User brings domain knowledge and approval authority + +### Step-Specific Rules: + +- 🎯 Focus ONLY on implementing approved changes from step e-02 +- 🚫 FORBIDDEN to make changes beyond the approved plan +- 💬 Approach: Methodical, section-by-section execution +- 🚪 This is a middle step - user can request adjustments + +## EXECUTION PROTOCOLS: + +- 🎯 Follow approved change plan systematically +- 💾 Edit PRD content according to plan +- 📖 Update frontmatter as needed +- 🚫 FORBIDDEN to proceed without completion + +## CONTEXT BOUNDARIES: + +- Available context: PRD file, approved change plan from step e-02, prd-purpose standards +- Focus: Implementing changes from approved plan only +- Limits: Don't add changes beyond plan, don't validate yet +- Dependencies: Step e-02 completed - plan approved by user + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Retrieve Approved Change Plan + +From step e-02, retrieve: +- **Approved changes:** Section-by-section list +- **Priority order:** Sequence to apply changes +- **User requirements:** Edit goals from step e-01 + +Display: "**Starting PRD Edits** + +**Change Plan:** {summary} +**Total Changes:** {count} +**Estimated Effort:** {effort level} + +**Proceeding with edits section by section...**" + +### 2. Attempt Sub-Process Edits (For Complex Changes) + +**Try to use Task tool with sub-agent for major sections:** + +"Execute PRD edits for {section_name}: + +**Context:** +- Section to edit: {section_name} +- Current content: {existing content} +- Changes needed: {specific changes from plan} +- BMAD PRD standards: Load from prd-purpose.md + +**Tasks:** +1. Read current PRD section +2. Apply specified changes +3. Ensure BMAD PRD principles compliance: + - High information density (no filler) + - Measurable requirements + - Clear structure + - Proper markdown formatting +4. Return updated section content + +Apply changes and return updated section." + +**Graceful degradation (if no Task tool):** +- Perform edits directly in current context +- Load PRD section, apply changes, save + +### 3. Execute Changes Section-by-Section + +**For each section in approved plan (in priority order):** + +**a) Load current section** +- Read the current PRD section content +- Note what exists + +**b) Apply changes per plan** +- Additions: Create new sections with proper content +- Updates: Modify existing content per plan +- Removals: Remove specified content +- Restructuring: Reformat content to BMAD standard + +**c) Update PRD file** +- Apply changes to PRD +- Save updated PRD +- Verify changes applied correctly + +**Display progress after each section:** +"**Section Updated:** {section_name} +Changes: {brief summary} +{More sections remaining...}" + +### 4. Handle Restructuring (If Needed) + +**If conversion mode is "Full restructuring" or "Both":** + +**For restructuring:** +- Reorganize PRD to BMAD standard structure +- Ensure proper ## Level 2 headers +- Reorder sections logically +- Update PRD frontmatter to match BMAD format + +**Follow BMAD PRD structure:** +1. Executive Summary +2. Success Criteria +3. Product Scope +4. User Journeys +5. Domain Requirements (if applicable) +6. Innovation Analysis (if applicable) +7. Project-Type Requirements +8. Functional Requirements +9. Non-Functional Requirements + +Display: "**PRD Restructured** +BMAD standard structure applied. +{Sections added/reordered}" + +### 5. Update PRD Frontmatter + +**Ensure frontmatter is complete and accurate:** + +```yaml +--- +workflowType: 'prd' +workflow: 'create' # or 'validate' or 'edit' +classification: + domain: '{domain}' + projectType: '{project_type}' + complexity: '{complexity}' +inputDocuments: [list of input documents] +stepsCompleted: ['step-e-01-discovery', 'step-e-02-review', 'step-e-03-edit'] +lastEdited: '{current_date}' +editHistory: + - date: '{current_date}' + changes: '{summary of changes}' +--- +``` + +**Update frontmatter accordingly.** + +### 6. Final Review of Changes + +**Load complete updated PRD** + +**Verify:** +- All approved changes applied correctly +- PRD structure is sound +- No unintended modifications +- Frontmatter is accurate + +**If issues found:** +- Fix them now +- Note corrections made + +**If user wants adjustments:** +- Accept feedback and make adjustments +- Re-verify after adjustments + +### 7. Confirm Completion + +Display: + +"**PRD Edits Complete** + +**Changes Applied:** {count} sections modified +**PRD Updated:** {prd_file_path} + +**Summary of Changes:** +{Brief bullet list of major changes} + +**PRD is ready for:** +- Use in downstream workflows (UX, Architecture) +- Validation (if not yet validated) + +**What would you like to do next?**" + +### 8. Present MENU OPTIONS + +**[V] Run Validation** - Execute full validation workflow (steps-v/step-v-01-discovery.md) +**[S] Summary Only** - End with summary of changes (no validation) +**[A] Adjust** - Make additional edits +**[X] Exit** - Exit edit workflow + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input +- Only proceed based on user selection + +#### Menu Handling Logic: + +- IF V (Validate): Display "Starting validation workflow..." then read fully and follow: steps-v/step-v-01-discovery.md +- IF S (Summary): Present edit summary and exit +- IF A (Adjust): Accept additional requirements, loop back to editing +- IF X (Exit): Display summary and exit + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- All approved changes from step e-02 applied correctly +- Changes executed in planned priority order +- Restructuring completed (if needed) +- Frontmatter updated accurately +- Final verification confirms changes +- User can proceed to validation or exit with summary +- Option to run validation seamlessly integrates edit and validate modes + +### ❌ SYSTEM FAILURE: + +- Making changes beyond approved plan +- Not following priority order +- Missing restructuring (if conversion mode) +- Not updating frontmatter +- No final verification +- Not saving updated PRD + +**Master Rule:** Execute the plan exactly as approved. PRD is now ready for validation or downstream use. Validation integration ensures quality. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md new file mode 100644 index 00000000..733f1a52 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md @@ -0,0 +1,168 @@ +--- +name: 'step-e-04-complete' +description: 'Complete & Validate - Present options for next steps including full validation' + +# File references (ONLY variables used in this step) +prdFile: '{prd_file_path}' +validationWorkflow: './steps-v/step-v-01-discovery.md' +--- + +# Step E-4: Complete & Validate + +## STEP GOAL: + +Present summary of completed edits and offer next steps including seamless integration with validation workflow. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 ALWAYS generate content WITH user input/approval +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and PRD Improvement Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring synthesis and summary expertise +- ✅ User chooses next actions + +### Step-Specific Rules: + +- 🎯 Focus ONLY on presenting summary and options +- 🚫 FORBIDDEN to make additional changes +- 💬 Approach: Clear, concise summary with actionable options +- 🚪 This is the final edit step - no more edits + +## EXECUTION PROTOCOLS: + +- 🎯 Compile summary of all changes made +- 🎯 Present options clearly with expected outcomes +- 📖 Route to validation if user chooses +- 🚫 FORBIDDEN to proceed without user selection + +## CONTEXT BOUNDARIES: + +- Available context: Updated PRD file, edit history from step e-03 +- Focus: Summary and options only (no more editing) +- Limits: Don't make changes, just present options +- Dependencies: Step e-03 completed - all edits applied + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Compile Edit Summary + +From step e-03 change execution, compile: + +**Changes Made:** +- Sections added: {list with names} +- Sections updated: {list with names} +- Content removed: {list} +- Structure changes: {description} + +**Edit Details:** +- Total sections affected: {count} +- Mode: {restructure/targeted/both} +- Priority addressed: {Critical/High/Medium/Low} + +**PRD Status:** +- Format: {BMAD Standard / BMAD Variant / Legacy (converted)} +- Completeness: {assessment} +- Ready for: {downstream use cases} + +### 2. Present Completion Summary + +Display: + +"**✓ PRD Edit Complete** + +**Updated PRD:** {prd_file_path} + +**Changes Summary:** +{Present bulleted list of major changes} + +**Edit Mode:** {mode} +**Sections Modified:** {count} + +**PRD Format:** {format} + +**PRD is now ready for:** +- Downstream workflows (UX Design, Architecture) +- Validation to ensure quality +- Production use + +**What would you like to do next?**" + +### 3. Present MENU OPTIONS + +Display: + +**[V] Run Full Validation** - Execute complete validation workflow (steps-v) to verify PRD quality +**[E] Edit More** - Make additional edits to the PRD +**[S] Summary** - End with detailed summary of changes +**[X] Exit** - Exit edit workflow + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input +- Only proceed based on user selection + +#### Menu Handling Logic: + +- **IF V (Run Full Validation):** + - Display: "**Starting Validation Workflow**" + - Display: "This will run all 13 validation checks on the updated PRD." + - Display: "Preparing to validate: {prd_file_path}" + - Display: "**Proceeding to validation...**" + - Read fully and follow: {validationWorkflow} (steps-v/step-v-01-discovery.md) + - Note: This hands off to the validation workflow which will run its complete 13-step process + +- **IF E (Edit More):** + - Display: "**Additional Edits**" + - Ask: "What additional edits would you like to make?" + - Accept input, then display: "**Returning to edit step...**" + - Read fully and follow: step-e-03-edit.md again + +- **IF S (Summary):** + - Display detailed summary including: + - Complete list of all changes made + - Before/after comparison (key improvements) + - Recommendations for next steps + - Display: "**Edit Workflow Complete**" + - Exit + +- **IF X (Exit):** + - Display summary + - Display: "**Edit Workflow Complete**" + - Exit + +- **IF Any other:** Help user, then redisplay menu + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Complete edit summary compiled accurately +- All changes clearly documented +- Options presented with clear expectations +- Validation option seamlessly integrates with steps-v workflow +- User can validate, edit more, or exit +- Clean handoff to validation workflow (if chosen) +- Edit workflow completes properly + +### ❌ SYSTEM FAILURE: + +- Missing changes in summary +- Not offering validation option +- Not documenting completion properly +- No clear handoff to validation workflow + +**Master Rule:** Edit workflow seamlessly integrates with validation. User can edit → validate → edit again → validate again in iterative improvement cycle. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md new file mode 100644 index 00000000..b79e12fe --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md @@ -0,0 +1,218 @@ +--- +name: 'step-v-01-discovery' +description: 'Document Discovery & Confirmation - Handle fresh context validation, confirm PRD path, discover input documents' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-02-format-detection.md' +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md' +prdPurpose: '../data/prd-purpose.md' +--- + +# Step 1: Document Discovery & Confirmation + +## STEP GOAL: + +Handle fresh context validation by confirming PRD path, discovering and loading input documents from frontmatter, and initializing the validation report. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring systematic validation expertise and analytical rigor +- ✅ User brings domain knowledge and specific PRD context + +### Step-Specific Rules: + +- 🎯 Focus ONLY on discovering PRD and input documents, not validating yet +- 🚫 FORBIDDEN to perform any validation checks in this step +- 💬 Approach: Systematic discovery with clear reporting to user +- 🚪 This is the setup step - get everything ready for validation + +## EXECUTION PROTOCOLS: + +- 🎯 Discover and confirm PRD to validate +- 💾 Load PRD and all input documents from frontmatter +- 📖 Initialize validation report next to PRD +- 🚫 FORBIDDEN to load next step until user confirms setup + +## CONTEXT BOUNDARIES: + +- Available context: PRD path (user-specified or discovered), workflow configuration +- Focus: Document discovery and setup only +- Limits: Don't perform validation, don't skip discovery +- Dependencies: Configuration loaded from PRD workflow.md initialization + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Load PRD Purpose and Standards + +Load and read the complete file at: +`{prdPurpose}` + +This file contains the BMAD PRD philosophy, standards, and validation criteria that will guide all validation checks. Internalize this understanding - it defines what makes a great BMAD PRD. + +### 2. Discover PRD to Validate + +**If PRD path provided as invocation parameter:** +- Use provided path + +**If no PRD path provided:** +"**PRD Validation Workflow** + +Which PRD would you like to validate? + +Please provide the path to the PRD file you want to validate." + +**Wait for user to provide PRD path.** + +### 3. Validate PRD Exists and Load + +Once PRD path is provided: + +- Check if PRD file exists at specified path +- If not found: "I cannot find a PRD at that path. Please check the path and try again." +- If found: Load the complete PRD file including frontmatter + +### 4. Extract Frontmatter and Input Documents + +From the loaded PRD frontmatter, extract: + +- `inputDocuments: []` array (if present) +- Any other relevant metadata (classification, date, etc.) + +**If no inputDocuments array exists:** +Note this and proceed with PRD-only validation + +### 5. Load Input Documents + +For each document listed in `inputDocuments`: + +- Attempt to load the document +- Track successfully loaded documents +- Note any documents that fail to load + +**Build list of loaded input documents:** +- Product Brief (if present) +- Research documents (if present) +- Other reference materials (if present) + +### 6. Ask About Additional Reference Documents + +"**I've loaded the following documents from your PRD frontmatter:** + +{list loaded documents with file names} + +**Are there any additional reference documents you'd like me to include in this validation?** + +These could include: +- Additional research or context documents +- Project documentation not tracked in frontmatter +- Standards or compliance documents +- Competitive analysis or benchmarks + +Please provide paths to any additional documents, or type 'none' to proceed." + +**Load any additional documents provided by user.** + +### 7. Initialize Validation Report + +Create validation report at: `{validationReportPath}` + +**Initialize with frontmatter:** +```yaml +--- +validationTarget: '{prd_path}' +validationDate: '{current_date}' +inputDocuments: [list of all loaded documents] +validationStepsCompleted: [] +validationStatus: IN_PROGRESS +--- +``` + +**Initial content:** +```markdown +# PRD Validation Report + +**PRD Being Validated:** {prd_path} +**Validation Date:** {current_date} + +## Input Documents + +{list all documents loaded for validation} + +## Validation Findings + +[Findings will be appended as validation progresses] +``` + +### 8. Present Discovery Summary + +"**Setup Complete!** + +**PRD to Validate:** {prd_path} + +**Input Documents Loaded:** +- PRD: {prd_name} ✓ +- Product Brief: {count} {if count > 0}✓{else}(none found){/if} +- Research: {count} {if count > 0}✓{else}(none found){/if} +- Additional References: {count} {if count > 0}✓{else}(none){/if} + +**Validation Report:** {validationReportPath} + +**Ready to begin validation.**" + +### 9. Present MENU OPTIONS + +Display: **Select an Option:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Format Detection + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input after presenting menu +- ONLY proceed to next step when user selects 'C' +- User can ask questions or add more documents - always respond and redisplay menu + +#### Menu Handling Logic: + +- IF A: Read fully and follow: {advancedElicitationTask}, and when finished redisplay the menu +- IF P: Read fully and follow: {partyModeWorkflow}, and when finished redisplay the menu +- IF C: Read fully and follow: {nextStepFile} to begin format detection +- IF user provides additional document: Load it, update report, redisplay summary +- IF Any other: help user, then redisplay menu + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- PRD path discovered and confirmed +- PRD file exists and loads successfully +- All input documents from frontmatter loaded +- Additional reference documents (if any) loaded +- Validation report initialized next to PRD +- User clearly informed of setup status +- Menu presented and user input handled correctly + +### ❌ SYSTEM FAILURE: + +- Proceeding with non-existent PRD file +- Not loading input documents from frontmatter +- Creating validation report in wrong location +- Proceeding without user confirming setup +- Not handling missing input documents gracefully + +**Master Rule:** Complete discovery and setup BEFORE validation. This step ensures everything is in place for systematic validation checks. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md new file mode 100644 index 00000000..a354b5af --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md @@ -0,0 +1,191 @@ +--- +name: 'step-v-02-format-detection' +description: 'Format Detection & Structure Analysis - Classify PRD format and route appropriately' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-03-density-validation.md' +altStepFile: './step-v-02b-parity-check.md' +prdFile: '{prd_file_path}' +validationReportPath: '{validation_report_path}' +--- + +# Step 2: Format Detection & Structure Analysis + +## STEP GOAL: + +Detect if PRD follows BMAD format and route appropriately - classify as BMAD Standard / BMAD Variant / Non-Standard, with optional parity check for non-standard formats. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring systematic validation expertise and pattern recognition +- ✅ User brings domain knowledge and PRD context + +### Step-Specific Rules: + +- 🎯 Focus ONLY on detecting format and classifying structure +- 🚫 FORBIDDEN to perform other validation checks in this step +- 💬 Approach: Analytical and systematic, clear reporting of findings +- 🚪 This is a branch step - may route to parity check for non-standard PRDs + +## EXECUTION PROTOCOLS: + +- 🎯 Analyze PRD structure systematically +- 💾 Append format findings to validation report +- 📖 Route appropriately based on format classification +- 🚫 FORBIDDEN to skip format detection or proceed without classification + +## CONTEXT BOUNDARIES: + +- Available context: PRD file loaded in step 1, validation report initialized +- Focus: Format detection and classification only +- Limits: Don't perform other validation, don't skip classification +- Dependencies: Step 1 completed - PRD loaded and report initialized + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Extract PRD Structure + +Load the complete PRD file and extract: + +**All Level 2 (##) headers:** +- Scan through entire PRD document +- Extract all ## section headers +- List them in order + +**PRD frontmatter:** +- Extract classification.domain if present +- Extract classification.projectType if present +- Note any other relevant metadata + +### 2. Check for BMAD PRD Core Sections + +Check if the PRD contains the following BMAD PRD core sections: + +1. **Executive Summary** (or variations: ## Executive Summary, ## Overview, ## Introduction) +2. **Success Criteria** (or: ## Success Criteria, ## Goals, ## Objectives) +3. **Product Scope** (or: ## Product Scope, ## Scope, ## In Scope, ## Out of Scope) +4. **User Journeys** (or: ## User Journeys, ## User Stories, ## User Flows) +5. **Functional Requirements** (or: ## Functional Requirements, ## Features, ## Capabilities) +6. **Non-Functional Requirements** (or: ## Non-Functional Requirements, ## NFRs, ## Quality Attributes) + +**Count matches:** +- How many of these 6 core sections are present? +- Which specific sections are present? +- Which are missing? + +### 3. Classify PRD Format + +Based on core section count, classify: + +**BMAD Standard:** +- 5-6 core sections present +- Follows BMAD PRD structure closely + +**BMAD Variant:** +- 3-4 core sections present +- Generally follows BMAD patterns but may have structural differences +- Missing some sections but recognizable as BMAD-style + +**Non-Standard:** +- Fewer than 3 core sections present +- Does not follow BMAD PRD structure +- May be completely custom format, legacy format, or from another framework + +### 4. Report Format Findings to Validation Report + +Append to validation report: + +```markdown +## Format Detection + +**PRD Structure:** +[List all ## Level 2 headers found] + +**BMAD Core Sections Present:** +- Executive Summary: [Present/Missing] +- Success Criteria: [Present/Missing] +- Product Scope: [Present/Missing] +- User Journeys: [Present/Missing] +- Functional Requirements: [Present/Missing] +- Non-Functional Requirements: [Present/Missing] + +**Format Classification:** [BMAD Standard / BMAD Variant / Non-Standard] +**Core Sections Present:** [count]/6 +``` + +### 5. Route Based on Format Classification + +**IF format is BMAD Standard or BMAD Variant:** + +Display: "**Format Detected:** {classification} + +Proceeding to systematic validation checks..." + +Without delay, read fully and follow: {nextStepFile} (step-v-03-density-validation.md) + +**IF format is Non-Standard (< 3 core sections):** + +Display: "**Format Detected:** Non-Standard PRD + +This PRD does not follow BMAD standard structure (only {count}/6 core sections present). + +You have options:" + +Present MENU OPTIONS below for user selection + +### 6. Present MENU OPTIONS (Non-Standard PRDs Only) + +**[A] Parity Check** - Analyze gaps and estimate effort to reach BMAD PRD parity +**[B] Validate As-Is** - Proceed with validation using current structure +**[C] Exit** - Exit validation and review format findings + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input +- Only proceed based on user selection + +#### Menu Handling Logic: + +- IF A (Parity Check): Read fully and follow: {altStepFile} (step-v-02b-parity-check.md) +- IF B (Validate As-Is): Display "Proceeding with validation..." then read fully and follow: {nextStepFile} +- IF C (Exit): Display format findings summary and exit validation +- IF Any other: help user respond, then redisplay menu + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- All ## Level 2 headers extracted successfully +- BMAD core sections checked systematically +- Format classified correctly based on section count +- Findings reported to validation report +- BMAD Standard/Variant PRDs proceed directly to next validation step +- Non-Standard PRDs pause and present options to user +- User can choose parity check, validate as-is, or exit + +### ❌ SYSTEM FAILURE: + +- Not extracting all headers before classification +- Incorrect format classification +- Not reporting findings to validation report +- Not pausing for non-standard PRDs +- Proceeding without user decision for non-standard formats + +**Master Rule:** Format detection determines validation path. Non-standard PRDs require user choice before proceeding. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md new file mode 100644 index 00000000..604265a9 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md @@ -0,0 +1,209 @@ +--- +name: 'step-v-02b-parity-check' +description: 'Document Parity Check - Analyze non-standard PRD and identify gaps to achieve BMAD PRD parity' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-03-density-validation.md' +prdFile: '{prd_file_path}' +validationReportPath: '{validation_report_path}' +--- + +# Step 2B: Document Parity Check + +## STEP GOAL: + +Analyze non-standard PRD and identify gaps to achieve BMAD PRD parity, presenting user with options for how to proceed. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring BMAD PRD standards expertise and gap analysis +- ✅ User brings domain knowledge and PRD context + +### Step-Specific Rules: + +- 🎯 Focus ONLY on analyzing gaps and estimating parity effort +- 🚫 FORBIDDEN to perform other validation checks in this step +- 💬 Approach: Systematic gap analysis with clear recommendations +- 🚪 This is an optional branch step - user chooses next action + +## EXECUTION PROTOCOLS: + +- 🎯 Analyze each BMAD PRD section for gaps +- 💾 Append parity analysis to validation report +- 📖 Present options and await user decision +- 🚫 FORBIDDEN to proceed without user selection + +## CONTEXT BOUNDARIES: + +- Available context: Non-standard PRD from step 2, validation report in progress +- Focus: Parity analysis only - what's missing, what's needed +- Limits: Don't perform validation checks, don't auto-proceed +- Dependencies: Step 2 classified PRD as non-standard and user chose parity check + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Analyze Each BMAD PRD Section + +For each of the 6 BMAD PRD core sections, analyze: + +**Executive Summary:** +- Does PRD have vision/overview? +- Is problem statement clear? +- Are target users identified? +- Gap: [What's missing or incomplete] + +**Success Criteria:** +- Are measurable goals defined? +- Is success clearly defined? +- Gap: [What's missing or incomplete] + +**Product Scope:** +- Is scope clearly defined? +- Are in-scope items listed? +- Are out-of-scope items listed? +- Gap: [What's missing or incomplete] + +**User Journeys:** +- Are user types/personas identified? +- Are user flows documented? +- Gap: [What's missing or incomplete] + +**Functional Requirements:** +- Are features/capabilities listed? +- Are requirements structured? +- Gap: [What's missing or incomplete] + +**Non-Functional Requirements:** +- Are quality attributes defined? +- Are performance/security/etc. requirements documented? +- Gap: [What's missing or incomplete] + +### 2. Estimate Effort to Reach Parity + +For each missing or incomplete section, estimate: + +**Effort Level:** +- Minimal - Section exists but needs minor enhancements +- Moderate - Section missing but content exists elsewhere in PRD +- Significant - Section missing, requires new content creation + +**Total Parity Effort:** +- Based on individual section estimates +- Classify overall: Quick / Moderate / Substantial effort + +### 3. Report Parity Analysis to Validation Report + +Append to validation report: + +```markdown +## Parity Analysis (Non-Standard PRD) + +### Section-by-Section Gap Analysis + +**Executive Summary:** +- Status: [Present/Missing/Incomplete] +- Gap: [specific gap description] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Success Criteria:** +- Status: [Present/Missing/Incomplete] +- Gap: [specific gap description] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Product Scope:** +- Status: [Present/Missing/Incomplete] +- Gap: [specific gap description] +- Effort to Complete: [Minimal/Moderate/Significant] + +**User Journeys:** +- Status: [Present/Missing/Incomplete] +- Gap: [specific gap description] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Functional Requirements:** +- Status: [Present/Missing/Incomplete] +- Gap: [specific gap description] +- Effort to Complete: [Minimal/Moderate/Significant] + +**Non-Functional Requirements:** +- Status: [Present/Missing/Incomplete] +- Gap: [specific gap description] +- Effort to Complete: [Minimal/Moderate/Significant] + +### Overall Parity Assessment + +**Overall Effort to Reach BMAD Standard:** [Quick/Moderate/Substantial] +**Recommendation:** [Brief recommendation based on analysis] +``` + +### 4. Present Parity Analysis and Options + +Display: + +"**Parity Analysis Complete** + +Your PRD is missing {count} of 6 core BMAD PRD sections. The overall effort to reach BMAD standard is: **{effort level}** + +**Quick Summary:** +[2-3 sentence summary of key gaps] + +**Recommendation:** +{recommendation from analysis} + +**How would you like to proceed?**" + +### 5. Present MENU OPTIONS + +**[C] Continue Validation** - Proceed with validation using current structure +**[E] Exit & Review** - Exit validation and review parity report +**[S] Save & Exit** - Save parity report and exit + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input +- Only proceed based on user selection + +#### Menu Handling Logic: + +- IF C (Continue): Display "Proceeding with validation..." then read fully and follow: {nextStepFile} +- IF E (Exit): Display parity summary and exit validation +- IF S (Save): Confirm saved, display summary, exit +- IF Any other: help user respond, then redisplay menu + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- All 6 BMAD PRD sections analyzed for gaps +- Effort estimates provided for each gap +- Overall parity effort assessed correctly +- Parity analysis reported to validation report +- Clear summary presented to user +- User can choose to continue validation, exit, or save report + +### ❌ SYSTEM FAILURE: + +- Not analyzing all 6 sections systematically +- Missing effort estimates +- Not reporting parity analysis to validation report +- Auto-proceeding without user decision +- Unclear recommendations + +**Master Rule:** Parity check informs user of gaps and effort, but user decides whether to proceed with validation or address gaps first. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md new file mode 100644 index 00000000..d00478c1 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md @@ -0,0 +1,174 @@ +--- +name: 'step-v-03-density-validation' +description: 'Information Density Check - Scan for anti-patterns that violate information density principles' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-04-brief-coverage-validation.md' +prdFile: '{prd_file_path}' +validationReportPath: '{validation_report_path}' +--- + +# Step 3: Information Density Validation + +## STEP GOAL: + +Validate PRD meets BMAD information density standards by scanning for conversational filler, wordy phrases, and redundant expressions that violate conciseness principles. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring analytical rigor and attention to detail +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on information density anti-patterns +- 🚫 FORBIDDEN to validate other aspects in this step +- 💬 Approach: Systematic scanning and categorization +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Scan PRD for density anti-patterns systematically +- 💾 Append density findings to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: PRD file, validation report with format findings +- Focus: Information density validation only +- Limits: Don't validate other aspects, don't pause for user input +- Dependencies: Step 2 completed - format classification done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Attempt Sub-Process Validation + +**Try to use Task tool to spawn a subprocess:** + +"Perform information density validation on this PRD: + +1. Load the PRD file +2. Scan for the following anti-patterns: + - Conversational filler phrases (examples: 'The system will allow users to...', 'It is important to note that...', 'In order to') + - Wordy phrases (examples: 'Due to the fact that', 'In the event of', 'For the purpose of') + - Redundant phrases (examples: 'Future plans', 'Absolutely essential', 'Past history') +3. Count violations by category with line numbers +4. Classify severity: Critical (>10 violations), Warning (5-10), Pass (<5) + +Return structured findings with counts and examples." + +### 2. Graceful Degradation (if Task tool unavailable) + +If Task tool unavailable, perform analysis directly: + +**Scan for conversational filler patterns:** +- "The system will allow users to..." +- "It is important to note that..." +- "In order to" +- "For the purpose of" +- "With regard to" +- Count occurrences and note line numbers + +**Scan for wordy phrases:** +- "Due to the fact that" (use "because") +- "In the event of" (use "if") +- "At this point in time" (use "now") +- "In a manner that" (use "how") +- Count occurrences and note line numbers + +**Scan for redundant phrases:** +- "Future plans" (just "plans") +- "Past history" (just "history") +- "Absolutely essential" (just "essential") +- "Completely finish" (just "finish") +- Count occurrences and note line numbers + +### 3. Classify Severity + +**Calculate total violations:** +- Conversational filler count +- Wordy phrases count +- Redundant phrases count +- Total = sum of all categories + +**Determine severity:** +- **Critical:** Total > 10 violations +- **Warning:** Total 5-10 violations +- **Pass:** Total < 5 violations + +### 4. Report Density Findings to Validation Report + +Append to validation report: + +```markdown +## Information Density Validation + +**Anti-Pattern Violations:** + +**Conversational Filler:** {count} occurrences +[If count > 0, list examples with line numbers] + +**Wordy Phrases:** {count} occurrences +[If count > 0, list examples with line numbers] + +**Redundant Phrases:** {count} occurrences +[If count > 0, list examples with line numbers] + +**Total Violations:** {total} + +**Severity Assessment:** [Critical/Warning/Pass] + +**Recommendation:** +[If Critical] "PRD requires significant revision to improve information density. Every sentence should carry weight without filler." +[If Warning] "PRD would benefit from reducing wordiness and eliminating filler phrases." +[If Pass] "PRD demonstrates good information density with minimal violations." +``` + +### 5. Display Progress and Auto-Proceed + +Display: "**Information Density Validation Complete** + +Severity: {Critical/Warning/Pass} + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-04-brief-coverage-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- PRD scanned for all three anti-pattern categories +- Violations counted with line numbers +- Severity classified correctly +- Findings reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not scanning all anti-pattern categories +- Missing severity classification +- Not reporting findings to validation report +- Pausing for user input (should auto-proceed) +- Not attempting subprocess architecture + +**Master Rule:** Information density validation runs autonomously. Scan, classify, report, auto-proceed. No user interaction needed. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md new file mode 100644 index 00000000..60ad8684 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md @@ -0,0 +1,214 @@ +--- +name: 'step-v-04-brief-coverage-validation' +description: 'Product Brief Coverage Check - Validate PRD covers all content from Product Brief (if used as input)' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-05-measurability-validation.md' +prdFile: '{prd_file_path}' +productBrief: '{product_brief_path}' +validationReportPath: '{validation_report_path}' +--- + +# Step 4: Product Brief Coverage Validation + +## STEP GOAL: + +Validate that PRD covers all content from Product Brief (if brief was used as input), mapping brief content to PRD sections and identifying gaps. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring analytical rigor and traceability expertise +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on Product Brief coverage (conditional on brief existence) +- 🚫 FORBIDDEN to validate other aspects in this step +- 💬 Approach: Systematic mapping and gap analysis +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Check if Product Brief exists in input documents +- 💬 If no brief: Skip this check and report "N/A - No Product Brief" +- 🎯 If brief exists: Map brief content to PRD sections +- 💾 Append coverage findings to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: PRD file, input documents from step 1, validation report +- Focus: Product Brief coverage only (conditional) +- Limits: Don't validate other aspects, conditional execution +- Dependencies: Step 1 completed - input documents loaded + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Check for Product Brief + +Check if Product Brief was loaded in step 1's inputDocuments: + +**IF no Product Brief found:** +Append to validation report: +```markdown +## Product Brief Coverage + +**Status:** N/A - No Product Brief was provided as input +``` + +Display: "**Product Brief Coverage: Skipped** (No Product Brief provided) + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} + +**IF Product Brief exists:** Continue to step 2 below + +### 2. Attempt Sub-Process Validation + +**Try to use Task tool to spawn a subprocess:** + +"Perform Product Brief coverage validation: + +1. Load the Product Brief +2. Extract key content: + - Vision statement + - Target users/personas + - Problem statement + - Key features + - Goals/objectives + - Differentiators + - Constraints +3. For each item, search PRD for corresponding coverage +4. Classify coverage: Fully Covered / Partially Covered / Not Found / Intentionally Excluded +5. Note any gaps with severity: Critical / Moderate / Informational + +Return structured coverage map with classifications." + +### 3. Graceful Degradation (if Task tool unavailable) + +If Task tool unavailable, perform analysis directly: + +**Extract from Product Brief:** +- Vision: What is this product? +- Users: Who is it for? +- Problem: What problem does it solve? +- Features: What are the key capabilities? +- Goals: What are the success criteria? +- Differentiators: What makes it unique? + +**For each item, search PRD:** +- Scan Executive Summary for vision +- Check User Journeys or user personas +- Look for problem statement +- Review Functional Requirements for features +- Check Success Criteria section +- Search for differentiators + +**Classify coverage:** +- **Fully Covered:** Content present and complete +- **Partially Covered:** Content present but incomplete +- **Not Found:** Content missing from PRD +- **Intentionally Excluded:** Content explicitly out of scope + +### 4. Assess Coverage and Severity + +**For each gap (Partially Covered or Not Found):** +- Is this Critical? (Core vision, primary users, main features) +- Is this Moderate? (Secondary features, some goals) +- Is this Informational? (Nice-to-have features, minor details) + +**Note:** Some exclusions may be intentional (valid scoping decisions) + +### 5. Report Coverage Findings to Validation Report + +Append to validation report: + +```markdown +## Product Brief Coverage + +**Product Brief:** {brief_file_name} + +### Coverage Map + +**Vision Statement:** [Fully/Partially/Not Found/Intentionally Excluded] +[If gap: Note severity and specific missing content] + +**Target Users:** [Fully/Partially/Not Found/Intentionally Excluded] +[If gap: Note severity and specific missing content] + +**Problem Statement:** [Fully/Partially/Not Found/Intentionally Excluded] +[If gap: Note severity and specific missing content] + +**Key Features:** [Fully/Partially/Not Found/Intentionally Excluded] +[If gap: List specific features with severity] + +**Goals/Objectives:** [Fully/Partially/Not Found/Intentionally Excluded] +[If gap: Note severity and specific missing content] + +**Differentiators:** [Fully/Partially/Not Found/Intentionally Excluded] +[If gap: Note severity and specific missing content] + +### Coverage Summary + +**Overall Coverage:** [percentage or qualitative assessment] +**Critical Gaps:** [count] [list if any] +**Moderate Gaps:** [count] [list if any] +**Informational Gaps:** [count] [list if any] + +**Recommendation:** +[If critical gaps exist] "PRD should be revised to cover critical Product Brief content." +[If moderate gaps] "Consider addressing moderate gaps for complete coverage." +[If minimal gaps] "PRD provides good coverage of Product Brief content." +``` + +### 6. Display Progress and Auto-Proceed + +Display: "**Product Brief Coverage Validation Complete** + +Overall Coverage: {assessment} + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-05-measurability-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Checked for Product Brief existence correctly +- If no brief: Reported "N/A" and skipped gracefully +- If brief exists: Mapped all key brief content to PRD sections +- Coverage classified appropriately (Fully/Partially/Not Found/Intentionally Excluded) +- Severity assessed for gaps (Critical/Moderate/Informational) +- Findings reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not checking for brief existence before attempting validation +- If brief exists: not mapping all key content areas +- Missing coverage classifications +- Not reporting findings to validation report +- Not auto-proceeding + +**Master Rule:** Product Brief coverage is conditional - skip if no brief, validate thoroughly if brief exists. Always auto-proceed. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md new file mode 100644 index 00000000..a9718718 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md @@ -0,0 +1,228 @@ +--- +name: 'step-v-05-measurability-validation' +description: 'Measurability Validation - Validate that all requirements (FRs and NFRs) are measurable and testable' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-06-traceability-validation.md' +prdFile: '{prd_file_path}' +validationReportPath: '{validation_report_path}' +--- + +# Step 5: Measurability Validation + +## STEP GOAL: + +Validate that all Functional Requirements (FRs) and Non-Functional Requirements (NFRs) are measurable, testable, and follow proper format without implementation details. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring analytical rigor and requirements engineering expertise +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on FR and NFR measurability +- 🚫 FORBIDDEN to validate other aspects in this step +- 💬 Approach: Systematic requirement-by-requirement analysis +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Extract all FRs and NFRs from PRD +- 💾 Validate each for measurability and format +- 📖 Append findings to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: PRD file, validation report +- Focus: FR and NFR measurability only +- Limits: Don't validate other aspects, don't pause for user input +- Dependencies: Steps 2-4 completed - initial validation checks done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Attempt Sub-Process Validation + +**Try to use Task tool to spawn a subprocess:** + +"Perform measurability validation on this PRD: + +**Functional Requirements (FRs):** +1. Extract all FRs from Functional Requirements section +2. Check each FR for: + - '[Actor] can [capability]' format compliance + - No subjective adjectives (easy, fast, simple, intuitive, etc.) + - No vague quantifiers (multiple, several, some, many, etc.) + - No implementation details (technology names, library names, data structures unless capability-relevant) +3. Document violations with line numbers + +**Non-Functional Requirements (NFRs):** +1. Extract all NFRs from Non-Functional Requirements section +2. Check each NFR for: + - Specific metrics with measurement methods + - Template compliance (criterion, metric, measurement method, context) + - Context included (why this matters, who it affects) +3. Document violations with line numbers + +Return structured findings with violation counts and examples." + +### 2. Graceful Degradation (if Task tool unavailable) + +If Task tool unavailable, perform analysis directly: + +**Functional Requirements Analysis:** + +Extract all FRs and check each for: + +**Format compliance:** +- Does it follow "[Actor] can [capability]" pattern? +- Is actor clearly defined? +- Is capability actionable and testable? + +**No subjective adjectives:** +- Scan for: easy, fast, simple, intuitive, user-friendly, responsive, quick, efficient (without metrics) +- Note line numbers + +**No vague quantifiers:** +- Scan for: multiple, several, some, many, few, various, number of +- Note line numbers + +**No implementation details:** +- Scan for: React, Vue, Angular, PostgreSQL, MongoDB, AWS, Docker, Kubernetes, Redux, etc. +- Unless capability-relevant (e.g., "API consumers can access...") +- Note line numbers + +**Non-Functional Requirements Analysis:** + +Extract all NFRs and check each for: + +**Specific metrics:** +- Is there a measurable criterion? (e.g., "response time < 200ms", not "fast response") +- Can this be measured or tested? + +**Template compliance:** +- Criterion defined? +- Metric specified? +- Measurement method included? +- Context provided? + +### 3. Tally Violations + +**FR Violations:** +- Format violations: count +- Subjective adjectives: count +- Vague quantifiers: count +- Implementation leakage: count +- Total FR violations: sum + +**NFR Violations:** +- Missing metrics: count +- Incomplete template: count +- Missing context: count +- Total NFR violations: sum + +**Total violations:** FR violations + NFR violations + +### 4. Report Measurability Findings to Validation Report + +Append to validation report: + +```markdown +## Measurability Validation + +### Functional Requirements + +**Total FRs Analyzed:** {count} + +**Format Violations:** {count} +[If violations exist, list examples with line numbers] + +**Subjective Adjectives Found:** {count} +[If found, list examples with line numbers] + +**Vague Quantifiers Found:** {count} +[If found, list examples with line numbers] + +**Implementation Leakage:** {count} +[If found, list examples with line numbers] + +**FR Violations Total:** {total} + +### Non-Functional Requirements + +**Total NFRs Analyzed:** {count} + +**Missing Metrics:** {count} +[If missing, list examples with line numbers] + +**Incomplete Template:** {count} +[If incomplete, list examples with line numbers] + +**Missing Context:** {count} +[If missing, list examples with line numbers] + +**NFR Violations Total:** {total} + +### Overall Assessment + +**Total Requirements:** {FRs + NFRs} +**Total Violations:** {FR violations + NFR violations} + +**Severity:** [Critical if >10 violations, Warning if 5-10, Pass if <5] + +**Recommendation:** +[If Critical] "Many requirements are not measurable or testable. Requirements must be revised to be testable for downstream work." +[If Warning] "Some requirements need refinement for measurability. Focus on violating requirements above." +[If Pass] "Requirements demonstrate good measurability with minimal issues." +``` + +### 5. Display Progress and Auto-Proceed + +Display: "**Measurability Validation Complete** + +Total Violations: {count} ({severity}) + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-06-traceability-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- All FRs extracted and analyzed for measurability +- All NFRs extracted and analyzed for measurability +- Violations documented with line numbers +- Severity assessed correctly +- Findings reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not analyzing all FRs and NFRs +- Missing line numbers for violations +- Not reporting findings to validation report +- Not assessing severity +- Not auto-proceeding + +**Master Rule:** Requirements must be testable to be useful. Validate every requirement for measurability, document violations, auto-proceed. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md new file mode 100644 index 00000000..84bf9cce --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md @@ -0,0 +1,217 @@ +--- +name: 'step-v-06-traceability-validation' +description: 'Traceability Validation - Validate the traceability chain from vision → success → journeys → FRs is intact' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-07-implementation-leakage-validation.md' +prdFile: '{prd_file_path}' +validationReportPath: '{validation_report_path}' +--- + +# Step 6: Traceability Validation + +## STEP GOAL: + +Validate the traceability chain from Executive Summary → Success Criteria → User Journeys → Functional Requirements is intact, ensuring every requirement traces back to a user need or business objective. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring analytical rigor and traceability matrix expertise +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on traceability chain validation +- 🚫 FORBIDDEN to validate other aspects in this step +- 💬 Approach: Systematic chain validation and orphan detection +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Build and validate traceability matrix +- 💾 Identify broken chains and orphan requirements +- 📖 Append findings to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: PRD file, validation report +- Focus: Traceability chain validation only +- Limits: Don't validate other aspects, don't pause for user input +- Dependencies: Steps 2-5 completed - initial validations done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Attempt Sub-Process Validation + +**Try to use Task tool to spawn a subprocess:** + +"Perform traceability validation on this PRD: + +1. Extract content from Executive Summary (vision, goals) +2. Extract Success Criteria +3. Extract User Journeys (user types, flows, outcomes) +4. Extract Functional Requirements (FRs) +5. Extract Product Scope (in-scope items) + +**Validate chains:** +- Executive Summary → Success Criteria: Does vision align with defined success? +- Success Criteria → User Journeys: Are success criteria supported by user journeys? +- User Journeys → Functional Requirements: Does each FR trace back to a user journey? +- Scope → FRs: Do MVP scope FRs align with in-scope items? + +**Identify orphans:** +- FRs not traceable to any user journey or business objective +- Success criteria not supported by user journeys +- User journeys without supporting FRs + +Build traceability matrix and identify broken chains and orphan FRs. + +Return structured findings with chain status and orphan list." + +### 2. Graceful Degradation (if Task tool unavailable) + +If Task tool unavailable, perform analysis directly: + +**Step 1: Extract key elements** +- Executive Summary: Note vision, goals, objectives +- Success Criteria: List all criteria +- User Journeys: List user types and their flows +- Functional Requirements: List all FRs +- Product Scope: List in-scope items + +**Step 2: Validate Executive Summary → Success Criteria** +- Does Executive Summary mention the success dimensions? +- Are Success Criteria aligned with vision? +- Note any misalignment + +**Step 3: Validate Success Criteria → User Journeys** +- For each success criterion, is there a user journey that achieves it? +- Note success criteria without supporting journeys + +**Step 4: Validate User Journeys → FRs** +- For each user journey/flow, are there FRs that enable it? +- List FRs with no clear user journey origin +- Note orphan FRs (requirements without traceable source) + +**Step 5: Validate Scope → FR Alignment** +- Does MVP scope align with essential FRs? +- Are in-scope items supported by FRs? +- Note misalignments + +**Step 6: Build traceability matrix** +- Map each FR to its source (journey or business objective) +- Note orphan FRs +- Identify broken chains + +### 3. Tally Traceability Issues + +**Broken chains:** +- Executive Summary → Success Criteria gaps: count +- Success Criteria → User Journeys gaps: count +- User Journeys → FRs gaps: count +- Scope → FR misalignments: count + +**Orphan elements:** +- Orphan FRs (no traceable source): count +- Unsupported success criteria: count +- User journeys without FRs: count + +**Total issues:** Sum of all broken chains and orphans + +### 4. Report Traceability Findings to Validation Report + +Append to validation report: + +```markdown +## Traceability Validation + +### Chain Validation + +**Executive Summary → Success Criteria:** [Intact/Gaps Identified] +{If gaps: List specific misalignments} + +**Success Criteria → User Journeys:** [Intact/Gaps Identified] +{If gaps: List unsupported success criteria} + +**User Journeys → Functional Requirements:** [Intact/Gaps Identified] +{If gaps: List journeys without supporting FRs} + +**Scope → FR Alignment:** [Intact/Misaligned] +{If misaligned: List specific issues} + +### Orphan Elements + +**Orphan Functional Requirements:** {count} +{List orphan FRs with numbers} + +**Unsupported Success Criteria:** {count} +{List unsupported criteria} + +**User Journeys Without FRs:** {count} +{List journeys without FRs} + +### Traceability Matrix + +{Summary table showing traceability coverage} + +**Total Traceability Issues:** {total} + +**Severity:** [Critical if orphan FRs exist, Warning if gaps, Pass if intact] + +**Recommendation:** +[If Critical] "Orphan requirements exist - every FR must trace back to a user need or business objective." +[If Warning] "Traceability gaps identified - strengthen chains to ensure all requirements are justified." +[If Pass] "Traceability chain is intact - all requirements trace to user needs or business objectives." +``` + +### 5. Display Progress and Auto-Proceed + +Display: "**Traceability Validation Complete** + +Total Issues: {count} ({severity}) + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-07-implementation-leakage-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- All traceability chains validated systematically +- Orphan FRs identified with numbers +- Broken chains documented +- Traceability matrix built +- Severity assessed correctly +- Findings reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not validating all traceability chains +- Missing orphan FR detection +- Not building traceability matrix +- Not reporting findings to validation report +- Not auto-proceeding + +**Master Rule:** Every requirement should trace to a user need or business objective. Orphan FRs indicate broken traceability that must be fixed. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md new file mode 100644 index 00000000..923f9969 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md @@ -0,0 +1,205 @@ +--- +name: 'step-v-07-implementation-leakage-validation' +description: 'Implementation Leakage Check - Ensure FRs and NFRs don\'t include implementation details' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-08-domain-compliance-validation.md' +prdFile: '{prd_file_path}' +validationReportPath: '{validation_report_path}' +--- + +# Step 7: Implementation Leakage Validation + +## STEP GOAL: + +Ensure Functional Requirements and Non-Functional Requirements don't include implementation details - they should specify WHAT, not HOW. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring analytical rigor and separation of concerns expertise +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on implementation leakage detection +- 🚫 FORBIDDEN to validate other aspects in this step +- 💬 Approach: Systematic scanning for technology and implementation terms +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Scan FRs and NFRs for implementation terms +- 💾 Distinguish capability-relevant vs leakage +- 📖 Append findings to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: PRD file, validation report +- Focus: Implementation leakage detection only +- Limits: Don't validate other aspects, don't pause for user input +- Dependencies: Steps 2-6 completed - initial validations done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Attempt Sub-Process Validation + +**Try to use Task tool to spawn a subprocess:** + +"Perform implementation leakage validation on this PRD: + +**Scan for:** +1. Technology names (React, Vue, Angular, PostgreSQL, MongoDB, AWS, GCP, Azure, Docker, Kubernetes, etc.) +2. Library names (Redux, axios, lodash, Express, Django, Rails, Spring, etc.) +3. Data structures (JSON, XML, CSV) unless relevant to capability +4. Architecture patterns (MVC, microservices, serverless) unless business requirement +5. Protocol names (HTTP, REST, GraphQL, WebSockets) - check if capability-relevant + +**For each term found:** +- Is this capability-relevant? (e.g., 'API consumers can access...' - API is capability) +- Or is this implementation detail? (e.g., 'React component for...' - implementation) + +Document violations with line numbers and explanation. + +Return structured findings with leakage counts and examples." + +### 2. Graceful Degradation (if Task tool unavailable) + +If Task tool unavailable, perform analysis directly: + +**Implementation leakage terms to scan for:** + +**Frontend Frameworks:** +React, Vue, Angular, Svelte, Solid, Next.js, Nuxt, etc. + +**Backend Frameworks:** +Express, Django, Rails, Spring, Laravel, FastAPI, etc. + +**Databases:** +PostgreSQL, MySQL, MongoDB, Redis, DynamoDB, Cassandra, etc. + +**Cloud Platforms:** +AWS, GCP, Azure, Cloudflare, Vercel, Netlify, etc. + +**Infrastructure:** +Docker, Kubernetes, Terraform, Ansible, etc. + +**Libraries:** +Redux, Zustand, axios, fetch, lodash, jQuery, etc. + +**Data Formats:** +JSON, XML, YAML, CSV (unless capability-relevant) + +**For each term found in FRs/NFRs:** +- Determine if it's capability-relevant or implementation leakage +- Example: "API consumers can access data via REST endpoints" - API/REST is capability +- Example: "React components fetch data using Redux" - implementation leakage + +**Count violations and note line numbers** + +### 3. Tally Implementation Leakage + +**By category:** +- Frontend framework leakage: count +- Backend framework leakage: count +- Database leakage: count +- Cloud platform leakage: count +- Infrastructure leakage: count +- Library leakage: count +- Other implementation details: count + +**Total implementation leakage violations:** sum + +### 4. Report Implementation Leakage Findings to Validation Report + +Append to validation report: + +```markdown +## Implementation Leakage Validation + +### Leakage by Category + +**Frontend Frameworks:** {count} violations +{If violations, list examples with line numbers} + +**Backend Frameworks:** {count} violations +{If violations, list examples with line numbers} + +**Databases:** {count} violations +{If violations, list examples with line numbers} + +**Cloud Platforms:** {count} violations +{If violations, list examples with line numbers} + +**Infrastructure:** {count} violations +{If violations, list examples with line numbers} + +**Libraries:** {count} violations +{If violations, list examples with line numbers} + +**Other Implementation Details:** {count} violations +{If violations, list examples with line numbers} + +### Summary + +**Total Implementation Leakage Violations:** {total} + +**Severity:** [Critical if >5 violations, Warning if 2-5, Pass if <2] + +**Recommendation:** +[If Critical] "Extensive implementation leakage found. Requirements specify HOW instead of WHAT. Remove all implementation details - these belong in architecture, not PRD." +[If Warning] "Some implementation leakage detected. Review violations and remove implementation details from requirements." +[If Pass] "No significant implementation leakage found. Requirements properly specify WHAT without HOW." + +**Note:** API consumers, GraphQL (when required), and other capability-relevant terms are acceptable when they describe WHAT the system must do, not HOW to build it. +``` + +### 5. Display Progress and Auto-Proceed + +Display: "**Implementation Leakage Validation Complete** + +Total Violations: {count} ({severity}) + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-08-domain-compliance-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Scanned FRs and NFRs for all implementation term categories +- Distinguished capability-relevant from implementation leakage +- Violations documented with line numbers and explanations +- Severity assessed correctly +- Findings reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not scanning all implementation term categories +- Not distinguishing capability-relevant from leakage +- Missing line numbers for violations +- Not reporting findings to validation report +- Not auto-proceeding + +**Master Rule:** Requirements specify WHAT, not HOW. Implementation details belong in architecture documents, not PRDs. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md new file mode 100644 index 00000000..562697ed --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md @@ -0,0 +1,243 @@ +--- +name: 'step-v-08-domain-compliance-validation' +description: 'Domain Compliance Validation - Validate domain-specific requirements are present for high-complexity domains' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-09-project-type-validation.md' +prdFile: '{prd_file_path}' +prdFrontmatter: '{prd_frontmatter}' +validationReportPath: '{validation_report_path}' +domainComplexityData: '../data/domain-complexity.csv' +--- + +# Step 8: Domain Compliance Validation + +## STEP GOAL: + +Validate domain-specific requirements are present for high-complexity domains (Healthcare, Fintech, GovTech, etc.), ensuring regulatory and compliance requirements are properly documented. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring domain expertise and compliance knowledge +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on domain-specific compliance requirements +- 🚫 FORBIDDEN to validate other aspects in this step +- 💬 Approach: Conditional validation based on domain classification +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Check classification.domain from PRD frontmatter +- 💬 If low complexity (general): Skip detailed checks +- 🎯 If high complexity: Validate required special sections +- 💾 Append compliance findings to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: PRD file with frontmatter classification, validation report +- Focus: Domain compliance only (conditional on domain complexity) +- Limits: Don't validate other aspects, conditional execution +- Dependencies: Steps 2-7 completed - format and requirements validation done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Load Domain Complexity Data + +Load and read the complete file at: +`{domainComplexityData}` (../data/domain-complexity.csv) + +This CSV contains: +- Domain classifications and complexity levels (high/medium/low) +- Required special sections for each domain +- Key concerns and requirements for regulated industries + +Internalize this data - it drives which domains require special compliance sections. + +### 2. Extract Domain Classification + +From PRD frontmatter, extract: +- `classification.domain` - what domain is this PRD for? + +**If no domain classification found:** +Treat as "general" (low complexity) and proceed to step 4 + +### 2. Determine Domain Complexity + +**Low complexity domains (skip detailed checks):** +- General +- Consumer apps (standard e-commerce, social, productivity) +- Content websites +- Business tools (standard) + +**High complexity domains (require special sections):** +- Healthcare / Healthtech +- Fintech / Financial services +- GovTech / Public sector +- EdTech (educational records, accredited courses) +- Legal tech +- Other regulated domains + +### 3. For High-Complexity Domains: Validate Required Special Sections + +**Attempt subprocess validation:** + +"Perform domain compliance validation for {domain}: + +Based on {domain} requirements, check PRD for: + +**Healthcare:** +- Clinical Requirements section +- Regulatory Pathway (FDA, HIPAA, etc.) +- Safety Measures +- HIPAA Compliance (data privacy, security) +- Patient safety considerations + +**Fintech:** +- Compliance Matrix (SOC2, PCI-DSS, GDPR, etc.) +- Security Architecture +- Audit Requirements +- Fraud Prevention measures +- Financial transaction handling + +**GovTech:** +- Accessibility Standards (WCAG 2.1 AA, Section 508) +- Procurement Compliance +- Security Clearance requirements +- Data residency requirements + +**Other regulated domains:** +- Check for domain-specific regulatory sections +- Compliance requirements +- Special considerations + +For each required section: +- Is it present in PRD? +- Is it adequately documented? +- Note any gaps + +Return compliance matrix with presence/adequacy assessment." + +**Graceful degradation (if no Task tool):** +- Manually check for required sections based on domain +- List present sections and missing sections +- Assess adequacy of documentation + +### 5. For Low-Complexity Domains: Skip Detailed Checks + +Append to validation report: +```markdown +## Domain Compliance Validation + +**Domain:** {domain} +**Complexity:** Low (general/standard) +**Assessment:** N/A - No special domain compliance requirements + +**Note:** This PRD is for a standard domain without regulatory compliance requirements. +``` + +Display: "**Domain Compliance Validation Skipped** + +Domain: {domain} (low complexity) + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} + +### 6. Report Compliance Findings (High-Complexity Domains) + +Append to validation report: + +```markdown +## Domain Compliance Validation + +**Domain:** {domain} +**Complexity:** High (regulated) + +### Required Special Sections + +**{Section 1 Name}:** [Present/Missing/Adequate] +{If missing or inadequate: Note specific gaps} + +**{Section 2 Name}:** [Present/Missing/Adequate] +{If missing or inadequate: Note specific gaps} + +[Continue for all required sections] + +### Compliance Matrix + +| Requirement | Status | Notes | +|-------------|--------|-------| +| {Requirement 1} | [Met/Partial/Missing] | {Notes} | +| {Requirement 2} | [Met/Partial/Missing] | {Notes} | +[... continue for all requirements] + +### Summary + +**Required Sections Present:** {count}/{total} +**Compliance Gaps:** {count} + +**Severity:** [Critical if missing regulatory sections, Warning if incomplete, Pass if complete] + +**Recommendation:** +[If Critical] "PRD is missing required domain-specific compliance sections. These are essential for {domain} products." +[If Warning] "Some domain compliance sections are incomplete. Strengthen documentation for full compliance." +[If Pass] "All required domain compliance sections are present and adequately documented." +``` + +### 7. Display Progress and Auto-Proceed + +Display: "**Domain Compliance Validation Complete** + +Domain: {domain} ({complexity}) +Compliance Status: {status} + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-09-project-type-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Domain classification extracted correctly +- Complexity assessed appropriately +- Low complexity domains: Skipped with clear "N/A" documentation +- High complexity domains: All required sections checked +- Compliance matrix built with status for each requirement +- Severity assessed correctly +- Findings reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not checking domain classification before proceeding +- Performing detailed checks on low complexity domains +- For high complexity: missing required section checks +- Not building compliance matrix +- Not reporting findings to validation report +- Not auto-proceeding + +**Master Rule:** Domain compliance is conditional. High-complexity domains require special sections - low complexity domains skip these checks. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md new file mode 100644 index 00000000..aea41d92 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md @@ -0,0 +1,263 @@ +--- +name: 'step-v-09-project-type-validation' +description: 'Project-Type Compliance Validation - Validate project-type specific requirements are properly documented' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-10-smart-validation.md' +prdFile: '{prd_file_path}' +prdFrontmatter: '{prd_frontmatter}' +validationReportPath: '{validation_report_path}' +projectTypesData: '../data/project-types.csv' +--- + +# Step 9: Project-Type Compliance Validation + +## STEP GOAL: + +Validate project-type specific requirements are properly documented - different project types (api_backend, web_app, mobile_app, etc.) have different required and excluded sections. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring project type expertise and architectural knowledge +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on project-type compliance +- 🚫 FORBIDDEN to validate other aspects in this step +- 💬 Approach: Validate required sections present, excluded sections absent +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Check classification.projectType from PRD frontmatter +- 🎯 Validate required sections for that project type are present +- 🎯 Validate excluded sections for that project type are absent +- 💾 Append compliance findings to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: PRD file with frontmatter classification, validation report +- Focus: Project-type compliance only +- Limits: Don't validate other aspects, don't pause for user input +- Dependencies: Steps 2-8 completed - domain and requirements validation done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Load Project Types Data + +Load and read the complete file at: +`{projectTypesData}` (../data/project-types.csv) + +This CSV contains: +- Detection signals for each project type +- Required sections for each project type +- Skip/excluded sections for each project type +- Innovation signals + +Internalize this data - it drives what sections must be present or absent for each project type. + +### 2. Extract Project Type Classification + +From PRD frontmatter, extract: +- `classification.projectType` - what type of project is this? + +**Common project types:** +- api_backend +- web_app +- mobile_app +- desktop_app +- data_pipeline +- ml_system +- library_sdk +- infrastructure +- other + +**If no projectType classification found:** +Assume "web_app" (most common) and note in findings + +### 3. Determine Required and Excluded Sections from CSV Data + +**From loaded project-types.csv data, for this project type:** + +**Required sections:** (from required_sections column) +These MUST be present in the PRD + +**Skip sections:** (from skip_sections column) +These MUST NOT be present in the PRD + +**Example mappings from CSV:** +- api_backend: Required=[endpoint_specs, auth_model, data_schemas], Skip=[ux_ui, visual_design] +- mobile_app: Required=[platform_reqs, device_permissions, offline_mode], Skip=[desktop_features, cli_commands] +- cli_tool: Required=[command_structure, output_formats, config_schema], Skip=[visual_design, ux_principles, touch_interactions] +- etc. + +### 4. Validate Against CSV-Based Requirements + +**Based on project type, determine:** + +**api_backend:** +- Required: Endpoint Specs, Auth Model, Data Schemas, API Versioning +- Excluded: UX/UI sections, mobile-specific sections + +**web_app:** +- Required: User Journeys, UX/UI Requirements, Responsive Design +- Excluded: None typically + +**mobile_app:** +- Required: Mobile UX, Platform specifics (iOS/Android), Offline mode +- Excluded: Desktop-specific sections + +**desktop_app:** +- Required: Desktop UX, Platform specifics (Windows/Mac/Linux) +- Excluded: Mobile-specific sections + +**data_pipeline:** +- Required: Data Sources, Data Transformation, Data Sinks, Error Handling +- Excluded: UX/UI sections + +**ml_system:** +- Required: Model Requirements, Training Data, Inference Requirements, Model Performance +- Excluded: UX/UI sections (unless ML UI) + +**library_sdk:** +- Required: API Surface, Usage Examples, Integration Guide +- Excluded: UX/UI sections, deployment sections + +**infrastructure:** +- Required: Infrastructure Components, Deployment, Monitoring, Scaling +- Excluded: Feature requirements (this is infrastructure, not product) + +### 4. Attempt Sub-Process Validation + +"Perform project-type compliance validation for {projectType}: + +**Check that required sections are present:** +{List required sections for this project type} +For each: Is it present in PRD? Is it adequately documented? + +**Check that excluded sections are absent:** +{List excluded sections for this project type} +For each: Is it absent from PRD? (Should not be present) + +Build compliance table showing: +- Required sections: [Present/Missing/Incomplete] +- Excluded sections: [Absent/Present] (Present = violation) + +Return compliance table with findings." + +**Graceful degradation (if no Task tool):** +- Manually check PRD for required sections +- Manually check PRD for excluded sections +- Build compliance table + +### 5. Build Compliance Table + +**Required sections check:** +- For each required section: Present / Missing / Incomplete +- Count: Required sections present vs total required + +**Excluded sections check:** +- For each excluded section: Absent / Present (violation) +- Count: Excluded sections present (violations) + +**Total compliance score:** +- Required: {present}/{total} +- Excluded violations: {count} + +### 6. Report Project-Type Compliance Findings to Validation Report + +Append to validation report: + +```markdown +## Project-Type Compliance Validation + +**Project Type:** {projectType} + +### Required Sections + +**{Section 1}:** [Present/Missing/Incomplete] +{If missing or incomplete: Note specific gaps} + +**{Section 2}:** [Present/Missing/Incomplete] +{If missing or incomplete: Note specific gaps} + +[Continue for all required sections] + +### Excluded Sections (Should Not Be Present) + +**{Section 1}:** [Absent/Present] ✓ +{If present: This section should not be present for {projectType}} + +**{Section 2}:** [Absent/Present] ✓ +{If present: This section should not be present for {projectType}} + +[Continue for all excluded sections] + +### Compliance Summary + +**Required Sections:** {present}/{total} present +**Excluded Sections Present:** {violations} (should be 0) +**Compliance Score:** {percentage}% + +**Severity:** [Critical if required sections missing, Warning if incomplete, Pass if complete] + +**Recommendation:** +[If Critical] "PRD is missing required sections for {projectType}. Add missing sections to properly specify this type of project." +[If Warning] "Some required sections for {projectType} are incomplete. Strengthen documentation." +[If Pass] "All required sections for {projectType} are present. No excluded sections found." +``` + +### 7. Display Progress and Auto-Proceed + +Display: "**Project-Type Compliance Validation Complete** + +Project Type: {projectType} +Compliance: {score}% + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-10-smart-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Project type extracted correctly (or default assumed) +- Required sections validated for presence and completeness +- Excluded sections validated for absence +- Compliance table built with status for all sections +- Severity assessed correctly +- Findings reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not checking project type before proceeding +- Missing required section checks +- Missing excluded section checks +- Not building compliance table +- Not reporting findings to validation report +- Not auto-proceeding + +**Master Rule:** Different project types have different requirements. API PRDs don't need UX sections - validate accordingly. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md new file mode 100644 index 00000000..e937c752 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md @@ -0,0 +1,209 @@ +--- +name: 'step-v-10-smart-validation' +description: 'SMART Requirements Validation - Validate Functional Requirements meet SMART quality criteria' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-11-holistic-quality-validation.md' +prdFile: '{prd_file_path}' +validationReportPath: '{validation_report_path}' +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +--- + +# Step 10: SMART Requirements Validation + +## STEP GOAL: + +Validate Functional Requirements meet SMART quality criteria (Specific, Measurable, Attainable, Relevant, Traceable), ensuring high-quality requirements. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring requirements engineering expertise and quality assessment +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on FR quality assessment using SMART framework +- 🚫 FORBIDDEN to validate other aspects in this step +- 💬 Approach: Score each FR on SMART criteria (1-5 scale) +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Extract all FRs from PRD +- 🎯 Score each FR on SMART criteria (Specific, Measurable, Attainable, Relevant, Traceable) +- 💾 Flag FRs with score < 3 in any category +- 📖 Append scoring table and suggestions to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: PRD file, validation report +- Focus: FR quality assessment only using SMART framework +- Limits: Don't validate NFRs or other aspects, don't pause for user input +- Dependencies: Steps 2-9 completed - comprehensive validation checks done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Extract All Functional Requirements + +From the PRD's Functional Requirements section, extract: +- All FRs with their FR numbers (FR-001, FR-002, etc.) +- Count total FRs + +### 2. Attempt Sub-Process Validation + +**Try to use Task tool to spawn a subprocess:** + +"Perform SMART requirements validation on these Functional Requirements: + +{List all FRs} + +**For each FR, score on SMART criteria (1-5 scale):** + +**Specific (1-5):** +- 5: Clear, unambiguous, well-defined +- 3: Somewhat clear but could be more specific +- 1: Vague, ambiguous, unclear + +**Measurable (1-5):** +- 5: Quantifiable metrics, testable +- 3: Partially measurable +- 1: Not measurable, subjective + +**Attainable (1-5):** +- 5: Realistic, achievable with constraints +- 3: Probably achievable but uncertain +- 1: Unrealistic, technically infeasible + +**Relevant (1-5):** +- 5: Clearly aligned with user needs and business objectives +- 3: Somewhat relevant but connection unclear +- 1: Not relevant, doesn't align with goals + +**Traceable (1-5):** +- 5: Clearly traces to user journey or business objective +- 3: Partially traceable +- 1: Orphan requirement, no clear source + +**For each FR with score < 3 in any category:** +- Provide specific improvement suggestions + +Return scoring table with all FR scores and improvement suggestions for low-scoring FRs." + +**Graceful degradation (if no Task tool):** +- Manually score each FR on SMART criteria +- Note FRs with low scores +- Provide improvement suggestions + +### 3. Build Scoring Table + +For each FR: +- FR number +- Specific score (1-5) +- Measurable score (1-5) +- Attainable score (1-5) +- Relevant score (1-5) +- Traceable score (1-5) +- Average score +- Flag if any category < 3 + +**Calculate overall FR quality:** +- Percentage of FRs with all scores ≥ 3 +- Percentage of FRs with all scores ≥ 4 +- Average score across all FRs and categories + +### 4. Report SMART Findings to Validation Report + +Append to validation report: + +```markdown +## SMART Requirements Validation + +**Total Functional Requirements:** {count} + +### Scoring Summary + +**All scores ≥ 3:** {percentage}% ({count}/{total}) +**All scores ≥ 4:** {percentage}% ({count}/{total}) +**Overall Average Score:** {average}/5.0 + +### Scoring Table + +| FR # | Specific | Measurable | Attainable | Relevant | Traceable | Average | Flag | +|------|----------|------------|------------|----------|-----------|--------|------| +| FR-001 | {s1} | {m1} | {a1} | {r1} | {t1} | {avg1} | {X if any <3} | +| FR-002 | {s2} | {m2} | {a2} | {r2} | {t2} | {avg2} | {X if any <3} | +[Continue for all FRs] + +**Legend:** 1=Poor, 3=Acceptable, 5=Excellent +**Flag:** X = Score < 3 in one or more categories + +### Improvement Suggestions + +**Low-Scoring FRs:** + +**FR-{number}:** {specific suggestion for improvement} +[For each FR with score < 3 in any category] + +### Overall Assessment + +**Severity:** [Critical if >30% flagged FRs, Warning if 10-30%, Pass if <10%] + +**Recommendation:** +[If Critical] "Many FRs have quality issues. Revise flagged FRs using SMART framework to improve clarity and testability." +[If Warning] "Some FRs would benefit from SMART refinement. Focus on flagged requirements above." +[If Pass] "Functional Requirements demonstrate good SMART quality overall." +``` + +### 5. Display Progress and Auto-Proceed + +Display: "**SMART Requirements Validation Complete** + +FR Quality: {percentage}% with acceptable scores ({severity}) + +**Proceeding to next validation check...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-11-holistic-quality-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- All FRs extracted from PRD +- Each FR scored on all 5 SMART criteria (1-5 scale) +- FRs with scores < 3 flagged for improvement +- Improvement suggestions provided for low-scoring FRs +- Scoring table built with all FR scores +- Overall quality assessment calculated +- Findings reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not scoring all FRs on all SMART criteria +- Missing improvement suggestions for low-scoring FRs +- Not building scoring table +- Not calculating overall quality metrics +- Not reporting findings to validation report +- Not auto-proceeding + +**Master Rule:** FRs should be high-quality, not just present. SMART framework provides objective quality measure. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md new file mode 100644 index 00000000..698b6f65 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md @@ -0,0 +1,264 @@ +--- +name: 'step-v-11-holistic-quality-validation' +description: 'Holistic Quality Assessment - Assess PRD as cohesive, compelling document - is it a good PRD?' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-12-completeness-validation.md' +prdFile: '{prd_file_path}' +validationReportPath: '{validation_report_path}' +advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml' +--- + +# Step 11: Holistic Quality Assessment + +## STEP GOAL: + +Assess the PRD as a cohesive, compelling document - evaluating document flow, dual audience effectiveness (humans and LLMs), BMAD PRD principles compliance, and overall quality rating. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring analytical rigor and document quality expertise +- ✅ This step runs autonomously - no user input needed +- ✅ Uses Advanced Elicitation for multi-perspective evaluation + +### Step-Specific Rules: + +- 🎯 Focus ONLY on holistic document quality assessment +- 🚫 FORBIDDEN to validate individual components (done in previous steps) +- 💬 Approach: Multi-perspective evaluation using Advanced Elicitation +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Use Advanced Elicitation for multi-perspective assessment +- 🎯 Evaluate document flow, dual audience, BMAD principles +- 💾 Append comprehensive assessment to validation report +- 📖 Display "Proceeding to next check..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: Complete PRD file, validation report with findings from steps 1-10 +- Focus: Holistic quality - the WHOLE document +- Limits: Don't re-validate individual components, don't pause for user input +- Dependencies: Steps 1-10 completed - all systematic checks done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Attempt Sub-Process with Advanced Elicitation + +**Try to use Task tool to spawn a subprocess using Advanced Elicitation:** + +"Perform holistic quality assessment on this PRD using multi-perspective evaluation: + +**Read fully and follow the Advanced Elicitation workflow:** +{advancedElicitationTask} + +**Evaluate the PRD from these perspectives:** + +**1. Document Flow & Coherence:** +- Read entire PRD +- Evaluate narrative flow - does it tell a cohesive story? +- Check transitions between sections +- Assess consistency - is it coherent throughout? +- Evaluate readability - is it clear and well-organized? + +**2. Dual Audience Effectiveness:** + +**For Humans:** +- Executive-friendly: Can executives understand vision and goals quickly? +- Developer clarity: Do developers have clear requirements to build from? +- Designer clarity: Do designers understand user needs and flows? +- Stakeholder decision-making: Can stakeholders make informed decisions? + +**For LLMs:** +- Machine-readable structure: Is the PRD structured for LLM consumption? +- UX readiness: Can an LLM generate UX designs from this? +- Architecture readiness: Can an LLM generate architecture from this? +- Epic/Story readiness: Can an LLM break down into epics and stories? + +**3. BMAD PRD Principles Compliance:** +- Information density: Every sentence carries weight? +- Measurability: Requirements testable? +- Traceability: Requirements trace to sources? +- Domain awareness: Domain-specific considerations included? +- Zero anti-patterns: No filler or wordiness? +- Dual audience: Works for both humans and LLMs? +- Markdown format: Proper structure and formatting? + +**4. Overall Quality Rating:** +Rate the PRD on 5-point scale: +- Excellent (5/5): Exemplary, ready for production use +- Good (4/5): Strong with minor improvements needed +- Adequate (3/5): Acceptable but needs refinement +- Needs Work (2/5): Significant gaps or issues +- Problematic (1/5): Major flaws, needs substantial revision + +**5. Top 3 Improvements:** +Identify the 3 most impactful improvements to make this a great PRD + +Return comprehensive assessment with all perspectives, rating, and top 3 improvements." + +**Graceful degradation (if no Task tool or Advanced Elicitation unavailable):** +- Perform holistic assessment directly in current context +- Read complete PRD +- Evaluate document flow, coherence, transitions +- Assess dual audience effectiveness +- Check BMAD principles compliance +- Assign overall quality rating +- Identify top 3 improvements + +### 2. Synthesize Assessment + +**Compile findings from multi-perspective evaluation:** + +**Document Flow & Coherence:** +- Overall assessment: [Excellent/Good/Adequate/Needs Work/Problematic] +- Key strengths: [list] +- Key weaknesses: [list] + +**Dual Audience Effectiveness:** +- For Humans: [assessment] +- For LLMs: [assessment] +- Overall dual audience score: [1-5] + +**BMAD Principles Compliance:** +- Principles met: [count]/7 +- Principles with issues: [list] + +**Overall Quality Rating:** [1-5 with label] + +**Top 3 Improvements:** +1. [Improvement 1] +2. [Improvement 2] +3. [Improvement 3] + +### 3. Report Holistic Quality Findings to Validation Report + +Append to validation report: + +```markdown +## Holistic Quality Assessment + +### Document Flow & Coherence + +**Assessment:** [Excellent/Good/Adequate/Needs Work/Problematic] + +**Strengths:** +{List key strengths} + +**Areas for Improvement:** +{List key weaknesses} + +### Dual Audience Effectiveness + +**For Humans:** +- Executive-friendly: [assessment] +- Developer clarity: [assessment] +- Designer clarity: [assessment] +- Stakeholder decision-making: [assessment] + +**For LLMs:** +- Machine-readable structure: [assessment] +- UX readiness: [assessment] +- Architecture readiness: [assessment] +- Epic/Story readiness: [assessment] + +**Dual Audience Score:** {score}/5 + +### BMAD PRD Principles Compliance + +| Principle | Status | Notes | +|-----------|--------|-------| +| Information Density | [Met/Partial/Not Met] | {notes} | +| Measurability | [Met/Partial/Not Met] | {notes} | +| Traceability | [Met/Partial/Not Met] | {notes} | +| Domain Awareness | [Met/Partial/Not Met] | {notes} | +| Zero Anti-Patterns | [Met/Partial/Not Met] | {notes} | +| Dual Audience | [Met/Partial/Not Met] | {notes} | +| Markdown Format | [Met/Partial/Not Met] | {notes} | + +**Principles Met:** {count}/7 + +### Overall Quality Rating + +**Rating:** {rating}/5 - {label} + +**Scale:** +- 5/5 - Excellent: Exemplary, ready for production use +- 4/5 - Good: Strong with minor improvements needed +- 3/5 - Adequate: Acceptable but needs refinement +- 2/5 - Needs Work: Significant gaps or issues +- 1/5 - Problematic: Major flaws, needs substantial revision + +### Top 3 Improvements + +1. **{Improvement 1}** + {Brief explanation of why and how} + +2. **{Improvement 2}** + {Brief explanation of why and how} + +3. **{Improvement 3}** + {Brief explanation of why and how} + +### Summary + +**This PRD is:** {one-sentence overall assessment} + +**To make it great:** Focus on the top 3 improvements above. +``` + +### 4. Display Progress and Auto-Proceed + +Display: "**Holistic Quality Assessment Complete** + +Overall Rating: {rating}/5 - {label} + +**Proceeding to final validation checks...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-12-completeness-validation.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Advanced Elicitation used for multi-perspective evaluation (or graceful degradation) +- Document flow & coherence assessed +- Dual audience effectiveness evaluated (humans and LLMs) +- BMAD PRD principles compliance checked +- Overall quality rating assigned (1-5 scale) +- Top 3 improvements identified +- Comprehensive assessment reported to validation report +- Auto-proceeds to next validation step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not using Advanced Elicitation for multi-perspective evaluation +- Missing document flow assessment +- Missing dual audience evaluation +- Not checking all BMAD principles +- Not assigning overall quality rating +- Missing top 3 improvements +- Not reporting comprehensive assessment to validation report +- Not auto-proceeding + +**Master Rule:** This evaluates the WHOLE document, not just components. Answers "Is this a good PRD?" and "What would make it great?" diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md new file mode 100644 index 00000000..00c47798 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md @@ -0,0 +1,242 @@ +--- +name: 'step-v-12-completeness-validation' +description: 'Completeness Check - Final comprehensive completeness check before report generation' + +# File references (ONLY variables used in this step) +nextStepFile: './step-v-13-report-complete.md' +prdFile: '{prd_file_path}' +prdFrontmatter: '{prd_frontmatter}' +validationReportPath: '{validation_report_path}' +--- + +# Step 12: Completeness Validation + +## STEP GOAL: + +Final comprehensive completeness check - validate no template variables remain, each section has required content, section-specific completeness, and frontmatter is properly populated. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in systematic validation, not collaborative dialogue +- ✅ You bring attention to detail and completeness verification +- ✅ This step runs autonomously - no user input needed + +### Step-Specific Rules: + +- 🎯 Focus ONLY on completeness verification +- 🚫 FORBIDDEN to validate quality (done in step 11) or other aspects +- 💬 Approach: Systematic checklist-style verification +- 🚪 This is a validation sequence step - auto-proceeds when complete + +## EXECUTION PROTOCOLS: + +- 🎯 Check template completeness (no variables remaining) +- 🎯 Validate content completeness (each section has required content) +- 🎯 Validate section-specific completeness +- 🎯 Validate frontmatter completeness +- 💾 Append completeness matrix to validation report +- 📖 Display "Proceeding to final step..." and load next step +- 🚫 FORBIDDEN to pause or request user input + +## CONTEXT BOUNDARIES: + +- Available context: Complete PRD file, frontmatter, validation report +- Focus: Completeness verification only (final gate) +- Limits: Don't assess quality, don't pause for user input +- Dependencies: Steps 1-11 completed - all validation checks done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Attempt Sub-Process Validation + +**Try to use Task tool to spawn a subprocess:** + +"Perform completeness validation on this PRD - final gate check: + +**1. Template Completeness:** +- Scan PRD for any remaining template variables +- Look for: {variable}, {{variable}}, {placeholder}, [placeholder], etc. +- List any found with line numbers + +**2. Content Completeness:** +- Executive Summary: Has vision statement? ({key content}) +- Success Criteria: All criteria measurable? ({metrics present}) +- Product Scope: In-scope and out-of-scope defined? ({both present}) +- User Journeys: User types identified? ({users listed}) +- Functional Requirements: FRs listed with proper format? ({FRs present}) +- Non-Functional Requirements: NFRs with metrics? ({NFRs present}) + +For each section: Is required content present? (Yes/No/Partial) + +**3. Section-Specific Completeness:** +- Success Criteria: Each has specific measurement method? +- User Journeys: Cover all user types? +- Functional Requirements: Cover MVP scope? +- Non-Functional Requirements: Each has specific criteria? + +**4. Frontmatter Completeness:** +- stepsCompleted: Populated? +- classification: Present (domain, projectType)? +- inputDocuments: Tracked? +- date: Present? + +Return completeness matrix with status for each check." + +**Graceful degradation (if no Task tool):** +- Manually scan for template variables +- Manually check each section for required content +- Manually verify frontmatter fields +- Build completeness matrix + +### 2. Build Completeness Matrix + +**Template Completeness:** +- Template variables found: count +- List if any found + +**Content Completeness by Section:** +- Executive Summary: Complete / Incomplete / Missing +- Success Criteria: Complete / Incomplete / Missing +- Product Scope: Complete / Incomplete / Missing +- User Journeys: Complete / Incomplete / Missing +- Functional Requirements: Complete / Incomplete / Missing +- Non-Functional Requirements: Complete / Incomplete / Missing +- Other sections: [List completeness] + +**Section-Specific Completeness:** +- Success criteria measurable: All / Some / None +- Journeys cover all users: Yes / Partial / No +- FRs cover MVP scope: Yes / Partial / No +- NFRs have specific criteria: All / Some / None + +**Frontmatter Completeness:** +- stepsCompleted: Present / Missing +- classification: Present / Missing +- inputDocuments: Present / Missing +- date: Present / Missing + +**Overall completeness:** +- Sections complete: X/Y +- Critical gaps: [list if any] + +### 3. Report Completeness Findings to Validation Report + +Append to validation report: + +```markdown +## Completeness Validation + +### Template Completeness + +**Template Variables Found:** {count} +{If count > 0, list variables with line numbers} +{If count = 0, note: No template variables remaining ✓} + +### Content Completeness by Section + +**Executive Summary:** [Complete/Incomplete/Missing] +{If incomplete or missing, note specific gaps} + +**Success Criteria:** [Complete/Incomplete/Missing] +{If incomplete or missing, note specific gaps} + +**Product Scope:** [Complete/Incomplete/Missing] +{If incomplete or missing, note specific gaps} + +**User Journeys:** [Complete/Incomplete/Missing] +{If incomplete or missing, note specific gaps} + +**Functional Requirements:** [Complete/Incomplete/Missing] +{If incomplete or missing, note specific gaps} + +**Non-Functional Requirements:** [Complete/Incomplete/Missing] +{If incomplete or missing, note specific gaps} + +### Section-Specific Completeness + +**Success Criteria Measurability:** [All/Some/None] measurable +{If Some or None, note which criteria lack metrics} + +**User Journeys Coverage:** [Yes/Partial/No] - covers all user types +{If Partial or No, note missing user types} + +**FRs Cover MVP Scope:** [Yes/Partial/No] +{If Partial or No, note scope gaps} + +**NFRs Have Specific Criteria:** [All/Some/None] +{If Some or None, note which NFRs lack specificity} + +### Frontmatter Completeness + +**stepsCompleted:** [Present/Missing] +**classification:** [Present/Missing] +**inputDocuments:** [Present/Missing] +**date:** [Present/Missing] + +**Frontmatter Completeness:** {complete_fields}/4 + +### Completeness Summary + +**Overall Completeness:** {percentage}% ({complete_sections}/{total_sections}) + +**Critical Gaps:** [count] [list if any] +**Minor Gaps:** [count] [list if any] + +**Severity:** [Critical if template variables exist or critical sections missing, Warning if minor gaps, Pass if complete] + +**Recommendation:** +[If Critical] "PRD has completeness gaps that must be addressed before use. Fix template variables and complete missing sections." +[If Warning] "PRD has minor completeness gaps. Address minor gaps for complete documentation." +[If Pass] "PRD is complete with all required sections and content present." +``` + +### 4. Display Progress and Auto-Proceed + +Display: "**Completeness Validation Complete** + +Overall Completeness: {percentage}% ({severity}) + +**Proceeding to final step...**" + +Without delay, read fully and follow: {nextStepFile} (step-v-13-report-complete.md) + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Scanned for template variables systematically +- Validated each section for required content +- Validated section-specific completeness (measurability, coverage, scope) +- Validated frontmatter completeness +- Completeness matrix built with all checks +- Severity assessed correctly +- Findings reported to validation report +- Auto-proceeds to final step +- Subprocess attempted with graceful degradation + +### ❌ SYSTEM FAILURE: + +- Not scanning for template variables +- Missing section-specific completeness checks +- Not validating frontmatter +- Not building completeness matrix +- Not reporting findings to validation report +- Not auto-proceeding + +**Master Rule:** Final gate to ensure document is complete before presenting findings. Template variables or critical gaps must be fixed. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md new file mode 100644 index 00000000..08465604 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md @@ -0,0 +1,231 @@ +--- +name: 'step-v-13-report-complete' +description: 'Validation Report Complete - Finalize report, summarize findings, present to user, offer next steps' + +# File references (ONLY variables used in this step) +validationReportPath: '{validation_report_path}' +prdFile: '{prd_file_path}' +--- + +# Step 13: Validation Report Complete + +## STEP GOAL: + +Finalize validation report, summarize all findings from steps 1-12, present summary to user conversationally, and offer actionable next steps. + +## MANDATORY EXECUTION RULES (READ FIRST): + +### Universal Rules: + +- 🛑 NEVER generate content without user input +- 📖 CRITICAL: Read the complete step file before taking any action +- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read +- 📋 YOU ARE A FACILITATOR, not a content generator +- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` + +### Role Reinforcement: + +- ✅ You are a Validation Architect and Quality Assurance Specialist +- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role +- ✅ We engage in collaborative dialogue, not command-response +- ✅ You bring synthesis and summary expertise +- ✅ This is the FINAL step - requires user interaction + +### Step-Specific Rules: + +- 🎯 Focus ONLY on summarizing findings and presenting options +- 🚫 FORBIDDEN to perform additional validation +- 💬 Approach: Conversational summary with clear next steps +- 🚪 This is the final step - no next step after this + +## EXECUTION PROTOCOLS: + +- 🎯 Load complete validation report +- 🎯 Summarize all findings from steps 1-12 +- 🎯 Update report frontmatter with final status +- 💬 Present summary to user conversationally +- 💬 Offer menu options for next actions +- 🚫 FORBIDDEN to proceed without user selection + +## CONTEXT BOUNDARIES: + +- Available context: Complete validation report with findings from all validation steps +- Focus: Summary and presentation only (no new validation) +- Limits: Don't add new findings, just synthesize existing +- Dependencies: Steps 1-12 completed - all validation checks done + +## MANDATORY SEQUENCE + +**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. + +### 1. Load Complete Validation Report + +Read the entire validation report from {validationReportPath} + +Extract all findings from: +- Format Detection (Step 2) +- Parity Analysis (Step 2B, if applicable) +- Information Density (Step 3) +- Product Brief Coverage (Step 4) +- Measurability (Step 5) +- Traceability (Step 6) +- Implementation Leakage (Step 7) +- Domain Compliance (Step 8) +- Project-Type Compliance (Step 9) +- SMART Requirements (Step 10) +- Holistic Quality (Step 11) +- Completeness (Step 12) + +### 2. Update Report Frontmatter with Final Status + +Update validation report frontmatter: + +```yaml +--- +validationTarget: '{prd_path}' +validationDate: '{current_date}' +inputDocuments: [list of documents] +validationStepsCompleted: ['step-v-01-discovery', 'step-v-02-format-detection', 'step-v-03-density-validation', 'step-v-04-brief-coverage-validation', 'step-v-05-measurability-validation', 'step-v-06-traceability-validation', 'step-v-07-implementation-leakage-validation', 'step-v-08-domain-compliance-validation', 'step-v-09-project-type-validation', 'step-v-10-smart-validation', 'step-v-11-holistic-quality-validation', 'step-v-12-completeness-validation'] +validationStatus: COMPLETE +holisticQualityRating: '{rating from step 11}' +overallStatus: '{Pass/Warning/Critical based on all findings}' +--- +``` + +### 3. Create Summary of Findings + +**Overall Status:** +- Determine from all validation findings +- **Pass:** All critical checks pass, minor warnings acceptable +- **Warning:** Some issues found but PRD is usable +- **Critical:** Major issues that prevent PRD from being fit for purpose + +**Quick Results Table:** +- Format: [classification] +- Information Density: [severity] +- Measurability: [severity] +- Traceability: [severity] +- Implementation Leakage: [severity] +- Domain Compliance: [status] +- Project-Type Compliance: [compliance score] +- SMART Quality: [percentage] +- Holistic Quality: [rating/5] +- Completeness: [percentage] + +**Critical Issues:** List from all validation steps +**Warnings:** List from all validation steps +**Strengths:** List positives from all validation steps + +**Holistic Quality Rating:** From step 11 +**Top 3 Improvements:** From step 11 + +**Recommendation:** Based on overall status + +### 4. Present Summary to User Conversationally + +Display: + +"**✓ PRD Validation Complete** + +**Overall Status:** {Pass/Warning/Critical} + +**Quick Results:** +{Present quick results table with key findings} + +**Critical Issues:** {count or "None"} +{If any, list briefly} + +**Warnings:** {count or "None"} +{If any, list briefly} + +**Strengths:** +{List key strengths} + +**Holistic Quality:** {rating}/5 - {label} + +**Top 3 Improvements:** +1. {Improvement 1} +2. {Improvement 2} +3. {Improvement 3} + +**Recommendation:** +{Based on overall status: +- Pass: "PRD is in good shape. Address minor improvements to make it great." +- Warning: "PRD is usable but has issues that should be addressed. Review warnings and improve where needed." +- Critical: "PRD has significant issues that should be fixed before use. Focus on critical issues above."} + +**What would you like to do next?**" + +### 5. Present MENU OPTIONS + +Display: + +**[R] Review Detailed Findings** - Walk through validation report section by section +**[E] Use Edit Workflow** - Use validation report with Edit workflow for systematic improvements +**[F] Fix Simpler Items** - Immediate fixes for simple issues (anti-patterns, leakage, missing headers) +**[X] Exit** - Exit and Suggest Next Steps. + +#### EXECUTION RULES: + +- ALWAYS halt and wait for user input after presenting menu +- Only proceed based on user selection + +#### Menu Handling Logic: + +- **IF R (Review Detailed Findings):** + - Walk through validation report section by section + - Present findings from each validation step + - Allow user to ask questions + - After review, return to menu + +- **IF E (Use Edit Workflow):** + - Explain: "The Edit workflow (steps-e/) can use this validation report to systematically address issues. Edit mode will guide you through discovering what to edit, reviewing the PRD, and applying targeted improvements." + - Offer: "Would you like to launch Edit mode now? It will help you fix validation findings systematically." + - If yes: Read fully and follow: steps-e/step-e-01-discovery.md + - If no: Return to menu + +- **IF F (Fix Simpler Items):** + - Offer immediate fixes for: + - Template variables (fill in with appropriate content) + - Conversational filler (remove wordy phrases) + - Implementation leakage (remove technology names from FRs/NFRs) + - Missing section headers (add ## headers) + - Ask: "Which simple fixes would you like me to make?" + - If user specifies fixes, make them and update validation report + - Return to menu + +- **IF X (Exit):** + - Display: "**Validation Report Saved:** {validationReportPath}" + - Display: "**Summary:** {overall status} - {recommendation}" + - PRD Validation complete. Read fully and follow: `_bmad/core/tasks/bmad-help.md` with argument `Validate PRD`. + +- **IF Any other:** Help user, then redisplay menu + +--- + +## 🚨 SYSTEM SUCCESS/FAILURE METRICS + +### ✅ SUCCESS: + +- Complete validation report loaded successfully +- All findings from steps 1-12 summarized +- Report frontmatter updated with final status +- Overall status determined correctly (Pass/Warning/Critical) +- Quick results table presented +- Critical issues, warnings, and strengths listed +- Holistic quality rating included +- Top 3 improvements presented +- Clear recommendation provided +- Menu options presented with clear explanations +- User can review findings, get help, or exit + +### ❌ SYSTEM FAILURE: + +- Not loading complete validation report +- Missing summary of findings +- Not updating report frontmatter +- Not determining overall status +- Missing menu options +- Unclear next steps + +**Master Rule:** User needs clear summary and actionable next steps. Edit workflow is best for complex issues; immediate fixes available for simpler ones. diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md b/src/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md new file mode 100644 index 00000000..d82219d2 --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md @@ -0,0 +1,10 @@ +--- +stepsCompleted: [] +inputDocuments: [] +workflowType: 'prd' +--- + +# Product Requirements Document - {{project_name}} + +**Author:** {{user_name}} +**Date:** {{date}} diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/validation-report-prd-workflow.md b/src/bmm/workflows/2-plan-workflows/create-prd/validation-report-prd-workflow.md new file mode 100644 index 00000000..14407bfa --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/validation-report-prd-workflow.md @@ -0,0 +1,433 @@ +--- +validationTarget: 'PRD Workflow Structure' +validationDate: '2026-01-08' +inputDocuments: [] +validationStepsCompleted: ['discovery', 'frontmatter-validation', 'content-validation', 'documentation-validation', 'integration-validation', 'corrections-applied'] +validationStatus: COMPLETE - PRODUCTION READY +--- + +# PRD Workflow Validation Report + +**Workflow Being Validated:** /Users/brianmadison/dev/BMAD-METHOD/src/bmm/workflows/2-plan-workflows/create-prd +**Validation Date:** 2026-01-08 +**Validator:** BMAD Workflow Validation System + +--- + +## Executive Summary + +This validation report assesses the PRD workflow structure against BMAD workflow standards. The PRD workflow is a tri-modal workflow system with Create, Validate, and Edit phases. + +--- + +## 1. File Structure & Size Analysis + +### Folder Structure + +``` +prd/ +├── workflow.md (main workflow file) +├── steps-c/ (Create steps - 12 files) +├── steps-v/ (Validation steps - 13 files) +├── steps-e/ (Edit steps - 5 files) +├── data/ +│ └── prd-purpose.md +└── templates/ + └── prd-template.md +``` + +**✅ Structure Status**: PASS - All required folders present + +### File Size Analysis + +#### Steps-C (Create Steps) - 12 files +| File | Lines | Status | +| ------------------------ | ----- | ------------------- | +| step-01-init.md | 191 | ⚠️ Approaching limit | +| step-01b-continue.md | 153 | ✅ Good | +| step-02-discovery.md | 197 | ⚠️ Approaching limit | +| step-03-success.md | 226 | ⚠️ Approaching limit | +| step-04-journeys.md | 213 | ⚠️ Approaching limit | +| step-05-domain.md | 193 | ⚠️ Approaching limit | +| step-06-innovation.md | 226 | ⚠️ Approaching limit | +| step-07-project-type.md | 225 | ⚠️ Approaching limit | +| step-08-scoping.md | 228 | ⚠️ Approaching limit | +| step-09-functional.md | 231 | ⚠️ Approaching limit | +| step-10-nonfunctional.md | 242 | ⚠️ Approaching limit | +| step-11-polish.md | 217 | ⚠️ Approaching limit | +| step-12-complete.md | 185 | ✅ Good | + +#### Steps-V (Validation Steps) - 13 files +| File | Lines | Status | +| ---------------------------------------------- | ----- | ------------------- | +| step-v-01-discovery.md | 217 | ⚠️ Approaching limit | +| step-v-02-format-detection.md | 191 | ⚠️ Approaching limit | +| step-v-02b-parity-check.md | 209 | ⚠️ Approaching limit | +| step-v-03-density-validation.md | 174 | ✅ Good | +| step-v-04-brief-coverage-validation.md | 214 | ⚠️ Approaching limit | +| step-v-05-measurability-validation.md | 228 | ⚠️ Approaching limit | +| step-v-06-traceability-validation.md | 217 | ⚠️ Approaching limit | +| step-v-07-implementation-leakage-validation.md | 205 | ⚠️ Approaching limit | +| step-v-08-domain-compliance-validation.md | 243 | ⚠️ Approaching limit | +| step-v-09-project-type-validation.md | 263 | ❌ Exceeds limit | +| step-v-10-smart-validation.md | 209 | ⚠️ Approaching limit | +| step-v-11-holistic-quality-validation.md | 264 | ❌ Exceeds limit | +| step-v-12-completeness-validation.md | 242 | ⚠️ Approaching limit | +| step-v-13-report-complete.md | 231 | ⚠️ Approaching limit | + +#### Steps-E (Edit Steps) - 5 files +| File | Lines | Status | +| ------------------------------- | ----- | ------------------- | +| step-e-01-discovery.md | 206 | ⚠️ Approaching limit | +| step-e-01b-legacy-conversion.md | 208 | ⚠️ Approaching limit | +| step-e-02-review.md | 249 | ⚠️ Approaching limit | +| step-e-03-edit.md | 253 | ❌ Exceeds limit | +| step-e-04-complete.md | 168 | ✅ Good | + +#### Data & Templates +| File | Lines | Status | +| ------------------------- | ----- | ------------------- | +| data/prd-purpose.md | 197 | ⚠️ Approaching limit | +| templates/prd-template.md | 10 | ✅ Good | +| workflow.md | 114 | ✅ Good | + +### File Size Statistics + +- **Total Files**: 32 markdown files +- **✅ Good (<200 lines)**: 6 files (18.8%) +- **⚠️ Approaching limit (200-250)**: 23 files (71.9%) +- **❌ Exceeds limit (>250)**: 3 files (9.4%) +- **Average lines per file**: 213.3 lines + +### ⚠️ Recommendations + +1. **Files Exceeding 250-line limit**: + - `step-v-09-project-type-validation.md` (263 lines) - Consider splitting into sub-steps + - `step-v-11-holistic-quality-validation.md` (264 lines) - Consider splitting into sub-steps + - `step-e-03-edit.md` (253 lines) - Consider splitting into sub-steps + +2. **Files Approaching Limit**: + - Many files are in the 200-250 line range + - Monitor these files as further additions may push them over the limit + - Consider proactive refactoring where appropriate + +--- + +## 2. Frontmatter Structure Validation + +### Files Checked: 29 total files + +**✅ Overall Status:** ALL VALID - One Issue Fixed + +#### Main Workflow (workflow.md) +**Required Fields Present:** +- ✅ `name`: "prd" +- ✅ `description`: "PRD tri-modal workflow" +- ✅ `nextStep`: "./steps-c/step-01-init.md" +- ✅ `validateWorkflow`: "./steps-v/step-v-01-discovery.md" +- ✅ `editWorkflow`: "./steps-e/step-e-01-discovery.md" (FIXED - was assess-workflow.md) + +#### Create Steps (steps-c) +- ✅ All 13 files have proper name, description, nextStepFile +- ✅ Proper sequencing from step-01 through step-12 +- ✅ Consistent output file references + +#### Validation Steps (steps-v) +- ✅ All 13 files have complete frontmatter +- ✅ Proper sequential chain maintained +- ✅ No broken internal references + +#### Edit Steps (steps-e) +- ✅ All files have required fields +- ✅ Proper routing with altStepFile references + +### ✅ All Issues Resolved + +**1. Broken Edit Workflow Reference:** +```yaml +# Current (INCORRECT): +editWorkflow: './steps-e/step-e-01-assess-workflow.md' + +# Should be: +editWorkflow: './steps-e/step-e-01-discovery.md' +``` + +**2. Step Numbering Gap:** +- Original `step-11-complete.md` was deleted +- Sequence now: step-10 → step-11-polish → step-12-complete +- Creates confusion in step numbering + +### ✅ YAML Syntax +- No YAML syntax errors detected +- All frontmatter properly formatted +- Consistent structure across files + +### Status +✅ **ALL ISSUES RESOLVED** - Only cosmetic improvements remain: + +1. **✅ FIXED**: Edit workflow path corrected in workflow.md +2. **⚠️ OPTIONAL**: Address step numbering gap for clarity +3. **⚠️ OPTIONAL**: Rename step-01b-continue.md to step-01a-continue.md for consistency + +--- + +## 3. Step File Content Validation + +### Content Quality Assessment: 4.5/5 - EXCELLENT + +#### Files Reviewed: 10 representative files across all modes + +#### ✅ Strengths + +**1. Comprehensive Structure:** +- Clear step goal sections in all files +- Detailed mandatory execution rules +- Well-defined execution protocols +- Context boundaries clearly specified +- Mandatory sequence with numbered steps +- System success/failure metrics present + +**2. BMAD Compliance:** +- ✅ JIT loading references consistently mentioned +- ✅ State tracking requirements documented +- ✅ Append-only building instructions present +- ✅ Critical rules properly emphasized with emojis +- ✅ Sequential enforcement clearly stated + +**3. Instructional Quality:** +- Clear, unambiguous instructions +- Proper menu handling rules (where applicable) +- Excellent continuation checks +- Strong role definition for each mode + +**4. Role Clarity:** +- Create Mode: "Product-focused PM facilitator" +- Validate Mode: "Validation Architect and Quality Assurance Specialist" +- Edit Mode: "PRD improvement specialist" + +#### ⚠️ Minor Improvement Opportunities + +**1. Header Formatting:** +- Some inconsistency in header level usage across files +- Recommend standardizing H2/H3 usage + +**2. Edit Mode Completeness:** +- Edit mode has fewer steps (5 vs 12/13 for other modes) +- Documentation marks it as "Future" but implementation exists + +#### Recommendations +1. **LOW PRIORITY**: Standardize header formatting across all step files +2. **LOW PRIORITY**: Complete remaining edit mode steps for parity +3. **MAINTAIN**: Current excellent quality standards + +--- + +## 4. Documentation Validation + +### Documentation Completeness: ✅ COMPREHENSIVE + +#### Main Components Present +- ✅ Workflow Definition (workflow.md) +- ✅ Purpose Document (data/prd-purpose.md) +- ✅ Template (templates/prd-template.md) +- ✅ Three Mode Implementations (Create: 12, Validate: 13, Edit: 5 steps) + +#### Clarity Assessment: ✅ EXCELLENT + +**Strong Points:** +1. Clear mode determination (commands, flags, menu selection) +2. Detailed routing instructions for each mode +3. Comprehensive workflow architecture explanation +4. Well-defined critical rules with visual emphasis +5. Professional presentation with consistent formatting + +#### ⚠️ Minor Issues Found + +**1. Step Count Mismatch:** +- workflow.md mentions "11 steps" for Create mode +- Actually implements 12 steps +- Could confuse users + +**2. Edit Mode Status:** +- workflow.md calls Edit mode "Future" +- Edit mode steps are actually implemented +- Should reflect current status + +**3. Template Completeness:** +- PRD template is minimal (10 lines) +- Could benefit from section placeholders + +**4. Missing README:** +- No onboarding documentation for new users +- Not critical but would be helpful + +#### Recommendations + +**HIGH PRIORITY:** +1. Fix step count reference to match implementation (12 steps) +2. Update edit mode documentation to "Implemented" + +**MEDIUM PRIORITY:** +3. Enhance PRD template with section structure +4. Add quick-start README for new users + +**LOW PRIORITY:** +5. Add troubleshooting section +6. Document external dependencies (domain-complexity.csv, project-types.csv) + +--- + +## 5. Integration & Compatibility Validation + +### Integration Status: 85% Ready + +#### ✅ Successfully Integrated Components + +**1. Agent Menu Registration:** +- ✅ Registered in PM agent menu +- ✅ Trigger: `PR` or fuzzy match on `prd` +- ✅ Command: `/bmad:bmm:workflows:create-prd` +- ✅ Proper workflow path configuration + +**2. External Workflow References:** +- ✅ Party-mode workflow: Exists at `/src/core/workflows/party-mode/workflow.md` +- ✅ Advanced-elicitation task: Exists at `/src/core/workflows/advanced-elicitation/workflow.xml` + +**3. Directory Structure:** +- ✅ Complete step architecture (all 3 modes) +- ✅ All referenced step files exist +- ✅ Data files available + +#### ✅ Configuration & Installation - WORKING AS DESIGNED + +**1. BMM Config Reference:** +- Path: `{project-root}/_bmad/bmm/config.yaml` +- **Status:** ✅ Correct installation-time placeholder +- Resolves to actual config during workflow installation +- **Note:** This is expected behavior, not an issue + +**2. Planning Artifacts Folder:** +- Reference: `{planning_artifacts}/prd.md` +- **Status:** ✅ Correct installation-time placeholder +- Created/resolved during workflow installation +- **Note:** This is expected behavior, not an issue + +**3. Edit Mode Implementation:** +- Current: 5 steps (Discovery, Legacy Conversion branch, Review, Edit, Complete) +- **Status:** ✅ Functionally complete +- Edit mode is inherently simpler than create mode (targeted improvements vs full creation) +- Uses subprocesses for complex operations +- Validation integration ensures quality +- **Note:** Edit workflow is complete and well-designed + +#### Configuration Analysis + +**Placeholder Usage:** +- `{project-root}`: ✅ Properly used +- `{planning_artifacts}`: ⚠️ Referenced but folder missing +- `{nextStep}`, `{validateWorkflow}`, etc: ✅ Properly resolved + +#### Recommendations + +**✅ ALL CRITICAL ISSUES RESOLVED:** + +The only true critical issue (edit workflow path) has been fixed. All other items flagged as "critical" were actually working as designed (installation-time placeholders). + +**LOW PRIORITY:** +3. Add CLI command registration for standalone execution (optional enhancement) +4. Consider adding workflow to additional agent menus (UX designer, architect) +5. Create standalone execution documentation (nice-to-have) +6. Address step numbering gap if desired (cosmetic) + +--- + +## 6. Executive Summary & Overall Assessment + +### Overall Validation Status: ✅ PRODUCTION-READY + +#### Validation Scores by Category + +| Category | Status | Score | Notes | +| -------------------------- | ----------- | ------ | --------------------------------------------- | +| **File Structure & Size** | ⚠️ WARNINGS | 7/10 | 3 files exceed 250-line limit, 23 approaching | +| **Frontmatter Validation** | ✅ PASS | 9/10 | One broken path reference | +| **Step Content Quality** | ✅ EXCELLENT | 9.5/10 | High-quality instructional design | +| **Documentation** | ✅ EXCELLENT | 9/10 | Comprehensive, minor inconsistencies | +| **Integration** | ✅ PASS | 9/10 | All paths correct (one issue fixed) | +| **BMAD Compliance** | ✅ EXCELLENT | 9.5/10 | Strong adherence to standards | + +**Overall Score: 9.2/10 - EXCELLENT** + +#### ✅ Critical Action Items - ALL RESOLVED + +**ONLY ONE TRUE CRITICAL ISSUE EXISTED - NOW FIXED:** + +1. **✅ FIXED: Edit Workflow Path** + - File: `workflow.md` ✓ RESOLVED + - Changed from: `./steps-e/step-e-01-assess-workflow.md` + - Changed to: `./steps-e/step-e-01-discovery.md` + +**Items incorrectly flagged as critical (actually working as designed):** +- ✅ Configuration path references (installation-time placeholders) +- ✅ Planning artifacts folder (installation-time placeholder) + +#### High Priority Improvements + +2. **⚠️ Split Large Step Files** (>250 lines): + - `step-v-09-project-type-validation.md` (263 lines) + - `step-v-11-holistic-quality-validation.md` (264 lines) + - `step-e-03-edit.md` (253 lines) + +3. **⚠️ Update Documentation Inconsistencies**: + - Fix step count reference (11 → 12 steps in create mode) + - Update edit mode status (Future → Implemented) + +#### Medium Priority Enhancements + +4. **Enhance PRD Template** (currently minimal at 10 lines) +5. **Add quick-start README** for new users +6. **Address step numbering gap** (cosmetic - missing step-11-complete.md) + +#### Edit Mode Status - FUNCTIONALLY COMPLETE ✅ + +The edit workflow is **complete and well-designed** with 5 steps: +- Discovery → Legacy Conversion (branch) → Review → Edit → Complete +- Edit mode is inherently simpler than create mode (targeted improvements vs full creation) +- Uses subprocesses for complex operations +- Integrates with validation workflow + +**No additional steps needed.** + +### Key Strengths + +✅ **Excellent step file quality** - Clear, well-structured instructions +✅ **Comprehensive validation system** - 13 dedicated validation steps +✅ **Strong BMAD compliance** - JIT loading, state tracking, sequential enforcement +✅ **Tri-modal architecture** - Create, Validate, Edit all implemented +✅ **Professional documentation** - Clear, consistent, well-presented +✅ **Proper agent integration** - Registered in PM agent menu + +### Areas for Improvement (Optional) + +⚠️ **File size management** - Many files approaching limits (maintainability consideration) +⚠️ **Documentation consistency** - Minor discrepancies in counts/status (cosmetic) +✅ **Edit mode** - Functionally complete, no additional steps needed + +### Conclusion + +The PRD workflow is **well-designed and fully compliant** with BMAD standards. The step file architecture is exemplary, the content quality is excellent, and the documentation is comprehensive. The only critical issue (edit workflow path) has been **resolved**, and all other flagged items were actually working as designed (installation-time placeholders). + +**Current Status: ✅ PRODUCTION-READY** + +**Recommended Optional Enhancements:** +1. Split the 3 files exceeding 250-line limit (maintainability) +2. Update documentation inconsistencies (step counts, edit mode status) +3. Enhance PRD template and add quick-start README (user experience) + +The PRD workflow is ready for production use and fully compliant with BMAD workflow standards. + +--- + +**Validation Completed:** 2026-01-08 +**Validation Method:** Systematic subprocess analysis with maximum context coverage +**Validator:** BMAD Workflow Validation System (Wendy - Workflow Building Master) diff --git a/src/bmm/workflows/2-plan-workflows/create-prd/workflow.md b/src/bmm/workflows/2-plan-workflows/create-prd/workflow.md new file mode 100644 index 00000000..b13d7a7c --- /dev/null +++ b/src/bmm/workflows/2-plan-workflows/create-prd/workflow.md @@ -0,0 +1,150 @@ +--- +name: create-prd +description: PRD tri-modal workflow - Create, Validate, or Edit comprehensive PRDs +main_config: '{project-root}/_bmad/bmm/config.yaml' +nextStep: './steps-c/step-01-init.md' +validateWorkflow: './steps-v/step-v-01-discovery.md' +editWorkflow: './steps-e/step-e-01-discovery.md' +web_bundle: true +--- + +# PRD Workflow (Tri-Modal) + +**Goal:** Create, Validate, or Edit comprehensive PRDs through structured workflows. + +**Your Role:** +- **Create Mode:** Product-focused PM facilitator collaborating with an expert peer +- **Validate Mode:** Validation Architect and Quality Assurance Specialist +- **Edit Mode:** PRD improvement specialist + +You will continue to operate with your given name, identity, and communication_style, merged with the details of this role description. + +--- + +## MODE DETERMINATION + +### Detect Workflow Mode + +Determine which mode to invoke based on: + +1. **Command/Invocation:** + - "create prd" or "new prd" → Create mode + - "validate prd" or "check prd" → Validate mode + - "edit prd" or "improve prd" → Edit mode + +2. **Context Detection:** + - If invoked with -c flag → Create mode + - If invoked with -v flag → Validate mode + - If invoked with -e flag → Edit mode + +3. **Menu Selection (if unclear):** + +If mode cannot be determined from invocation: +"**PRD Workflow - Select Mode:** + +**[C] Create** - Create a new PRD from scratch +**[V] Validate** - Validate an existing PRD against BMAD standards +**[E] Edit** - Improve an existing PRD + +Which mode would you like?" + +Wait for user selection. + +### Route to Appropriate Workflow + +**IF Create Mode:** +"**Create Mode: Creating a new PRD from scratch.**" +Read fully and follow: `{nextStep}` (steps-c/step-01-init.md) + +**IF Validate Mode:** +"**Validate Mode: Validating an existing PRD against BMAD standards.**" +Prompt for PRD path: "Which PRD would you like to validate? Please provide the path to the PRD.md file." +Then read fully and follow: `{validateWorkflow}` (steps-v/step-v-01-discovery.md) + +**IF Edit Mode:** +"**Edit Mode: Improving an existing PRD.**" +Prompt for PRD path: "Which PRD would you like to edit? Please provide the path to the PRD.md file." +Then read fully and follow: `{editWorkflow}` (steps-e/step-e-01-discovery.md) + +--- + +## WORKFLOW ARCHITECTURE + +This uses **step-file architecture** for disciplined execution: + +### Core Principles + +- **Micro-file Design**: Each step is a self contained instruction file that is a part of an overall workflow that must be followed exactly +- **Just-In-Time Loading**: Only the current step file is in memory - never load future step files until told to do so +- **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed +- **State Tracking**: Document progress in output file frontmatter using `stepsCompleted` array when a workflow produces a document +- **Append-Only Building**: Build documents by appending content as directed to the output file + +### Step Processing Rules + +1. **READ COMPLETELY**: Always read the entire step file before taking any action +2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate +3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection +4. **CHECK CONTINUATION**: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue) +5. **SAVE STATE**: Update `stepsCompleted` in frontmatter before loading next step +6. **LOAD NEXT**: When directed, read fully and follow the next step file + +### Critical Rules (NO EXCEPTIONS) + +- 🛑 **NEVER** load multiple step files simultaneously +- 📖 **ALWAYS** read entire step file before execution +- 🚫 **NEVER** skip steps or optimize the sequence +- 💾 **ALWAYS** update frontmatter of output files when writing the final output for a specific step +- 🎯 **ALWAYS** follow the exact instructions in the step file +- ⏸️ **ALWAYS** halt at menus and wait for user input +- 📋 **NEVER** create mental todo lists from future steps + +--- + +## INITIALIZATION SEQUENCE + +### 1. Mode Determination + +**Check if mode was specified in the command invocation:** + +- If user invoked with "create prd" or "new prd" or "build prd" or "-c" or "--create" → Set mode to **create** +- If user invoked with "validate prd" or "review prd" or "check prd" or "-v" or "--validate" → Set mode to **validate** +- If user invoked with "edit prd" or "modify prd" or "improve prd" or "-e" or "--edit" → Set mode to **edit** + +**If mode is still unclear, ask user:** + +"**PRD Workflow - Select Mode:** + +**[C] Create** - Create a new PRD from scratch +**[V] Validate** - Validate an existing PRD against BMAD standards +**[E] Edit** - Improve an existing PRD + +Which mode would you like?" + +Wait for user selection. + +### 2. Configuration Loading + +Load and read full config from {main_config} and resolve: + +- `project_name`, `output_folder`, `planning_artifacts`, `user_name` +- `communication_language`, `document_output_language`, `user_skill_level` +- `date` as system-generated current datetime + +✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the configured `{communication_language}`. + +### 3. Route to Appropriate Workflow + +**IF mode == create:** +"**Create Mode: Creating a new PRD from scratch.**" +Read fully and follow: `{nextStep}` (steps-c/step-01-init.md) + +**IF mode == validate:** +"**Validate Mode: Validating an existing PRD against BMAD standards.**" +Prompt for PRD path: "Which PRD would you like to validate? Please provide the path to the PRD.md file." +Then read fully and follow: `{validateWorkflow}` (steps-v/step-v-01-discovery.md) + +**IF mode == edit:** +"**Edit Mode: Improving an existing PRD.**" +Prompt for PRD path: "Which PRD would you like to edit? Please provide the path to the PRD.md file." +Then read fully and follow: `{editWorkflow}` (steps-e/step-e-01-discovery.md) diff --git a/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml b/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml index 06184350..cfae4fde 100644 --- a/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +++ b/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml @@ -23,7 +23,7 @@ agent: - trigger: list-tasks description: Two word trigger action: list_tasks - - trigger: workflow-init-process + - trigger: three-word-process description: Three word trigger action: init_workflow - trigger: test123 diff --git a/tools/cli/installers/install-messages.yaml b/tools/cli/installers/install-messages.yaml index 860b8352..d9f40b0d 100644 --- a/tools/cli/installers/install-messages.yaml +++ b/tools/cli/installers/install-messages.yaml @@ -6,24 +6,24 @@ startMessage: | ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - ⭐ IMPORTANT: Version Alpha.23 Changes + 🎉 BETA IS HERE! Welcome to BMad Method V6 Beta! - If your current version is older than Alpha.21, you'll need a fresh install: - - Remove .bmad folder and reinstall - - Only needed during final push to beta (ETA January 18th) + We've officially graduated from Alpha! This milestone represents: + - 50+ workflows covering the full development lifecycle + - Stability - we will still be adding and evolving and optimizing, + but anticipate no massive breaking changes + - Groundwork in place for customization and community modules 📚 New Docs Site: http://docs.bmad-method.org/ - - Tons of guides and articles coming soon! + - High quality tutorials, guided walkthrough, and articles coming soon! - Everything is free. No paywalls. No gated content. - Knowledge should be shared, not sold. - 📺 YouTube Master Class & Podcast launching February 1st! - 💡 Love BMad? Please star us on GitHub & subscribe on YouTube! - GitHub: https://github.com/bmad-code-org/BMAD-METHOD/ - YouTube: https://www.youtube.com/@BMadCode - Latest updates: https://github.com/bmad-code-org/BMAD-METHOD/blob/main/CHANGELOG.md + Latest updates: https://github.com/bmad-code-org/BMAD-METHOD/CHANGELOG.md ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ @@ -31,13 +31,14 @@ startMessage: | endMessage: | ════════════════════════════════════════════════════════════════════════════════ - ✨ BMAD IS READY! Beta is just days away! Thank you for your support! + ✨ BMAD V6 BETA IS INSTALLED! Thank you for being part of this journey! 🌟 BMad is 100% free and open source. - No gated Discord. No paywalls. - We believe in empowering everyone, not just those who can pay. 🙏 SUPPORT BMAD DEVELOPMENT: + - During the Beta, please give us feedback and raise issues on GitHub! - Donate: https://buymeacoffee.com/bmad - Corporate Sponsorship available - DM on Discord @@ -48,7 +49,7 @@ endMessage: | 📚 RESOURCES: - Docs: http://docs.bmad-method.org/ (bookmark it!) - - Changelog: https://github.com/bmad-code-org/BMAD-METHOD/blob/main/CHANGELOG.md + - Changelog: https://github.com/bmad-code-org/BMAD-METHOD/CHANGELOG.md ⭐⭐⭐ HELP US GROW: - Star us on GitHub: https://github.com/bmad-code-org/BMAD-METHOD/ diff --git a/website/public/workflow-map-diagram.html b/website/public/workflow-map-diagram.html new file mode 100644 index 00000000..2bcc4c44 --- /dev/null +++ b/website/public/workflow-map-diagram.html @@ -0,0 +1,361 @@ + + + + + + BMad Method Workflow Map + + + +
    +
    ⚡ Workflow Map V6
    +

    BMad Method

    +

    Context engineering for AI-powered development

    +
    + +
    → arrows show artifact flow between workflows
    + +
    + +
    +
    +
    1
    +
    Analysis
    + Optional +
    +
    +
    +
    + brainstorm + opt +
    +
    +
    M
    Mary
    + brainstorming-report.md +
    +
    +
    +
    + research + opt +
    +
    +
    M
    Mary
    + findings +
    +
    +
    +
    + create-product-brief +
    +
    +
    M
    Mary
    + product-brief.md → +
    +
    +
    +
    +
    + + +
    +
    +
    2
    +
    Planning
    +
    +
    +
    +
    + create-prd +
    +
    +
    J
    John
    + PRD.md → +
    +
    +
    Has UI?
    +
    +
    + create-ux-design + if yes +
    +
    +
    S
    Sally
    + ux-spec.md → +
    +
    +
    +
    +
    + + +
    +
    +
    3
    +
    Solutioning
    +
    +
    +
    +
    + create-architecture +
    +
    +
    W
    Winston
    + architecture.md → +
    +
    +
    +
    + create-epics-and-stories +
    +
    +
    J
    John
    + epics.md → +
    +
    +
    +
    + check-implementation-readiness +
    +
    +
    J
    John
    + gate check +
    +
    +
    +
    +
    + + +
    +
    +
    4
    +
    Implementation
    +
    +
    +
    +
    + sprint-planning +
    +
    +
    B
    Bob
    + sprint-status.yaml → +
    +
    +
    +
    + create-story +
    +
    +
    B
    Bob
    + story-[slug].md → +
    +
    +
    +
    + dev-story +
    +
    +
    A
    Amelia
    + code → +
    +
    +
    +
    + code-review +
    +
    +
    A
    Amelia
    + approve +
    +
    +
    +
    + correct-course + ad-hoc +
    +
    +
    J
    John
    + updated plan +
    +
    +
    +
    + retrospective + per epic +
    +
    +
    B
    Bob
    + lessons +
    +
    +
    +
    +
    + +
    +
    + +
    +

    Quick Flow (Parallel Track)

    + For small, well-understood changes — skip phases 1-3 +
    +
    +
    +
    +
    B
    Barry
    + quick-spec +
    → tech-spec.md
    +
    + +
    +
    B
    Barry
    + quick-dev +
    → working code
    +
    +
    +
    + +
    +
    📚 Context Flow
    +

    Each document becomes context for the next phase.

    +
    + create-story loads epics, PRD, architecture, UX + dev-story loads story file + code-review loads architecture, story + quick-dev loads tech-spec +
    +
    + +
    +
    Analysis
    +
    Planning
    +
    Solutioning
    +
    Implementation
    +
    Quick Flow
    +
    + + diff --git a/website/src/rehype-base-paths.js b/website/src/rehype-base-paths.js index b5a4c88f..c6160091 100644 --- a/website/src/rehype-base-paths.js +++ b/website/src/rehype-base-paths.js @@ -39,6 +39,18 @@ export default function rehypeBasePaths(options = {}) { } } + // Process iframe tags with src attribute + if (node.tagName === 'iframe' && node.properties?.src) { + const src = node.properties.src; + + if (typeof src === 'string' && src.startsWith('/') && !src.startsWith('//')) { + // Don't transform if already has the base path + if (normalizedBase !== '/' && !src.startsWith(normalizedBase)) { + node.properties.src = normalizedBase + src.slice(1); + } + } + } + // Process anchor tags with href attribute if (node.tagName === 'a' && node.properties?.href) { const href = node.properties.href; diff --git a/website/src/styles/custom.css b/website/src/styles/custom.css index 70688aa2..4ad9cb2d 100644 --- a/website/src/styles/custom.css +++ b/website/src/styles/custom.css @@ -16,6 +16,9 @@ --ai-banner-height: 2.75rem; --sl-nav-height: 6.25rem; /* Base nav height (~3.5rem) + banner height (2.75rem) */ + /* Full-width content - override Starlight's default 45rem/67.5rem */ + --sl-content-width: 100%; + /* Primary accent colors - purple to match Docusaurus */ --sl-color-accent-low: #e0e0ff; --sl-color-accent: #8C8CFF; @@ -45,6 +48,9 @@ COLOR PALETTE - Dark Mode (Primary Focus) ============================================ */ :root[data-theme='dark'] { + /* Full-width content - override Starlight's default */ + --sl-content-width: 100%; + /* Primary accent colors - purple to match Docusaurus */ --sl-color-accent-low: #2a2a5a; --sl-color-accent: #8C8CFF; @@ -174,13 +180,22 @@ } /* ============================================ - LAYOUT - Fixed width at large viewport + LAYOUT - Full width content ============================================ */ .content-panel { - max-width: 1400px; + width: 100%; margin: 0 auto; } +/* Full-width workflow diagram iframe */ +.sl-markdown-content > iframe:first-child { + width: 100vw !important; + margin-left: calc(50% - 50vw); + border-radius: 0 !important; + border-left: none !important; + border-right: none !important; +} + /* Main content area */ main { min-width: 0;