Commit Graph

1684 Commits

Author SHA1 Message Date
Frank 3c8d865457
fix: update src/core and src/bmm path references to match renamed directories (#2053)
The v6.2.0 release renamed src/core to src/core-skills and src/bmm to
src/bmm-skills, but the installer CLI code still referenced the old
directory names, causing ENOENT crashes during installation.

Updated all path references across 7 files in tools/cli/ including
path.join() calls, string comparisons, regex patterns, and comments.

Fixes #2052

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2026-03-18 19:29:16 -05:00
Alex Verkhovsky 1b8424cf6d
Merge pull request #2058 from bmad-code-org/fix-elicitation-trigger
fix: add Use when trigger to advanced-elicitation description
2026-03-18 17:21:40 -06:00
Alex Verkhovsky 9973b3c35a
Merge branch 'main' into fix-elicitation-trigger 2026-03-18 17:20:52 -06:00
Alex Verkhovsky 1a0da0278f
Merge pull request #2051 from bmad-code-org/feat-deterministic-skill-validator
feat(tools): add deterministic skill validator for CI
2026-03-18 17:20:30 -06:00
Alex Verkhovsky 52ebc3330d
Merge branch 'main' into fix-elicitation-trigger 2026-03-18 17:18:11 -06:00
Alex Verkhovsky 8b13628496 fix: add Use if trigger to advanced-elicitation description
Clears the SKILL-06 validator finding for missing trigger phrase.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 16:46:43 -06:00
Alex Verkhovsky 642b6a0cf4 ci: add validate:skills to GitHub quality workflow
The deterministic skill validator was in the npm quality chain but
missing from the GitHub Actions workflow.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 14:38:09 -06:00
Alex Verkhovsky fd1e24c5c2 fix: address PR review findings in skill validator
- Guard against YAML comment lines in parseFrontmatterMultiline
- Broaden PATH-02 to detect any installed_path mention, not just variable refs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 14:35:52 -06:00
Alex Verkhovsky 84bade9a95
Merge branch 'main' into feat-deterministic-skill-validator 2026-03-18 10:13:59 -06:00
Alex Verkhovsky 4f1894908c refactor: tighten SKILL-04 regex, broaden WF-01/WF-02, remove forbidden names
- SKILL-04: require bmad- prefix, enforce single dashes via regex
  ^bmad-[a-z0-9]+(-[a-z0-9]+)*$, drop FORBIDDEN_NAME_SUBSTRINGS
- WF-01/WF-02: check all .md files (not just workflow.md) for stray
  name/description frontmatter, with tech-writer exception
- Update skill-validator.md prompt to match all rule changes

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 08:02:01 -06:00
Alex Verkhovsky 7a214cc7d8 fix: tighten frontmatter parsing and add SKILL-07 body content check
- Require \n---\n (not just \n---) for closing frontmatter delimiter
  in both parseFrontmatter and parseFrontmatterMultiline, with fallback
  for files ending in \n---
- Add SKILL-07: SKILL.md must have non-empty body content after
  frontmatter (L2 instructions are required)
- Update rule count to 14

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 08:02:01 -06:00
Alex Verkhovsky ac5cb552c0 refactor: discover skills by walking src instead of hardcoded paths
Replace SKILL_LOCATIONS array and AGENT_LOCATION constant with a single
walk from SRC_DIR. Any directory under src/ containing SKILL.md is a
skill — no need to enumerate locations.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 08:02:00 -06:00
Alex Verkhovsky be555aad8b
Merge pull request #2049 from bmad-code-org/fix-clickable-spec-link-convention
feat(quick-dev): clickable spec link at step-02 checkpoint and CWD-relative path convention
2026-03-18 00:13:04 -06:00
Alex Verkhovsky 22035ef015
Merge branch 'main' into feat-deterministic-skill-validator 2026-03-18 00:11:46 -06:00
Alex Verkhovsky f0e43f02e2 feat(quick-dev): add clickable spec link at step-02 checkpoint and CWD-relative path convention
Step-02 now displays the finalized spec file path as a CWD-relative
clickable link after approval. Step-05 clarifies the dual convention:
project-root-relative paths (leading /) for spec-file content, CWD-relative
paths (no leading /) for terminal/conversation output. One-shot review
order explicitly uses CWD-relative path:line format.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 00:09:25 -06:00
Brian 0380656de6
refactor: consolidate agents into phase-based skill directories (#2050)
* refactor: consolidate agents into phase-based skill directories

Remove separate agent/workflow/skill directories (src/bmm/agents,
src/bmm/workflows, src/core/skills, src/utility/agent-components) and
reorganize all content into phase-based structures under src/bmm-skills
(1-analysis, 2-plan-workflows, 3-solutioning, 4-implementation) and
src/core-skills. Eliminates the agent/skill distinction by treating
agents as skills within their workflow phase.

* fix: update broken file references to use new bmm-skills paths

* docs: update all references for unified bmad-quick-dev workflow

Remove all references to the old separate bmad-quick-spec and
bmad-quick-dev-new-preview workflows. The new bmad-quick-dev is a
unified workflow that handles intent clarification, planning,
implementation, review, and presentation in a single run.

Updated files across English docs, Chinese translations, source
skill manifests, website diagram, and build tooling.
2026-03-18 01:01:33 -05:00
Alex Verkhovsky 5a1f356e2c feat(tools): add deterministic skill validator for CI
Add tools/validate-skills.js — a Node CLI that checks 13 deterministic
rules (SKILL-01–06, WF-01–02, PATH-02, STEP-01/06/07, SEQ-02) across
all skill directories. Runs in under a second, exits non-zero on HIGH+
findings in strict mode, and outputs JSON for the inference validator.

- Add validate:skills npm script to quality chain
- Update skill-validator.md with first-pass integration instructions
- Update AGENTS.md push gate documentation

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 23:49:01 -06:00
Alex Verkhovsky 21c2a48ab2
Merge pull request #2048 from bmad-code-org/chore-remove-agent-schema
chore: remove dead agent schema validation infrastructure
2026-03-17 20:51:43 -06:00
Alex Verkhovsky ebbc6d2a33
Merge branch 'main' into chore-remove-agent-schema 2026-03-17 20:41:12 -06:00
Alex Verkhovsky f0c7cf41c7 chore: remove dead agent schema validation infrastructure
The *.agent.yaml format was replaced by SKILL.md-based agents.
Zero agent YAML files remain in src/, so remove the Zod schema,
validator CLI, fixture-based test suite (52 fixtures), unit tests,
CLI integration tests, and the CI steps that invoked them.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 20:20:12 -06:00
Brian 0580164bdc
fix: restore bmad-create-prd task to workflows directory (#2047)
Moves bmad-create-prd from src/core/tasks/ to
src/bmm/workflows/2-plan-workflows/ to align with current project structure.
2026-03-17 21:18:45 -05:00
Alex Verkhovsky 72f6963253
Merge pull request #2045 from bmad-code-org/fix-quick-dev-workflow-preamble
fix(quick-dev): replace role statement with step-following mandate
2026-03-17 19:56:06 -06:00
Alex Verkhovsky 3bae0cba6a
Merge branch 'main' into fix-quick-dev-workflow-preamble 2026-03-17 19:48:16 -06:00
Alex Verkhovsky e84874e9f0
Merge pull request #2044 from bmad-code-org/fix/oneshot-step-separation
refactor(quick-flow): separate one-shot into self-contained step file
2026-03-17 19:47:33 -06:00
Alex Verkhovsky fcd0873d22 fix(quick-flow): address review findings on step files
- Remove name/description from step-03-implement.md frontmatter (STEP-06)
- Remove name/description from step-oneshot.md frontmatter (STEP-06)
- Fix {project_root} to {project-root} placeholder convention
- Replace undefined {changed_files} with natural language

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 19:18:39 -06:00
Alex Verkhovsky 96091cb74d fix(quick-dev): replace role statement with step-following mandate
The "elite developer" role with "implement autonomously" and "minimum
ceremony" language actively encouraged the model to skip workflow steps
when it judged the task was simple enough. Replaced with a concrete goal
and a critical rule enforcing step-file compliance.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 18:51:36 -06:00
Alex Verkhovsky 93d03e5f80 refactor(quick-flow): separate one-shot into self-contained step file
One-shot and plan-code-review shared steps 3-5 which depend on spec
files one-shot never creates. Give one-shot its own step-oneshot.md
with implement/review/classify/commit/present. Clean all one-shot
and execution_mode references from steps 3-5. Restructure step-01
routing with EARLY EXIT pattern for one-shot and artifact-scan resume.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 16:45:32 -06:00
Alex Verkhovsky f3f606a9ce
Merge pull request #2042 from bmad-code-org/feat/coderabbit-docs-check
feat(coderabbit): add docs-staleness check for src/ changes
2026-03-17 15:37:25 -06:00
Alex Verkhovsky 9636e86b75 feat(coderabbit): add docs-staleness check for all src/ changes
Adds a path_instructions entry so CodeRabbit flags when documentation
under docs/ may need updating whenever source files are modified.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 15:30:32 -06:00
Alex Verkhovsky 88aa53506a
Merge pull request #2039 from bmad-code-org/feat/vscode-opening-ergonomics
feat(quick-dev): add VS Code opening ergonomics to step 5
2026-03-17 09:59:09 -06:00
Alex Verkhovsky 653c3ae152 fix(quick-dev): scope editor open and summary to plan-code-review only
One-shot mode displays the review order in conversation output and has
no spec file to open. Guard the code -r step and spec-specific summary
items behind plan-code-review.
2026-03-17 09:53:34 -06:00
Alex Verkhovsky 39359ddbcd fix(quick-dev): quote spec file path in code -r command
Ensure paths with spaces or special characters are handled correctly
by double-quoting the {spec_file} variable in the editor open command.
2026-03-17 09:52:48 -06:00
Alex Verkhovsky f036c21d13 feat(quick-dev): add VS Code opening ergonomics to step 5
Replace vscode://file/ absolute URI links with workspace-root-relative
markdown links using #L anchors — portable across machines and worktrees.
Add code -r open-in-editor step with graceful fallback, and Ctrl+click
navigation tip for reviewers.
2026-03-17 09:10:38 -06:00
Alex Verkhovsky cc300b3940
Merge pull request #2033 from bmad-code-org/feat/review-trail-generation
feat(quick-dev): add Review Trail generation to step 5
2026-03-17 07:52:45 -06:00
Alex Verkhovsky 6de6f45086 feat(quick-dev): add Review Trail generation to step 5
Step 5 now builds a concern-ordered trail of clickable vscode://file/
links with brief framing and appends it to the spec before committing.
Stops are sequenced by concern (not by file), lead with the entry point,
and use ≤15-word framing focused on design rationale. Single-concern
trails omit grouping labels. The trail is a standalone review artifact
useful without any skill.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 07:51:58 -06:00
Brian a1418dfd28
chore(agents): cleanup skill manifests and remove shared manifest (#2035)
Update per-agent bmad-skill-manifest.yaml files and remove the
now-redundant shared bmad-skill-manifest.yaml after capabilities
were inlined into SKILL.md.
2026-03-16 22:50:47 -05:00
Brian e5062a8bbb
refactor(agents): inline capabilities into SKILL.md, remove bmad-manifest.json (#2029)
Replace dynamic manifest loading with static Capabilities tables directly
in each agent's SKILL.md. This eliminates the bmad-manifest.json files and
simplifies agent activation by removing the manifest parsing step.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 13:11:04 -05:00
Alex Verkhovsky 21123d6349
Merge pull request #2026 from bmad-code-org/chore/remove-dead-party-csv
chore(teams): remove dead party roster files
2026-03-16 10:28:06 -06:00
Alex Verkhovsky f6c2854ed9
Merge branch 'main' into chore/remove-dead-party-csv 2026-03-16 10:23:07 -06:00
Alex Verkhovsky b8388ff227 chore(teams): remove dead party roster files
default-party.csv and team-fullstack.yaml are never read by any code.
Party mode reads from the installed agent-manifest.csv generated by
manifest-generator.js during install.
2026-03-16 09:28:25 -06:00
Alex Verkhovsky 80604b45fe
Merge pull request #2025 from bmad-code-org/flatten-quick-dev-steps
refactor(skill): flatten quick-dev-new-preview step files
2026-03-16 08:21:52 -06:00
Alex Verkhovsky bce72fe18d
Merge branch 'main' into flatten-quick-dev-steps 2026-03-16 08:21:04 -06:00
Alex Verkhovsky 6742b1ff7b
Merge pull request #2022 from bmad-code-org/chore/coderabbit-default-profile
chore(review): replace adversarial CodeRabbit with skill-validator refs
2026-03-16 08:20:07 -06:00
Alex Verkhovsky e21d6b36ae
Merge branch 'main' into chore/coderabbit-default-profile 2026-03-16 08:16:11 -06:00
Alex Verkhovsky cad25817eb refactor(skill): flatten quick-dev-new-preview step files to skill root
Move step files from steps/ subdirectory to the skill root directory
and update path references in workflow.md and step-02-plan.md.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 08:10:47 -06:00
Alex Verkhovsky aa2a9a2818
Merge pull request #1968 from meysholdt/feat/add-ona-platform-support
feat: add Ona as a supported platform
2026-03-16 07:48:46 -06:00
Alex Verkhovsky be6611570a
Merge branch 'main' into feat/add-ona-platform-support 2026-03-16 07:26:53 -06:00
Alex Verkhovsky 28954fea79 chore(review): replace adversarial CodeRabbit with skill-validator refs
Remove the cynical adversarial reviewer persona from .coderabbit.yaml
and replace with per-path instructions that reference
tools/skill-validator.md as the single source of truth — matching the
approach already used in .augment/code_review_guidelines.yaml.

Add skill-validator pointer to AGENTS.md so all AI tools can discover it.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 05:39:57 -06:00
Brian bed9052d49
Feat/conformant agent skills (#2021)
* feat(agents): convert all BMM agents to conformant skill structure

Replace legacy XML-based .agent.yaml files with new SKILL.md + bmad-manifest.json
format for all 9 BMM agents (analyst, architect, dev, pm, qa, sm,
quick-flow-solo-dev, ux-designer, tech-writer). Each agent now has:

- SKILL.md with persona, activation flow (bmad-init, project context, dynamic menu)
- bmad-manifest.json with capabilities referencing external skills
- bmad-skill-manifest.yaml for party-mode agent-manifest.csv generation

Tech-writer includes internal prompt files for write-document, mermaid-gen,
validate-doc, and explain-concept capabilities.

Also includes core bmad-init skill and removes legacy agent compilation tests
that referenced the old .agent.yaml format.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* feat(installer): support new SKILL.md agent format in manifest generation

Update getAgentsFromDir to detect directories with bmad-skill-manifest.yaml
where type=agent and extract metadata directly from the YAML fields. This
allows the agent-manifest.csv to be populated from both old-format compiled
.md agents (XML parsing) and new-format SKILL.md agents (YAML manifest).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(installer): install type:agent skills to IDE native skills directory

The collectSkills scanner only recognized type:skill manifests, causing
new-format agents (type:agent in bmad-skill-manifest.yaml) to be added
to agent-manifest.csv but not installed to .claude/skills/. Now both
type:skill and type:agent are recognized as installable skills, while
collectAgents still processes type:agent dirs for the agent manifest
even when claimed by the skill scanner.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(installer): suppress canonicalId warning for type:agent skills

Agent-type skill manifests legitimately use canonicalId for agent-manifest
mapping (e.g., bmad-analyst). Only warn for regular type:skill manifests.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* feat(skills): update analyst manifest and simplify bmad-init instructions

Switch analyst's create-brief menu entry to the new product-brief-preview
skill. Simplify bmad-init SKILL.md by removing hardcoded code fences and
making the script path relative to the skill directory.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(bmm): update tech-writer CSV refs to new skill path

The module-help.csv still referenced the old agent YAML path for
tech-writer entries. Update to skill:bmad-agent-tech-writer to match
the conformant skill structure.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 00:47:30 -05:00
Alex Verkhovsky ba0c59128d
Merge pull request #2017 from YeJianXin/main
add Qoder code agent support
2026-03-15 20:47:32 -06:00