Inline workflow.md content directly into SKILL.md for: editorial-review-prose,
editorial-review-structure, help, index-docs, review-adversarial-general,
review-edge-case-hunter, and shard-doc. Deletes the now-redundant workflow.md
files. No behavioral change — same pattern as advanced-elicitation in PR #2076.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Merge workflow.md content directly into SKILL.md and delete the
now-redundant workflow file. The frontmatter `agent_party` variable
moves into SKILL.md; all relative file references (`./methods.csv`)
remain valid.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* fix(code-review): update sprint-status to done after review completes
The code-review workflow ended without updating sprint-status.yaml from
"review" to "done", leaving stories stuck in review status. The dev-story
workflow implies code-review handles this transition but it was dropped
during the v6.2.0 step-file architecture refactor.
- Add sprint_status path to workflow initialization
- Track story_key in step-01 when discovered from sprint status
- Add step-04 section 6 to update sprint-status.yaml and story file
- Add step-04 section 7 with next-step options
Closes#2043
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(code-review): address PR review findings — split gating, story_key guard, HALT
- Split section 6 guard: story file status gated on spec_file only,
sprint-status sync sub-gated on story_key separately
- Add conditional branch for manual choice in multi-story path so
story_key is cleared when user declines a story selection
- Add HALT directive after Next steps menu to prevent LLM runaway
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(code-review): restore actionable review output with interactive choices
The March 15 rewrite (PR #2007) removed the ability to auto-fix patches,
create action items in story files, and handle deferred/spec findings.
This restores interactive post-review actions:
- Deferred findings: auto-written to deferred-work.md and checked off in story
- Intent gap/bad spec: conversation with downgrade-to-patch, patch-spec,
reset-to-ready-for-dev, or dismiss options
- Patch findings: fix automatically, create action items, or show details
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* refactor(code-review): simplify triage to decision-needed/patch/defer/dismiss
Replace 5-bucket classification (intent_gap, bad_spec, patch, defer, reject)
with 4 pragmatic buckets. Findings always written to story file first.
Decision-needed findings gate patch handling — resolve ambiguity before fixing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(code-review): address PR review findings in step-04-present
Replace undefined curly-brace placeholders with angle-bracket syntax,
add HALT guard before patch menu, guard spec_file references for
no-spec mode, and backtick category names for consistency.
* feat(code-review): add HALT guards, batch option, defer reason, final summary
Add strong HALT guards after decision-needed and patch menus to prevent
auto-progression. Add batch-apply option 0 for >3 patch findings. Prompt
for defer reason and append to story file and deferred-work.md. Show
boxed final summary with counts. Polish clean-review shortcut in triage.
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: separate subagent launch from skill invocation in code review
The step-02-review prompt fused "invoke skill X" with "in a subagent"
into one instruction, causing LLMs to search for a named agent instead
of launching a generic subagent that uses the skill. Aligns with the
working pattern in quick-dev step-04: upfront gate with inline fallback,
and "Invoke via the skill" as a separate concern from subagent setup.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(code-review): address PR review findings on subagent fallback wording
Capitalize "Markdown" (proper noun) in Acceptance Auditor prompt and
simplify fallback trigger from "context-free subagents" to "subagents"
to eliminate ambiguity about when the fallback activates.
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace bmad-create-product-brief (step-based wizard) and
bmad-product-brief-preview (multi-agent) with a single unified
bmad-product-brief skill. Remove accidentally duplicated market
research step files and template. Update research skill
descriptions to use more natural trigger language.
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>
* 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.
- 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>
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>
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>
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.
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.
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>
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.
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>
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.
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>
* 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>
Refined through adversarial review to accurately reflect the skills
state-analysis, question-answering, and workflow-recommendation
capabilities with precise trigger phrases that avoid false positives.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Skip the interactive "What do you want to review?" menu when the user
already stated review mode in the invocation (e.g., "review staged
changes"). Adds keyword matching, sprint-tracking fallback, and
graceful fall-through to the existing interactive flow.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Address findings from adversarial review: clarify spec_file as path
variable (F4), add file list construction rule (F8), HALT on unparseable
diffs (F9), differentiate empty findings handling (F5), merge evidence
during dedup instead of dropping (F6), and fix NEXT step paths (F1).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The CSV parse instructions were incorrectly truncated to 3 columns.
Restore all 7: category, technique_name, description,
facilitation_prompts, best_for, energy_level, typical_duration.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Revert step renumbering in retrospective (no validator rule)
- Revert full-scan-instructions, quick-dev-preview, quick-spec changes
- Restore duration/energy/time content in brainstorming steps 02a-d, 03
(SEQ-02 time estimate removal was misapplied to display templates)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Revert SKILL.md wording change in product-brief-preview (not a
validation issue)
- Revert single-curly to double-curly conversions in create-architecture
and create-epics-and-stories where the originals were display
placeholders for LLM output, not template variables
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Restore original menu options [V], [S], [A], [X] that were incorrectly
replaced with [C], [A] during validation pass. The menu reduction was
not covered by any validation rule.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bare filenames like `step-e-02-review.md` in "Read fully and follow:"
directives need `./` prefix for consistent relative path resolution.
Fixes 9 references across edit-prd, create-prd, and brainstorming.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace `[workflow.md](workflow.md)` with bare `workflow.md` in all 34
SKILL.md files. Redundant markdown link syntax adds noise for LLM
consumers. Also update the validator example to match.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bare filenames are cleaner than [file.md](file.md) for LLM-consumed
skill files — the markdown link wrapper adds nothing when display text
and URL are identical.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
STEP-04 compliance: add HALT directives to 5 additional menu locations
in brainstorming steps (01b, 02a, 02b, 02c, 02d). Also fixes bracket
typo [3 -> [3] in step-01b-continue.md.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
EOF
)
STEP-04 compliance: add explicit HALT directives after menu presentations
in brainstorming (4 locations) and generate-project-context (2 locations)
to prevent LLM from auto-selecting options without waiting for user input.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- STEP-06: Remove name/description from step frontmatter in edit-prd (5 files)
and validate-prd (14 files) — these belong only in SKILL.md
- REF-02: Fix brainstorming step-02a/b/c/d CSV parse instructions to match
actual brain-methods.csv columns (3 cols, not 7)
- SEQ-02: Remove time estimates from brainstorming step-02a/b/c/d and step-03,
replace time-based thresholds with idea-count criteria
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Run skill-validator against all 36 skills on HEAD (42b1d0f6). Fixes:
- PATH-01: relative path corrections in product-brief-preview, brainstorming,
distillator, generate-project-context, edit-prd, quick-dev-new-preview
- PATH-04: remove 5 intra-skill path variables from edit-prd
- REF-01: single-curly template vars → double-curly in create-architecture,
create-epics-and-stories, create-story
- REF-02: fix dangling file refs in advanced-elicitation, validate-prd, edit-prd
- REF-03: update rule to prefer natural language `Invoke the skill` form;
fix stale persona ref in qa-generate-e2e-tests
- SEQ-01: "skip to" → "proceed to" in quick-dev-new-preview
- SEQ-02: remove time estimates from document-project, quick-spec
- SKILL-06: add "Use when" trigger to review-edge-case-hunter
- STEP numbering: renumber step n="0.5" to integer sequence in retrospective
Also updates REF-03 rule in tools/skill-validator.md to clarify that
natural language invocation is canonical — no skill: prefix required.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace three inconsistent skill reference patterns (frontmatter variables
with raw paths, frontmatter variables with skill: prefix, inline Execute
skill: syntax) with a single natural-language convention across all workflow
and task step files.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Party-mode moved from core/workflows/ to core/skills/ in PR #1959,
breaking 11 file references. Convert all to skill:bmad-party-mode
matching the convention used by skill:bmad-advanced-elicitation.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* prototype preview of new version of product brief skill
* chore: re-enable bmad-builder external module
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* config loading with existing location
* refactor: rename bmad-bmm-product-brief-preview to bmad-product-brief-preview
Drop the redundant bmm prefix from the product brief preview skill folder
to align with the standard naming convention.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add core tools reference and apply Diataxis style fixes
Add comprehensive reference doc for all 11 built-in core tools (tasks
and workflows) that ship with every BMad installation — bmad-help,
brainstorming, party-mode, distillator, advanced-elicitation, both
review tools, both editorial tools, shard-doc, and index-docs. Each
entry follows the Configuration Reference structure with purpose,
use cases, how it works, inputs, and outputs.
Style fixes across existing docs:
- reference/commands.md: convert #### headers to bold text, replace
sparse task table with link to new core-tools reference
- how-to/get-answers-about-bmad.md: remove horizontal rule between
sections (Diataxis violation)
- how-to/project-context.md: consolidate 4 consecutive tip admonitions
into single admonition with bullet list, add AGENTS.md reference
Also includes:
- Add bmad-distillator task to core module with compression agents,
format reference, splitting strategy, and analysis scripts
- Add Distillator entry to module-help.csv
- Rename supports-autonomous to supports-headless in product-brief
manifest
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* core items to skills folder
* fix calls to invoke party mode
* fix calls to invoke party mode and AE as skills
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The market-research workflow now lives entirely in
bmad-market-research/ as a native skill directory.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add co-located HALT instructions after every menu in all 6 step files
- Fix step-05 to route to step-06 instead of declaring workflow complete
- Rename market-steps/ to steps/ for standard naming convention
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move validate-prd from a workflow entry in create-prd manifest to a
self-contained skill at src/bmm/workflows/2-plan-workflows/bmad-validate-prd/.
Update pm.agent.yaml and module-help.csv to use skill: URI.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Strip name/description from all step frontmatter (STEP-06), remove
intra-skill path variables and inline them (PATH-04), move outputFile
to workflow.md (WF-03), fix stale step-11-complete refs (REF-02),
fix product_knowledge typo (REF-01), rewrite continuation logic
to use a lookup table, and strip legacy source workflow frontmatter.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move the create-prd workflow into src/core/tasks/bmad-create-prd/ as a
self-contained native skill with SKILL.md, workflow.md, steps-c/, data/,
and templates/. Update all internal path references from absolute
{project-root}/_bmad/... to relative paths. Mark the source
workflow-create-prd.md as standalone:false to prevent duplicate manifest
entries. Update pm.agent.yaml and module-help.csv to use skill:bmad-create-prd.
Remove installed_path and unused intra-skill path variables from
workflow.md (PATH-02, PATH-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove installed_path and intra-skill path variables from
workflow.md (PATH-02, PATH-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove installed_path definition and intra-skill path variables
from workflow.md (PATH-02, PATH-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove name/description from step frontmatter (STEP-06) and add
missing HALT before user menu in step-04-final-validation (STEP-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove name/description from step frontmatter (STEP-06) and inline
nextStepFile/templateFile path variables as literal relative paths
(PATH-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move edit-prd workflow and steps-e/ out of the shared create-prd directory
into its own bmad-edit-prd skill directory with SKILL.md, workflow.md, and
bmad-skill-manifest.yaml. Update pm.agent.yaml and module-help.csv to use
skill:bmad-edit-prd. Fix validationWorkflow path in step-e-04 to use
absolute {project-root} reference since relative path breaks after move.
Remove name/description from step frontmatter (STEP-06), inline
intra-skill path variables (PATH-04), prefix bare external path
with {project-root} (PATH-03), and normalize template placeholders
to double-curly convention (REF-01).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Step files are inside steps/ so inter-step references must be
./step-NN.md not ./steps/step-NN.md (which would double-nest).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The agent menu entry for QS was still using a raw file path
instead of the skill dispatcher, inconsistent with module-help.csv.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move technical-research workflow into bmad-technical-research/ skill
package with SKILL.md, bmad-skill-manifest.yaml, and properly
namespaced step files. Update module-help.csv to use skill: ref.
Remove duplicate technical-steps/ from old location and fix all
cross-references to use the new bmad-technical-research/ path.
Remove name/description frontmatter from workflow.md and sub-workflow
files (deep-dive-workflow.md, full-scan-workflow.md). Metadata belongs
exclusively in SKILL.md for native skill packages.
* convert qa-generate-e2e-tests to native skill packaging
* fix(bmm): remove workflow metadata and normalize refs for qa-generate-e2e-tests
Remove name/description from workflow.md (belongs in SKILL.md).
Normalize installed_path to relative. Update QA agent exec to skill URI.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* chore: convert correct-course workflow to native skill
* fix(skill): patch correct-course native skill metadata
* fix(skill): inline hardcoded path variables in correct-course
Remove installed_path, checklist, and project_context variables that
just indirected single-use hardcoded paths. Use bare values inline.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* refactor(skills): convert create-epics-and-stories workflow to native skill
* fix(skills): normalize create-epics-and-stories metadata
* fix: remove workflow_path indirection, use direct relative paths
Replace the custom workflow_path variable with direct relative paths
(../workflow.md, ../templates/epics-template.md) in all step files.
Also remove duplicate epicsTemplate entry in step-01.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: remove unused frontmatter refs from step files
Drop thisStepFile, workflowFile, and epicsTemplate (where unused in
body) from all step frontmatter. Only keep variables actually
referenced in step body content.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: convert partyModeWorkflow to skill ref, drop unused task refs
- partyModeWorkflow now uses skill:bmad-party-mode (it is a skill)
- remove advancedElicitationTask and partyModeWorkflow from steps 1/4
where they are not referenced in the body
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* refactor: inline all frontmatter refs, use canonical skill invocation
- Remove all file/task reference variables from step frontmatter
- Inline paths directly where used in body text
- Use canonical "invoke the skill" phrasing for skill references
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Planning workflows loaded document_output_language from config but never
enforced it in step files. Only communication_language was enforced,
causing generated artifacts (product briefs, PRDs, UX specs, project
docs) to be written in the conversation language instead of the
configured document output language.
Add explicit document_output_language enforcement in all content-
generating step files across create-product-brief, create-prd,
create-ux-design, generate-project-context, and document-project
workflows.
Closes#1966