bmad-production-grade-dev
v0.1.27
Published
Hardens bmm's story cycle: adversarial multi-reviewer + human-verified customer-experience gate at commit — ship production-grade at AI-native pace.
Downloads
2,109
Maintainers
Readme
Production Grade Dev (pgd) — a BMAD Method expansion module
pgd hardens the BMAD Method story cycle so AI-produced code can be trusted at production quality, at AI-native pace.
It combines adversarial multi-reviewer patterns (multiple LLMs cross-checking each other) with a human-reviewed recording gate at commit time. UX-surface changes cannot commit until a recording of the customer flow proves every acceptance criterion is met; non-UX changes fall back to test-based gates.
Positioning: an expansion of the bmm module. Users install bmm for BMAD's native story/epic/sprint management, then install pgd to harden the story implementation cycle.
Install
pgd v0.1.2 targets BMAD Method v6.9.0+. It is on npm as bmad-production-grade-dev. Because pgd isn't in bmad-method's built-in registry (bmb/cis/tea etc.), install via --custom-source pointing at either the git repo path or an extracted npm tarball.
Simplest (git path — no local checkout needed):
cd /path/to/your/project
npx bmad-method install \
--modules bmm \
--tools claude-code \
--custom-source https://github.com/agroene/my-bmad-dev-methodology/tree/main/pgd-moduleAlternative (npm tarball — pins to the exact published version):
cd /tmp
npm pack [email protected]
tar -xzf bmad-production-grade-dev-0.1.2.tgz
cd /path/to/your/project
npx bmad-method install --modules bmm --tools claude-code --custom-source /tmp/packageThe v6.9.0+ installer discovers pgd's .claude-plugin/marketplace.json and registers all 10 pgd skills. It also collects pgd's module.yaml prompts (parallelism, recording gate, project shape) and writes them to _bmad/config.toml under [modules.pgd] — no separate config step needed.
After install:
.claude/skills/bmad-pgd-*— 9 pgd workflow / agent skills registered with Claude Code.claude/skills/pgd-setup— setup skill for file seeding (see below)_bmad/config.tomlunder[modules.pgd]— your pgd config values_bmad/pgd/— minimal module metadata (config.yaml, module-help.csv)
Run pgd-setup inside Claude Code to seed the project-side files (scripts under scripts/pgd/, husky hooks if commit_gate_hooks_enabled and husky is installed, CLAUDE.pgd.md guidance reference, close-cycle-checklist.json, _bmad-output/ directories).
To change a config value later:
# Persistent, project-scope (goes into _bmad/config.toml on next install):
npx bmad-method install --set pgd.parallelism=two-agent
# Or edit _bmad/custom/config.toml under [modules.pgd] for a team override
# (committed to the repo, never overwritten by the installer).Capabilities
| Menu | Skill | What it does |
| ---- | ------------------------------------ | ----------------------------------------------------------------------- |
| BQ | bmad-pgd-agent-barry | Barry — pgd's hardened dev persona (menu of all capabilities below) |
| QS | bmad-pgd-quick-spec | Author a Ready-for-Dev tech-spec from a bmm story via 4-step discovery |
| QD | bmad-pgd-quick-dev | Solo 7-step implementation cycle with adversarial review + commit gate |
| Q2 | bmad-pgd-quick-dev-2agent | Two-agent burst variant (parallel dev on paired specs) |
| AR | bmad-pgd-arbiter-run | Three-lane arbiter variant (three parallel dev streams + arbiter) |
| AV | bmad-pgd-adversarial-review | Standalone 3-reviewer adversarial sweep of any diff |
| CC | bmad-pgd-close-cycle | Close-cycle checklist: customer-experience walkthrough + commit gate |
Config
pgd exposes 6 install-time config keys (via _bmad/config.yaml):
parallelism:solo|two-agent|three-lanerecording_gate_enabled: require customer-experience recording review before commit (defaulttrue)commit_gate_hooks_enabled: install pre-commit/pre-push husky hooks (defaulttrue)deferred_work_log: path to the deferred-work ledger (default_bmad-output/deferred-work.md)backend_app_dir: relative path to the backend app root (project-shape, blank if none)app_dirs: comma-separated frontend/user-facing app dirs (project-shape, blank if none)package_dirs: comma-separated shared package dirs (project-shape, blank if none)
Seeded project-side files (pgd-owned)
pgd-setup seeds these into the target project. They are pgd-owned — do not edit locally; all variation lives in _bmad/config.yaml. Upgrades overwrite freely.
scripts/pgd/pgd-config.mjs— shared config-reader libraryscripts/pgd/adaptable/*.mjs— cycle scripts (close-cycle, validators, digest, PDF gen, etc.)scripts/pgd/core/*.mjs— supporting scripts (verify-before-push, safe-push, playwright-in-docker)scripts/pgd/close-cycle-checklist.json— close-cycle checklist (schema-shaped)CLAUDE.pgd.md— methodology-facing CLAUDE guidance (yourCLAUDE.mdshould reference this)
Conditionally:
.husky/pre-commit+.husky/pre-push— ifcommit_gate_hooks_enabledand husky is present.github/workflows/pgd-*.yml— if.github/workflows/exists in the project
Upgrade
To upgrade pgd in an existing project:
npx [email protected] install \
--custom-content path/to/bmad-production-grade-dev \
--action update \
--directory .Config values in _bmad/config.yaml are preserved (anti-zombie merge). Seeded project-side files are overwritten (pgd-owned).
Status: v0.1.0
- ✅ Q-VIP-shaped install path validated end-to-end
- ✅ 10 pgd skills auto-register in a fresh install
- ✅ Config-driven scripts (
pgd-config.mjslibrary shipped; 8 load-bearing scripts refactored) - ⚠️ Some scripts still contain project-shape hardcodes (verify-before-push, regression-backend-integration) — flagged in file headers; refactor as needed for your project
- 📦 npm publish requires setting
repository.urlinpackage.json
Architecture
- 7-step deterministic pipeline (steps 1, 6, 7, 8, 8.5, 9, 9.5 for historical compatibility)
- Fresh context per step — combats LLM "lost in the middle"
- Spec is read-only from Step 6 — no mid-flight amendments
- Adversarial multi-reviewer at Step 7 — blind-hunter + edge-case-hunter + acceptance-auditor
- Hard regression gate at Step 8.5 — cannot advance with silent failures
- Customer-experience recording gate at Step 9 — for UX-surface changes
- State survives via named variables across step boundaries — resilient to session crash
See docs/three-lane-parallelism-plan.md for the three-lane arbiter model, docs/two-agent-operations-runbook.md for the two-agent burst model.
