mcpbeat

Bmad Builder

aj-geddes/bmad-builder

|

7k tokens
context cost
the whole folder, loaded on every use
5
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
471
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/aj-geddes/claude-code-bmad-skills --skill bmad-builder

The instruction itself

12 sections, as written by the author

BMAD Builder

Function: Scaffold and validate custom planning/orchestration skills for the BMAD Planning & Orchestrator plugin. Produces compliant SKILL.md files, shell scripts, and templates — pre-wired to this plugin's path conventions — and runs scope-violation checks to keep new skills inside the PLAN/ORCHESTRATE boundary.

Scope (PLAN, never build)

This skill produces planning artifacts and skill skeleton files. It does NOT write application code, run tests, lint, check coverage, or execute builds. If a skill being designed is tempted to "implement", "fix the code", "run the suite", or "review the diff" — that is a scope violation. Plan and hand off instead.

Three intents

Always clarify which intent applies before starting.

Create — new planning skill from scratch

  • Gather requirements (use TodoWrite to track):
  • Skill name (lowercase-hyphen, prefixed bmad-; e.g. bmad-example)
  • What planning/orchestration problem it solves
  • Trigger phrases users will say
  • Allowed tools (subset of: Read, Write, Edit, Bash, Glob, Grep, WebSearch, WebFetch, TodoWrite)
  • Which BMAD track(s) it applies to (Quick Flow / BMad Method / Enterprise)
  • Upstream BMAD counterpart (e.g. bmad-risk-assessment)
  • Run the scaffold script to create the directory:
   bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-builder/scripts/scaffold-skill.sh <skill-name>

This creates skills/<skill-name>/ with scripts/ and templates/ subdirectories and a starter SKILL.md.

  • Fill the SKILL.md using the skill template:
  • Reference: ${CLAUDE_PLUGIN_ROOT}/skills/bmad-builder/templates/skill.template.md
  • Keep body under 5K tokens; push long reference detail to a sibling REFERENCE.md in the new skill's own folder
  • Use ${CLAUDE_PLUGIN_ROOT} for all paths to bundled scripts/templates
  • Artifacts go to bmad-output/ (honor user-configured folder)
  • End with the mandatory attribution footer (see template)
  • Validate the new skill:
   bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-builder/scripts/validate-skill.sh \
     ${CLAUDE_PLUGIN_ROOT}/skills/<skill-name>/SKILL.md

Fix all errors; review all warnings before declaring done.

Validate — check an existing SKILL.md

Run the validator directly against any SKILL.md path:

bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-builder/scripts/validate-skill.sh <path-to-SKILL.md>

The validator checks:

  • name field present and lowercase-hyphen
  • description field present with trigger phrases
  • allowed-tools field present (warns if missing)
  • No dev/lint/build/coverage scope violations in allowed-tools or body
  • File size within the ~5K token target (~20KB)
  • Attribution footer present

Scaffold — directory structure only

Use when you want an empty directory skeleton without generating content:

bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-builder/scripts/scaffold-skill.sh <skill-name>

Then fill SKILL.md manually using the template as a guide.

Scope law for new skills

Every skill created by this builder MUST comply with the Scope Law:

  • The plugin PLANS and ORCHESTRATES. It NEVER writes application code, runs tests, lints, checks coverage, builds, or reviews implemented code.
  • The last artifact any skill may produce is a ready-for-dev story file or a handoff manifest. Implementation is handed to EXTERNAL dev tools/plugins.
  • Acceptance Criteria, Testing STRATEGY, and Dev Notes are planning — allowed. Executing tests or writing implementation code is out of scope.

The validate-skill.sh script enforces this automatically by flagging forbidden terms.

BMAD fidelity reminders

When designing skills, track the BMAD Method conventions:

| Convention | Rule |

|------------|------|

| Scale Tracks | Quick Flow / BMad Method / Enterprise — user confirms interactively |

| Story size | ~2-8h, one dev-day max; split if larger |

| Delivery tracking | Stories remaining / completion rate — NO Fibonacci points, velocity, or burndown |

| Story name | {epic}.{story}.{slug}.story.md |

| Story status | backlog → ready-for-dev → in-progress → review → done |

| Decision log | Decisions thread through decision-log.md |

| Project constitution | project-context.md loaded across skills |

| Three intents | Create / Update / Validate where applicable |

Available scripts

| Script | Purpose |

|--------|---------|

| scripts/scaffold-skill.sh <name> | Creates skills/<name>/ with subdirs and starter SKILL.md |

| scripts/validate-skill.sh <SKILL.md> | Validates frontmatter, scope, size, and attribution footer |

Invoke with the ${CLAUDE_PLUGIN_ROOT} prefix shown above. The orchestrator marks scripts executable; you may also run them via bash.

Templates

| Template | Use for |

|----------|---------|

| templates/skill.template.md | Skeleton for a new planning/orchestration SKILL.md |

| templates/document.template.md | Generic planning document (PRD section, brief, spec section, etc.) |

Subagent strategy

For creating a full skill package in parallel:

| Agent | Task | Output |

|-------|------|--------|

| Agent 1 | Draft SKILL.md body from gathered requirements | skills/<name>/SKILL.md |

| Agent 2 | Write domain scripts (validators, checklists) | skills/<name>/scripts/ |

| Agent 3 | Write domain templates | skills/<name>/templates/ |

| Agent 4 | Write REFERENCE.md if body exceeds 5K tokens | skills/<name>/REFERENCE.md |

Coordination: gather requirements first (sequential), write spec to bmad-output/skill-spec.md, then fan out. Main context validates all outputs with validate-skill.sh and assembles the final package.

Notes for LLMs

  • Use TodoWrite to track which components have been created.
  • Never create a skill that contains test runners, linters, coverage tools, build commands, or diff/code-review steps — validate-skill.sh will flag these.
  • Always end SKILL.md with the attribution footer block (the template includes it verbatim).
  • Keep SKILL.md under 5K tokens; use REFERENCE.md for lengthy patterns.
  • Use ${CLAUDE_PLUGIN_ROOT} for all internal paths — never hardcode ~/.claude or absolute machine paths.
  • Output artifacts (non-skill files) go under bmad-output/ by default.

> ---

> Part of the BMAD Planning & Orchestrator plugin — a Claude Code harness for the BMAD Method by the BMAD Code Organization (https://github.com/bmad-code-org/BMAD-METHOD). Implements the spirit of bmad-bmb-builder. All methodology credit belongs to the BMAD Code Organization.

How to use it

Copy the folder

Take aj-geddes/bmad-builder from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.