Skip to content
/

BMAD-METHOD

bmad-method · bmad-code-org/BMAD-METHOD · ★ 48k · last commit 2026-05-25

Provides a full agile delivery lifecycle with named expert-persona AI collaborators that elicit the human's best thinking rather than substituting AI opinion for it.

Best whenAI should act as a Socratic facilitator that brings out the user's vision — not an autonomous author — and genuine independent subagents produce better multi…
Skip ifAI doing the thinking for the user and producing average results, Gated communities and paywalls for AI development tooling
Primitive shape 40 total
Skills 34 Subagents 6
00

Summary

BMAD-METHOD — Summary

BMAD-METHOD (Breakthrough Method for Agile AI-Driven Development) is a full-lifecycle, npm-installed AI development framework that wires named expert-persona agents (PM, Analyst, Architect, UX Designer, Developer, Tech Writer) and 34+ structured skill-based workflows across four phases — Analysis, Planning, Solutioning, and Implementation — so a solo developer or small team can ship software using an AI-driven agile process from first brainstorm to deployed code.

The problem it solves is that generic AI coding tools "do the thinking for you, producing average results" — BMAD replaces that with structured, Socratic expert-collaborator workflows that bring the human's best thinking forward rather than substituting AI opinion for it.

What makes it distinct is the combination of the "Agile Agent Pack" concept (six named, customizable personas with TOML-driven override layers), a four-level config-merge system (base → team → user → runtime), Party Mode (genuine multi-subagent roundtables), and a modular extension ecosystem that includes specialist add-on packs (Test Architect, Game Dev Studio, Creative Intelligence Suite, BMad Builder) all installable through a single npx bmad-method install command.

The primary audience is independent developers and small teams who want AI assistance that scales intelligently from a quick bug fix up to an enterprise-sized green-field project, using whichever AI IDE they already own (Claude Code, Cursor, Windsurf, GitHub Copilot, or OpenCode).

As of v6.8.0 (May 2026) the project is production-ready with 48 000+ GitHub stars, 30 contributors, active weekly releases, a dedicated docs site (docs.bmad-method.org), Discord community, and MIT license.

01

Overview

BMAD-METHOD — Overview

Origin

BMAD-METHOD was created by Brian (BMad) Madison and first published in April 2025 under the bmad-code-org GitHub organization. It grew rapidly — reaching 48 000 stars by May 2026 — driven by the intersection of AI coding tool popularity and a perceived gap: every available AI assistant generated code but none guided teams through a complete agile delivery process. The project reached v6 within roughly twelve months of launch, with weekly releases continuing to the present.

Tagline and Intro

The README opens with:

Build More Architect Dreams — An AI-driven agile development module for the BMad Method Module Ecosystem, the best and most comprehensive Agile AI Driven Development framework that has true scale-adaptive intelligence that adjusts from bug fixes to enterprise systems.

100% free and open source. No paywalls. No gated content. No gated Discord. We believe in empowering everyone, not just those who can pay for a gated community or courses.

Problem Framing

From the README:

Traditional AI tools do the thinking for you, producing average results. BMad agents and facilitated workflows act as expert collaborators who guide you through a structured process to bring out your best thinking in partnership with the AI.

This is the core philosophical stance: the role of AI is elicitation and structure, not substitution. Workflows are deliberately Socratic — asking the user to narrate user journeys, articulate stake levels, and identify concerns — rather than having the model fill in template sections unilaterally.

Philosophy

BMad treats software delivery as a multi-phase discipline borrowed from agile:

  1. Analysis — research, domain understanding, product briefs, PRFAQ
  2. Planning — PRD creation, UX specification, stakeholder alignment
  3. Solutioning — technical architecture, epics, user stories
  4. Implementation — story execution, sprint management, code review, retrospectives

Each phase is staffed by one or more named expert personas. The bmad-help skill acts as a meta-guide that reads the project's current artifact state and tells the user exactly what to do next, with recommended and required sequencing.

Scale-Adaptive Intelligence

A core claim is that the system "automatically adjusts planning depth based on project complexity." A bug fix skips the PRD phase entirely and routes directly to bmad-quick-dev. An enterprise green-field project works through all four phases. The user_skill_level config option (beginner / intermediate / expert) additionally shapes agent communication style.

Web Bundles

V6 reintroduced web bundles — six planning workflows packaged as Google Gemini Gems and ChatGPT Custom GPTs. The rationale is cost: planning work runs on a flat-rate web subscription instead of metered IDE tokens.

Version History Note

The README explicitly references V4 (shipped web bundles), V5 (transition period), and V6 (current) as major milestones. V7 is the next planned release; v6.7.0 deprecated multiple legacy skill shims (bmad-create-prd, bmad-edit-prd, bmad-validate-prd, bmad-create-ux-design) that will be removed in v7.0.0.

02

Architecture

BMAD-METHOD — Architecture

Distribution Type

npm-package — published as bmad-method on npm, installed via npx interactive installer that generates project-local files. Also has a .claude-plugin manifest for Claude Code plugin marketplace registration.

Install Methods

Standard interactive installation:

npx bmad-method install

Non-interactive (CI/CD):

npx bmad-method install --directory /path/to/project --modules bmm --tools claude-code --yes

With config overrides at install time:

npx bmad-method install --yes \
  --modules bmm --tools claude-code \
  --set bmm.project_knowledge=research \
  --set bmm.user_skill_level=expert

Prerelease channel:

npx bmad-method@next install

Prerequisites

  • Node.js >= 20.12.0
  • Python >= 3.10
  • uv (Python package manager from Astral)

Directory Layout (post-install)

After running npx bmad-method install, the following structure lands in the project:

<project-root>/
  _bmad/                          # BMad runtime directory
    config.toml                   # team-scoped config (merged base layer)
    config.user.toml              # user-scoped config
    scripts/
      resolve_customization.py    # TOML merge resolver for skill activation
      resolve_config.py           # config resolver for agent roster, party mode
    core/
      config.yaml                 # resolved core config (user_name, language, etc.)
    bmm/
      config.yaml                 # BMM-module config (planning_artifacts, implementation_artifacts, etc.)
    custom/
      <skill-name>.toml           # team overrides per skill (optional)
      <skill-name>.user.toml      # user overrides per skill (optional)
      config.toml                 # team-level agent roster overrides
      config.user.toml            # personal agent roster overrides
    _config/
      bmad-help.csv               # assembled catalog of all installed skills + sequencing
  _bmad-output/                   # default output root (configurable)
    planning-artifacts/           # PRD, UX, architecture, briefs (phases 1-3)
    implementation-artifacts/     # stories, sprint-status.yaml, reviews (phase 4)
  docs/                           # project_knowledge dir (configurable)

Repository Top-Level Structure

BMAD-METHOD/
  src/
    core-skills/                  # shared utilities: bmad-help, bmad-brainstorming, bmad-party-mode, etc.
    bmm-skills/
      1-analysis/                 # analysis phase agents + workflows
      2-plan-workflows/           # planning phase agents + workflows
      3-solutioning/              # architecture + epics phase
      4-implementation/           # dev agents + story/sprint workflows
    scripts/                      # internal install scripts
  .claude-plugin/
    marketplace.json              # Claude Code plugin registry manifest
  web-bundles/
    bundles.json                  # Gemini Gems / ChatGPT GPT bundle definitions
  tools/                          # validation, packaging scripts
  bmad-modules.yaml               # official module registry
  package.json                    # npm package definition
  CHANGELOG.md
  README.md

Configuration Files

File Scope Purpose
_bmad/config.toml team Base installer config; merged first
_bmad/config.user.toml user User-scoped settings (user_name, language); merged second
_bmad/custom/config.toml team Agent roster and cross-cutting team overrides
_bmad/custom/config.user.toml personal Personal agent roster overrides
_bmad/custom/<skill>.toml team Per-skill workflow/agent team overrides
_bmad/custom/<skill>.user.toml personal Per-skill personal overrides
_bmad/bmm/config.yaml project Resolved BMM module config loaded by every skill at runtime
_bmad/_config/bmad-help.csv project Assembled skill catalog used by bmad-help for navigation

Required Dependencies

  • node >= 20.12.0
  • python >= 3.10
  • uv (Astral Python package manager)
  • The installer itself has no runtime npm dependencies beyond Node.js; all skill resolution runs via Python scripts installed alongside the project files.

Per-Skill Structure

Each skill lives in a directory with a consistent layout:

<skill-name>/
  SKILL.md              # primary skill prompt (frontmatter + Markdown instructions)
  customize.toml        # base/default customization surface (DO NOT EDIT — overwritten on update)
  steps/                # optional: micro-file step sequence for long workflows
    step-01-*.md
    step-02-*.md
    ...
  assets/               # optional: templates, checklists, reference docs
  references/           # optional: internal references (validate.md, headless.md, etc.)
03

Components

BMAD-METHOD — Components

Commands

(none) — BMAD does not use slash-commands. It uses Claude Code Skills exclusively for all interactions.

Skills

BMAD ships two plugin bundles via .claude-plugin/marketplace.json. Total skill count across both plugins: 34 skills (including deprecated shims that forward to newer skills and will be removed in v7).

Plugin 1: bmad-pro-skills — Core Utility Skills (11 skills)

Skill Purpose
bmad-help Analyzes current artifact state and recommends the next skill(s) to run; answers workflow questions
bmad-brainstorming Facilitates interactive brainstorming with diverse creative techniques and ideation methods
bmad-spec Distills any intent input (brain dump, PRD, transcript) into a five-field SPEC.md kernel
bmad-party-mode Orchestrates genuine multi-subagent roundtable discussions among installed persona agents
bmad-shard-doc Splits large markdown documents into organized smaller files by level-2 sections
bmad-advanced-elicitation Applies 69+ elicitation techniques (Socratic, pre-mortem, Six Hats, etc.) to refine any output
bmad-editorial-review-prose Reviews prose quality, clarity, and voice
bmad-editorial-review-structure Reviews document structure, hierarchy, and information architecture
bmad-index-docs Generates or updates an index.md for any folder
bmad-review-adversarial-general Cynical adversarial review — finds at least ten issues in any artifact
bmad-review-edge-case-hunter Hunts edge cases and boundary conditions in specs or code

Plugin 2: bmad-method-lifecycle — Full-Lifecycle BMM Skills (31 skills)

Phase 1: Analysis

Skill Purpose
bmad-agent-analyst Activates Mary the Business Analyst persona; dispatches to analysis sub-skills
bmad-agent-tech-writer Activates Paige the Technical Writer persona
bmad-document-project Documents an existing project's patterns and conventions
bmad-product-brief Creates or updates a product brief through guided or autonomous discovery
bmad-domain-research Deep domain expertise research and terminology analysis
bmad-market-research Market analysis, competitive landscape, customer needs
bmad-technical-research Technical feasibility, architecture options, implementation approaches
bmad-prfaq Creates a PRFAQ (Working Backwards) document

Phase 2: Planning

Skill Purpose
bmad-agent-pm Activates John the Product Manager persona
bmad-agent-ux-designer Activates Sally the UX Designer persona
bmad-prd Creates, updates, or validates a PRD (three intents: create/update/validate)
bmad-ux Creates DESIGN.md (visual tokens) + EXPERIENCE.md (behavior, flow, IA)
bmad-create-prd DEPRECATED shim — forwards to bmad-prd create intent; removed in v7
bmad-edit-prd DEPRECATED shim — forwards to bmad-prd update intent; removed in v7
bmad-validate-prd DEPRECATED shim — forwards to bmad-prd validate intent; removed in v7
bmad-create-ux-design DEPRECATED shim — replaced by bmad-ux in v6.8.0; removed in v7

Phase 3: Solutioning

Skill Purpose
bmad-agent-architect Activates Winston the System Architect persona
bmad-create-architecture Guided multi-step workflow producing architecture decisions via micro-file step sequence
bmad-check-implementation-readiness Validates all artifacts are complete and consistent before implementation begins
bmad-create-epics-and-stories Transforms PRD + architecture into epics with detailed user stories and acceptance criteria
bmad-generate-project-context Creates project-context.md with critical rules and patterns for all implementation agents

Phase 4: Implementation

Skill Purpose
bmad-agent-dev Activates Amelia the Senior Software Engineer persona
bmad-dev-story Executes a single approved story using TDD (red-green-refactor)
bmad-quick-dev Unified quick flow: clarify intent, plan, implement, review for any ad-hoc change
bmad-sprint-planning Generates sprint-status.yaml from epic files; detects story statuses
bmad-sprint-status Updates and reports current sprint progress
bmad-code-review Adversarial parallel code review (Blind Hunter + Edge Case Hunter + Acceptance Auditor)
bmad-create-story Creates a new user story file from description
bmad-correct-course Manages significant mid-sprint changes; produces Sprint Change Proposal
bmad-retrospective Facilitates sprint retrospective and captures learnings
bmad-qa-generate-e2e-tests Generates API and E2E tests for existing features
bmad-checkpoint-preview Human-in-the-loop review: orients human to a change before they deep-dive
bmad-investigate Forensic evidence-graded case investigation for bugs, incidents, or unfamiliar code areas

Subagents / Personas

6 named agent personas in the BMM module (all fully customizable via TOML):

Agent Skill Persona Name Title Icon
bmad-agent-analyst Mary Business Analyst 📊
bmad-agent-tech-writer Paige Technical Writer 📚
bmad-agent-pm John Product Manager 📋
bmad-agent-ux-designer Sally UX Designer 🎨
bmad-agent-architect Winston System Architect 🏗️
bmad-agent-dev Amelia Senior Software Engineer 💻

bmad-party-mode spawns any subset of these as genuine independent subagents (one LLM process per agent) for roundtable discussions.

Hooks

(none) — BMAD does not use Claude Code hook events (PreToolUse, PostToolUse, SessionStart, etc.). All workflow control happens inside skill SKILL.md instructions using Python scripts for config resolution.

MCP Servers

(none) — No MCP servers are bundled or required. The framework is tool-agnostic at the MCP layer.

Scripts / Binaries

Script Location Purpose
npx bmad-method npm Interactive and non-interactive installer
resolve_customization.py _bmad/scripts/ Merges base → team → user TOML override layers for a skill's [agent] or [workflow] block
resolve_config.py _bmad/scripts/ Resolves the agent roster from four-layer merged config for party-mode and other multi-agent skills
list_customizable_skills.py _bmad/scripts/ Enumerates installed skills with their customization surfaces for bmad-customize
tools/bundle-web-bundles.js repo tools/ Packages web bundles into dist/web-bundles/{slug}.zip for GitHub Release attachment
tools/validate-sidebar-order.js repo tools/ Validates docs sidebar order and translation drift
05

Prompts

BMAD-METHOD — Prompts and Prompt Techniques

How Agent Personas Are Defined

Every agent persona is a Claude Code skill consisting of two files:

  1. SKILL.md — The active prompt. YAML frontmatter provides the name and description (used by Claude Code for skill routing). The body is Markdown with an eight-step activation sequence that is identical across all six persona agents.

  2. customize.toml — The persona's default configuration. Contains [agent] block with name, title, icon, role, identity, communication_style, principles[], persistent_facts[], and a [[agent.menu]] capabilities table. Users override this via _bmad/custom/<skill-name>.toml.

The SKILL.md uses template variables like {agent.icon}, {agent.menu}, {agent.communication_style} that are resolved at runtime by running a Python merge script against the TOML layers.


Verbatim Excerpt 1: Mary the Business Analyst — bmad-agent-analyst/SKILL.md (first 90 lines)

---
name: bmad-agent-analyst
description: Strategic business analyst and requirements expert. Use when the user asks to talk to Mary or requests the business analyst.
---

# Mary — Business Analyst

## Overview

You are Mary, the Business Analyst. You bring deep expertise in market research, competitive analysis, requirements elicitation, and domain knowledge — translating vague needs into actionable specs while staying grounded in evidence-based analysis.

## Conventions

- Bare paths (e.g. `references/guide.md`) resolve from the skill root.
- `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
- `{project-root}`-prefixed paths resolve from the project working directory.
- `{skill-name}` resolves to the skill directory's basename.

## On Activation

### Step 1: Resolve the Agent Block

Run: `python3 {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key agent`

**If the script fails**, resolve the `agent` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:

1. `{skill-root}/customize.toml` — defaults
2. `{project-root}/_bmad/custom/{skill-name}.toml` — team overrides
3. `{project-root}/_bmad/custom/{skill-name}.user.toml` — personal overrides

Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.

### Step 2: Execute Prepend Steps

Execute each entry in `{agent.activation_steps_prepend}` in order before proceeding.

### Step 3: Adopt Persona

Adopt the Mary / Business Analyst identity established in the Overview. Layer the customized persona on top: fill the additional role of `{agent.role}`, embody `{agent.identity}`, speak in the style of `{agent.communication_style}`, and follow `{agent.principles}`.

Fully embody this persona so the user gets the best experience. Do not break character until the user dismisses the persona. When the user calls a skill, this persona carries through and remains active.

### Step 4: Load Persistent Facts

Treat every entry in `{agent.persistent_facts}` as foundational context you carry for the rest of the session. Entries prefixed `file:` are paths or globs under `{project-root}` — load the referenced contents as facts. All other entries are facts verbatim.

### Step 5: Load Config

Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
- Use `{user_name}` for greeting
- Use `{communication_language}` for all communications
- Use `{document_output_language}` for output documents
- Use `{planning_artifacts}` for output location and artifact scanning
- Use `{project_knowledge}` for additional context scanning

### Step 6: Greet the User

Greet `{user_name}` warmly by name as Mary, speaking in `{communication_language}`. Lead the greeting with `{agent.icon}` so the user can see at a glance which agent is speaking. Remind the user they can invoke the `bmad-help` skill at any time for advice.

Continue to prefix your messages with `{agent.icon}` throughout the session so the active persona stays visually identifiable.

### Step 7: Execute Append Steps

Execute each entry in `{agent.activation_steps_append}` in order.

Activation is complete. If `activation_steps_prepend` or `activation_steps_append` were non-empty, confirm every entry was executed in order before proceeding. Do not begin the main workflow until all activation steps have been completed.

### Step 8: Dispatch or Present the Menu

If the user's initial message already names an intent that clearly maps to a menu item (e.g. "hey Mary, let's brainstorm"), skip the menu and dispatch that item directly after greeting.

Otherwise render `{agent.menu}` as a numbered table: `Code`, `Description`, `Action` (the item's `skill` name, or a short label derived from its `prompt` text). **Stop and wait for input.** Accept a number, menu `code`, or fuzzy description match.

Dispatch on a clear match by invoking the item's `skill` or executing its `prompt`. Only pause to clarify when two or more items are genuinely close — one short question, not a confirmation ritual. When nothing on the menu fits, just continue the conversation; chat, clarifying questions, and `bmad-help` are always fair game.

From here, Mary stays active — persona, persistent facts, `{agent.icon}` prefix, and `{communication_language}` carry into every turn until the user dismisses her.

Technique demonstrated: Eight-step ordered activation that is identical across all persona agents. Steps 1 and 5 issue Python subprocess calls to merge TOML config layers before any persona behavior begins. This ensures customization is always resolved from disk rather than hard-coded into the prompt.


Verbatim Excerpt 2: Mary's Persona Configuration — bmad-agent-analyst/customize.toml

# DO NOT EDIT -- overwritten on every update.
#
# Mary, the Business Analyst, is the hardcoded identity of this agent.
# Customize the persona and menu below to shape behavior without
# changing who the agent is.

[agent]
name="Mary"
title="Business Analyst"
icon = "📊"

activation_steps_prepend = []
activation_steps_append = []

persistent_facts = [
  "file:{project-root}/**/project-context.md",
]

role = "Help the user ideate research and analyze before committing to a project in the BMad Method analysis phase."
identity = "Channels Michael Porter's strategic rigor and Barbara Minto's Pyramid Principle discipline."
communication_style = "Treasure hunter's excitement for patterns, McKinsey memo's structure for findings."

principles = [
  "Every finding grounded in verifiable evidence.",
  "Requirements stated with absolute precision.",
  "Every stakeholder voice represented.",
]

[[agent.menu]]
code = "BP"
description = "Expert guided brainstorming facilitation"
skill = "bmad-brainstorming"

[[agent.menu]]
code = "MR"
description = "Market analysis, competitive landscape, customer needs and trends"
skill = "bmad-market-research"

[[agent.menu]]
code = "DR"
description = "Industry domain deep dive, subject matter expertise and terminology"
skill = "bmad-domain-research"

[[agent.menu]]
code = "TR"
description = "Technical feasibility, architecture options and implementation approaches"
skill = "bmad-technical-research"

[[agent.menu]]
code = "CB"
description = "Create or update product briefs through guided or autonomous discovery"
skill = "bmad-product-brief"

Technique demonstrated: TOML-based persona decomposition. identity cites real intellectual traditions (Porter, Minto) as a concise style anchor. communication_style is a single sentence that functions as a metaphor-driven voice guide. principles[] are three short declarative statements that serve as behavioral constraints. [[agent.menu]] items link persona capabilities to specific skills — the menu is the persona's capability surface.


Verbatim Excerpt 3: Party Mode — bmad-party-mode/SKILL.md (agent spawn pattern)

## Why This Matters

The whole point of party mode is that each agent produces a genuinely independent perspective. When one LLM roleplays multiple characters, the "opinions" tend to converge and feel performative. By spawning each agent as its own subagent process, you get real diversity of thought — agents that actually disagree, catch things the others miss, and bring their authentic expertise to bear.

...

### 2. Build Context and Spawn

For each selected agent, spawn a subagent using the Agent tool. Each subagent gets:

**The agent prompt** (built from the resolved roster entry):

You are {name} ({title}), a BMAD agent in a collaborative roundtable discussion.

Your Persona

{icon} {name} — {description}

Discussion Context

{summary of the conversation so far — keep under 400 words}

{project context if relevant}

What Other Agents Said This Round

{if this is a cross-talk or reaction request, include the responses being reacted to — otherwise omit this section}

The User's Message

{the user's actual message}

Guidelines

  • Respond authentically as {name}. Your voice, ethos, and speech pattern all come from the description above — embody them fully.
  • Start your response with: {icon} {name}:
  • Speak in {communication_language}.

Technique demonstrated: Structured subagent prompt template that limits context to 400-word summaries to avoid token bloat, clearly separates "what others said" from "what the user said," and anchors persona identity in the roster description rather than repeating the full TOML.


Verbatim Excerpt 4: Amelia the Developer Principles — bmad-agent-dev/customize.toml

role = "Implement approved stories with test-first discipline and ship working, verified code during the BMad Method implementation phase."
identity = "Disciplined in Kent Beck's TDD and the Pragmatic Programmer's precision."
communication_style = "Ultra-succinct. Speaks in file paths and AC IDs — every statement citable. No fluff, all precision."

principles = [
  "No task complete without passing tests.",
  "Red, green, refactor — in that order.",
  "Tasks executed in the sequence written.",
]

Technique demonstrated: Developer persona is deliberately constrained in communication style ("file paths and AC IDs") to reduce narrative drift during implementation. The three principles are ordered to match the TDD red-green-refactor loop, turning a methodology into a behavioral contract the model enforces on itself.


Verbatim Excerpt 5: BMad Dev Story — Execution Discipline

From bmad-dev-story/SKILL.md:

- Execute ALL steps in exact order; do NOT skip steps
- Absolutely DO NOT stop because of "milestones", "significant progress", or "session boundaries". Continue in a single execution until the story is COMPLETE (all ACs satisfied and all tasks/subtasks checked) UNLESS a HALT condition is triggered or the USER gives other instruction.
- Do NOT schedule a "next session" or request review pauses unless a HALT condition applies. Only Step 9 decides completion.
- User skill level ({user_skill_level}) affects conversation style ONLY, not code updates.

Technique demonstrated: Anti-pausing instructions are stated explicitly in ALL CAPS with direct prohibition of common LLM hedging behaviors ("should I continue?", "would you like me to proceed?"). The distinction between user skill level's effect on communication vs. code quality is clearly delineated.


Verbatim Excerpt 6: bmad-prd Discovery Elicitation Rules

From bmad-prd/SKILL.md:

**Elicitation, not direction.** Discovery pulls the user's vision out; it does not insert yours. Open-ended "tell me about X" beats multiple choice. When you find yourself naming wedges, picking MVP cuts, or proposing phases, stop — you have crossed from elicitation into authoring. Hand the pen back. Infer-and-confirm ("I'm assuming X works like Y — right?") is fine; quizzing the user through a tree of LLM-shaped choices is not.

Technique demonstrated: An explicit boundary drawn between facilitation and authoring. The model is given a behavioral test it can apply to its own responses mid-generation: "if I am naming wedges or picking MVP cuts, I have crossed the line." This self-monitoring instruction is the philosophical core of the BMAD approach.


Summary of Prompting Techniques

Technique Where Used
Ordered numbered activation steps with mandatory Python subprocess calls before persona adoption All 6 persona agents
TOML-based persona decomposition: identity (intellectual tradition citation), communication_style (metaphor), principles[] (behavioral constraints) All agent customize.toml files
Micro-file step architecture: each workflow step is a separate .md file loaded sequentially, never more than one at a time bmad-create-architecture, bmad-create-epics-and-stories, bmad-dev-story, bmad-quick-dev
Anti-pause / anti-hedge language in ALL CAPS bmad-dev-story, bmad-advanced-elicitation
Genuine multi-subagent spawning with structured 400-word context summaries bmad-party-mode
Explicit elicitation/authoring boundary with behavioral self-test bmad-prd
Parallel subagent dispatch for reviews and research, parent assembles summaries only bmad-prd, bmad-code-review, bmad-investigate
09

Uniqueness

BMAD-METHOD — Uniqueness and Positioning

What This Does That No Other Seed Framework Does

1. Named expert personas with deep customizable identity layers. BMAD ships six named characters (Mary, John, Sally, Winston, Amelia, Paige) — each with an intellectual tradition citation (identity = "Channels Michael Porter's strategic rigor..."), a metaphorical voice guide (communication_style = "Treasure hunter's excitement for patterns..."), and behavioral principles — all customizable via a four-layer TOML merge system without touching the shipped prompt files. No other framework in this analysis set has this combination of named persona + customization architecture.

2. Genuine multi-subagent Party Mode. The bmad-party-mode skill spawns each participating agent as a truly independent LLM process via the Agent tool, explicitly to avoid the "opinions converge" failure mode of single-LLM roleplay. The skill's design rationale is stated verbatim: "When one LLM roleplays multiple characters, the 'opinions' tend to converge and feel performative." This is a design decision no other surveyed framework makes.

3. Full lifecycle from brainstorm to deployed story — with explicit agile scaffolding. BMAD covers brainstorming, product brief, PRFAQ, PRD (with Create/Update/Validate intents), UX design (two-file DESIGN.md + EXPERIENCE.md contract), architecture, epics and stories, sprint planning, story implementation with TDD, code review, and retrospectives — 34+ skills organized into four phases with sequencing metadata in a CSV catalog that bmad-help reads to reconstruct position and recommend next steps. The coverage is broader than any other framework in this set.

4. The bmad-help meta-navigator skill. At any point, invoking bmad-help reads the project's artifact state from disk, cross-references the installed skill catalog (including phase ordering, preceded-by, followed-by, and required fields), and tells the user exactly where they are and what to do next — including offering to run the next skill directly. This is a self-orienting workflow navigator with no equivalent in other frameworks.

5. Micro-file step architecture for long workflows. Multi-step workflows (bmad-create-architecture, bmad-create-epics-and-stories, bmad-dev-story, bmad-quick-dev) use step-file architecture: each step is a separate .md file loaded sequentially. The skill explicitly forbids loading multiple step files simultaneously, providing a token-budget-aware execution model for complex multi-hour workflows.

6. TOML-based override system with merge semantics. Customization is separated from shipped files. Users never edit SKILL.md or customize.toml directly. They create _bmad/custom/<skill>.toml override files. Merge rules are documented: scalars override, tables deep-merge, arrays of tables keyed by code/id replace matching entries and append new ones. This survives updates without losing customization.

What It Explicitly Drops

  • No MCP servers — BMAD is tool-agnostic at the infrastructure layer; it does not ship or require any MCP tools.
  • No Claude Code hooks — Unlike frameworks that use PreToolUse/PostToolUse events for enforcement, BMAD relies entirely on in-skill instruction text.
  • No git worktrees — No automated branch-per-story or workspace isolation.
  • No slash commands — All interactions go through skills, not /command syntax.
  • No community module picker in v6.7+ — The interactive community marketplace registry was deliberately retired. Community modules must now be installed via --custom-source <git-url> to reduce maintenance surface.

One-Sentence Positioning

BMAD is the only AI development framework that ships a complete agile delivery process — from brainstorm to deployed story — staffed by named, intellectually-grounded, deeply-customizable expert personas that collaborate as genuine independent subagents, rather than providing prompt templates or automation hooks.

Failure Modes / Criticisms

No Reddit or HN quotes are available in the current index. Based on design inspection, the following failure modes are observable:

  1. Complexity surface. With 34+ skills, 6 personas, 4 config layers, and module add-ons, the system has a high learning curve. bmad-help mitigates this but does not eliminate it.
  2. Python runtime dependency. Every skill activation runs python3 ... resolve_customization.py. Projects without Python 3.10+ installed will fail silently or need fallback path. The installer requires both Node.js and Python.
  3. TOML merge complexity. The four-layer merge rules (scalars override, tables deep-merge, arrays of tables replace by code/id) are sophisticated. Users who misunderstand the rules may see unexpected persona behavior.
  4. Anti-authoring philosophy requires discipline. The PRD skill's explicit prohibition against the model "naming wedges, picking MVP cuts, or proposing phases" is philosophically correct but creates sessions that feel slow if the user wants the model to take the lead.
  5. Context consumption. Full-lifecycle projects generate large artifact sets. The subagent delegation model mitigates but does not eliminate context pressure in late-phase implementation sessions.
04

Workflow

BMAD-METHOD — Workflow

Workflow Phases

BMAD-METHOD structures delivery across four numbered phases. Each phase is optional except where required=true in the help catalog; bmad-help reads artifact state to recommend skipping phases that do not apply (e.g., a quick bug fix skips phases 1–3 entirely and goes straight to bmad-quick-dev).

Phase Name Key Skills Primary Artifacts
0 Anytime bmad-help, bmad-brainstorming, bmad-spec, bmad-party-mode, bmad-advanced-elicitation SPEC.md, brainstorm notes
1 Analysis bmad-agent-analyst, bmad-product-brief, bmad-prfaq, research skills product-brief.md, prfaq.md, research docs
2 Planning bmad-agent-pm, bmad-agent-ux-designer, bmad-prd, bmad-ux prd.md, addendum.md, .decision-log.md, DESIGN.md, EXPERIENCE.md
3 Solutioning bmad-agent-architect, bmad-create-architecture, bmad-create-epics-and-stories, bmad-generate-project-context architecture.md, project-context.md, epic files (epic-N.md)
4 Implementation bmad-agent-dev, bmad-sprint-planning, bmad-dev-story, bmad-code-review, bmad-retrospective sprint-status.yaml, story files (story-N.md), review reports, retrospective notes

Human Approval Gates

BMAD has explicit human approval gates baked into skill step sequences. The micro-file step architecture enforces these:

  1. End of each architecture stepbmad-create-architecture uses a step-file sequence; each step ends with a menu containing a Continue option. The AI must halt and wait for user to select 'C' before loading the next step file.
  2. End of each epic/story stepbmad-create-epics-and-stories uses the same step-file architecture with mandatory halt-at-menu behavior.
  3. PRD finalize gatebmad-prd runs a Reviewer Gate at finalization: the user is offered a menu of reviewers (rubric walker + ad-hoc reviewers); they choose all, a subset, or skip. The AI dispatches parallel subagent reviews and presents tiered findings.
  4. Working mode selectionbmad-prd Discovery pauses for the user to select Fast path vs. Coaching path before proceeding.
  5. UX spine validation gatebmad-ux offers an opt-in reviewer gate before finalizing DESIGN.md and EXPERIENCE.md.
  6. Story dispatchbmad-dev-story does not self-select stories; the user explicitly provides or confirms the story file to implement.
  7. Post-outcome pauses in investigationbmad-investigate presents findings after each outcome and explicitly pauses for user acknowledgment before continuing.

TDD Enforcement

Yes — mandatory for story implementation, optional for quick dev.

From bmad-dev-story SKILL.md:

You execute approved stories with test-first discipline — red, green, refactor — shipping verified code that meets every acceptance criterion.

From bmad-agent-dev persona principles in customize.toml:

principles = [
  "No task complete without passing tests.",
  "Red, green, refactor — in that order.",
  "Tasks executed in the sequence written.",
]

bmad-quick-dev targets 900–1600 token specifications and produces "hardened, reviewable artifacts" but does not mandate TDD explicitly — it is the express lane for ad-hoc work.

Multi-Agent Execution

Yes. Multi-agent execution is a first-class feature:

  • Party Mode (bmad-party-mode): Spawns 2–4 persona agents as genuinely independent subagents (one Agent tool call per persona) so their responses are truly independent. The skill justifies this explicitly: "When one LLM roleplays multiple characters, the 'opinions' tend to converge and feel performative."
  • Parallel subagent extraction in bmad-prd: Source documents are sent to extraction subagents; the parent assembles from structured summaries.
  • Parallel review in bmad-code-review and bmad-prd Reviewer Gate: multiple adversarial reviewers (Blind Hunter, Edge Case Hunter, Acceptance Auditor) dispatched in parallel.
  • Web research subagents during PRD discovery: spawned to ground competitive/landscape context without polluting the parent context.
  • bmad-investigate delegation: When a step requires reading 5+ files or any file >10K tokens, delegates to a subagent that returns structured JSON.

--solo flag on bmad-party-mode disables real subagent spawning and falls back to single-LLM roleplay.

Git Worktrees / Isolated Workspaces

No — BMAD does not use git worktrees or isolated workspace branching as part of its methodology. Story isolation is file-based (each story is a separate markdown file), not git-branch-based.

Spec Format

Markdown is the primary spec format.

  • PRDs: prd.md with YAML frontmatter (title, status, created, updated)
  • Architecture: architecture.md
  • User stories: individual story-N.md files with YAML frontmatter
  • Sprint state: sprint-status.yaml (YAML)
  • Spec kernel: SPEC.md (Markdown with five-field kernel: Why, Capabilities, Constraints, Non-goals, Success signal)
  • UX: DESIGN.md + EXPERIENCE.md (Markdown, Google Labs visual spec format)
  • Decision log: .decision-log.md (append-only audit trail)

Files Generated Per Feature

Artifact Produced By Path
product-brief.md bmad-product-brief {planning_artifacts}/product-brief/
prfaq.md bmad-prfaq {planning_artifacts}/
prd.md bmad-prd {planning_artifacts}/prd-{slug}/
addendum.md bmad-prd alongside prd.md
.decision-log.md bmad-prd, bmad-spec alongside primary artifact
DESIGN.md bmad-ux {planning_artifacts}/ux-{slug}/
EXPERIENCE.md bmad-ux {planning_artifacts}/ux-{slug}/
SPEC.md bmad-spec {output_folder}/specs/spec-{slug}/
architecture.md bmad-create-architecture {planning_artifacts}/
project-context.md bmad-generate-project-context {project_knowledge}/
epic-N.md bmad-create-epics-and-stories {planning_artifacts}/epics/
sprint-status.yaml bmad-sprint-planning {implementation_artifacts}/
story-N.md bmad-create-story, bmad-dev-story {implementation_artifacts}/stories/
review-{slug}.md bmad-code-review, bmad-prd reviewer gate {implementation_artifacts}/ or alongside PRD
case file ({slug}.md) bmad-investigate {implementation_artifacts}/{case_file_subdir}/
06

Memory Context

BMAD-METHOD — Memory and Context

Memory Model

file-based

BMAD does not use a database, vector store, or external memory service. All persistent state is stored as files written into the project directory under _bmad-output/ and related configured paths.

Persistence Scope

project

All artifacts, configs, and state files are scoped to the project root. User-scoped settings (user_name, communication_language) are stored in _bmad/config.user.toml at the project root, not in a global location.

Context Compaction Strategy

BMAD's primary strategy for handling context limits is subagent delegation with structured summaries:

  • In bmad-prd: Source documents are never read into the parent context wholesale. They are sent to extraction subagents that return digests. Parent assembles from extracts.
  • In bmad-investigate: When a step requires reading 5+ files or any file >10K tokens, a subagent is spawned that returns structured JSON only. Parent cites path:line references from the result without re-reading the content.
  • In bmad-party-mode: The discussion summary passed to each spawned subagent is capped at 400 words to bound context consumption per round.
  • bmad-shard-doc exists to split large markdown documents into organized smaller files, explicitly enabling future sessions to load only the relevant shard.

The bmad-spec skill addresses context management by producing a lean five-field kernel that downstream consumers read instead of the original verbose inputs: "Write lean from the first pass: every sentence must earn its place. Decoration costs tokens and dilutes downstream readers."

Cross-Session Handoffs

Yes — file-based handoff.

BMAD's cross-session continuity model relies on:

  1. project-context.md — Generated by bmad-generate-project-context, this file captures critical rules, patterns, and guidelines. Every persona agent loads it via persistent_facts = ["file:{project-root}/**/project-context.md"] on activation, ensuring all agents in any future session pick up the same foundational context.

  2. .decision-log.md — Created alongside PRDs and specs. Described as "canonical memory and audit trail — every decision, change, and override is recorded there as the conversation unfolds." The bmad-prd Update intent requires reading the decision log before making changes; if missing, it spawns a bootstrap subagent to reconstruct a thin log from the existing PRD.

  3. sprint-status.yaml — Sprint progress state file that bmad-dev-story, bmad-sprint-status, and bmad-sprint-planning all read and update. Provides implementation phase state across sessions.

  4. Story YAML frontmatter — Each story file carries status in frontmatter. bmad-help scans these to determine what has been completed.

  5. bmad-help.csv — Assembled catalog of all installed module skills with preceded-by, followed-by, required, and output-location fields. bmad-help reads this on every invocation to reconstruct where the user is in the workflow from the artifacts that exist on disk.

Memory Bank / Knowledge Base References

From the README and skill code:

  • project_knowledge config variable: points to a directory (default docs/) where long-term project knowledge, research, and reference materials live. Every persona agent loads files from this path on activation.
  • bmad-index-docs skill: generates or updates an index.md for the knowledge directory, making it navigable.
  • bmad-help uses a "Module docs" meta-row pattern in bmad-help.csv where rows with _meta in the skill column carry a URL or path to the module's documentation (llms.txt). These are fetched and used to answer general workflow questions.
  • bmad-document-project skill: documents an existing project's patterns and conventions into the project_knowledge directory for future agent consumption.
07

Target Tools

BMAD-METHOD — Target Tools

Officially Supported Tools

From the README and installer behavior:

Claude Code (primary)

The .claude-plugin/marketplace.json file registers BMAD as a Claude Code plugin under the name bmad-method / bmad-pro-skills / bmad-method-lifecycle. The installer generates .claude/agents/ pointer files for persona agents (v6.6.0+). All skill SKILL.md files use Claude Code's Agent tool API for subagent spawning in Party Mode and parallel review workflows.

Install path: npx bmad-method install --tools claude-code

Cursor

Supported. The installer generates Cursor-compatible pointer files. No separate install path documented beyond the standard npx bmad-method install with tool selection.

Windsurf

Supported. Listed in installer tool options.

GitHub Copilot

Supported as of v6.7.0. The installer generates .github/agents/<id>.agent.md pointer files for persona agents only (plus bmad-tea allowlist), keeping the Custom Agents picker uncluttered. Non-persona skills are excluded from the Copilot agent list by design (e.g., bmad-help is explicitly excluded because "every persona already advertises it on activation").

Install path: standard npx bmad-method install, select copilot as tool.

OpenCode

Supported as of v6.7.0 via a generic installCommandPointers() mechanism driven by per-platform YAML. OpenCode gets .opencode/commands/<id>.md for every skill.

Gemini (Web)

Supported via Web Bundles — six planning workflows packaged as Google Gemini Gems. Not an IDE integration; these run in the Gemini web interface for planning work before bringing artifacts into the IDE.

Browse at: bmadcode.com/web-bundles

ChatGPT (Web)

Supported via Web Bundles — same six planning bundles packaged as ChatGPT Custom GPTs. Install via the web UI; full schema parity with IDE skills so Gemini/GPT → IDE artifact handoffs maintain consistent format.

Tools Not Mentioned in README

  • aider: not mentioned
  • cline: not mentioned
  • goose: not mentioned
  • roo: not mentioned
  • kilo: not mentioned
  • qwen: not mentioned
  • jules: not mentioned
  • continue: not mentioned
  • codex: not mentioned (though bmad-automator is "EXPERIMENTAL: only supports claude and codex currently" per bmad-modules.yaml)

Compatibility Notes

  • Tool selection is baked in at install time — the installer asks which tool(s) to generate pointer files for. Reinstalling with a different tool selection regenerates the pointers.
  • Skills themselves are tool-agnostic — the SKILL.md files do not reference any specific AI tool. The only tool-specific behavior is the subagent spawning in bmad-party-mode which uses "the Agent tool" — a Claude Code feature. The --solo flag on party mode provides a fallback that skips subagent spawning entirely for tools that do not support it.
  • --tools none was removed in v6.6.0 — fresh installs require an explicit tool selection. Existing-install flows are unchanged.
  • Run npx bmad-method --list-tools to see currently supported tool IDs.
08

Signals

BMAD-METHOD — Signals

GitHub Stars

48,044 (fetched via gh api /repos/bmad-code-org/BMAD-METHOD, 2026-05-26)

Last Commit Date

2026-05-25 (fetched via gh api /repos/bmad-code-org/BMAD-METHOD/commits?per_page=1, 2026-05-26)

Number of Contributors

30 (fetched via gh api /repos/bmad-code-org/BMAD-METHOD/contributors, 2026-05-26)

Forks

5,604 (fetched via gh api /repos/bmad-code-org/BMAD-METHOD, 2026-05-26)

Repository Age

Created 2025-04-13. Reached 48K stars in approximately 13 months — a rate consistent with viral adoption in the AI tooling space.

Release Cadence

v6.8.0 shipped 2026-05-25 (latest at time of analysis). CHANGELOG shows releases on roughly a weekly or bi-weekly basis since v6. The project went from v1 to v6 within its first year.

Reddit/HN Sentiment

Unknown — no direct Reddit or HN quotes available in the wave-2b discovery index for this framework at time of analysis. The project's star trajectory (48K stars from a standing start in April 2025) and Discord community suggest positive practitioner reception, but no specific quotes can be cited without further search.

Maintainer Status

Active — commits as recently as 2026-05-25, v6.8.0 released that same day with detailed breaking changes documentation, active CHANGELOG, Discord, YouTube, and Twitter presence. The bmad-code-org organization maintains multiple companion repos (bmad-builder, bmad-method-test-architecture-enterprise, bmad-module-game-dev-studio, bmad-module-creative-intelligence-suite, bmad-automator).

npm Package

Published as bmad-method on npm. Version badges visible in README; installer available at npx bmad-method install.

Community Infrastructure

  • Discord: discord.gg/gk8jAdXWmj (linked from README)
  • YouTube: youtube.com/@BMadCode
  • Twitter/X: @BMadCode
  • Website: bmadcode.com
  • Docs: docs.bmad-method.org
  • Buy Me a Coffee: linked from README
  • Corporate sponsorship email: contact@bmadcode.com

Related frameworks

same archetype · same primary tool · same memory type

Agent OS ★ 4.6k

Extracts implicit codebase conventions into token-efficient markdown standards files and injects them selectively into AI agent…

Claude Conductor ★ 367

Gives Claude Code a persistent, cross-linked, auto-analyzed documentation system so it retains codebase context across sessions.

Spec-Driver (Greenfield Spec-Driven Development) ★ 25

Prevents spec rot in AI-assisted development by making implementation changes flow back into evergreen, authoritative specs via…

Anthropic Knowledge Work Plugins ★ 16k

Role-specialized plugin bundles with live MCP connectors that turn Claude into a domain expert for enterprise knowledge workers.

Codex Integration for Claude Code (skill-codex) ★ 1.3k

Single Claude Code skill that handles Codex CLI invocation correctly (stdin blocking, thinking token suppression, session resume)…

mini-coding-agent ★ 882

A single-file zero-dependency Python coding agent that demonstrates the six core components of coding agents for educational…