refactor(bmm): convert domain research workflow to native skill#1928
refactor(bmm): convert domain research workflow to native skill#1928alexeyv merged 3 commits intobmad-code-org:mainfrom
Conversation
🤖 Augment PR SummarySummary: Converts the BMM Domain Research workflow into a native skill package. Key changes:
🤖 Was this summary useful? React with 👍 or 👎 |
| - Document scope confirmation in research file | ||
| - Update frontmatter: `stepsCompleted: [1]` | ||
| - Load: `{project-root}/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md` | ||
| - Load: `./domain-steps/step-02-domain-analysis.md` |
There was a problem hiding this comment.
Load: targets in this step are already inside domain-steps/, so ./domain-steps/step-02-... likely resolves to domain-steps/domain-steps/... (and won’t be found if relative paths are resolved from the current file). Consider whether this should be ./step-02-domain-analysis.md (and similarly for the other steps).
Severity: medium
Other Locations
src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-01-init.md:135src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md:174src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md:227src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-03-competitive-landscape.md:183src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-03-competitive-landscape.md:236src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-04-regulatory-focus.md:158src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-04-regulatory-focus.md:204src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-05-technical-trends.md:177
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
📝 WalkthroughWalkthroughThis PR reorganizes the domain research workflow by moving it into a dedicated directory structure with relative path references. Changes include updating the analyst agent configuration, converting absolute paths to relative paths across workflow steps, creating supporting files (SKILL.md, manifest, template), and removing the old workflow entry from the research manifest. The workflow is renamed from "domain-research" to "bmad-domain-research". Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~13 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan for PR comments
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (5)
src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md (5)
28-29:⚠️ Potential issue | 🟠 MajorMissing validation: template variables could be undefined or empty.
Lines 28-29 reference
{{research_topic}}and{{research_goals}}with no validation that these variables exist or contain meaningful values. If template instantiation fails or variables are empty, the agent will proceed with undefined context, producing nonsensical web search queries (line 60-63) and output.🛡️ Proposed validation check
Add validation before the task begins:
## PRE-EXECUTION VALIDATION: - ✅ Verify `{{research_topic}}` is defined and non-empty - ✅ Verify `{{research_goals}}` is defined and non-empty - ✅ HALT if any required variables are missing or empty with error: "Required research context variables not initialized. Cannot proceed."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md` around lines 28 - 29, Add a PRE-EXECUTION VALIDATION block in step-02-domain-analysis.md that checks the template variables `{{research_topic}}` and `{{research_goals}}` are defined and non-empty before any task or web-search logic runs; if either is missing or empty, stop execution and emit the exact error "Required research context variables not initialized. Cannot proceed." so downstream steps that build web-search queries or call functions using `research_topic`/`research_goals` do not run with undefined context.
94-94:⚠️ Potential issue | 🟠 MajorVague target document specification creates ambiguity.
The instruction "WRITE IMMEDIATELY TO DOCUMENT" doesn't specify which document or the target path. The template has an
inputDocuments: []array in frontmatter, but there's no clear mapping to the actual output document path. This vagueness could cause the agent to write to the wrong location or fail entirely.💡 Suggested clarification
**WRITE IMMEDIATELY TO DOCUMENT** Target: Append to the active research document referenced in frontmatter (typically `research.template.md` instantiated as the current working document).🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md` at line 94, The directive "WRITE IMMEDIATELY TO DOCUMENT" is ambiguous; update it to explicitly name the target by referencing the frontmatter key (inputDocuments) and the default template name so the agent knows where to append output—e.g., change the instruction text to "WRITE IMMEDIATELY TO DOCUMENT: Append to the active research document specified in frontmatter (inputDocuments) — typically the instantiated research.template.md used as the current working document); if inputDocuments is empty, default to research.template.md in the working folder." Ensure you modify the string "WRITE IMMEDIATELY TO DOCUMENT" and validate mapping logic that reads inputDocuments to resolve the concrete output document path before writing.
22-23: 🛠️ Refactor suggestion | 🟠 MajorBrittle frontmatter update instruction with no error path.
Lines 22-23 instruct the agent to "Update frontmatter
stepsCompleted: [1, 2]before loading next step" and "FORBIDDEN to load next step until C is selected." However, there's no specification of what to do if the frontmatter update fails (file permissions, syntax error, concurrent modification). The workflow will deadlock or proceed incorrectly.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md` around lines 22 - 23, Ensure the frontmatter update for the stepsCompleted key is atomic and error-handled: when attempting to write/update stepsCompleted: [1, 2] validate parsing of the frontmatter, catch write errors (permissions, concurrent edits, syntax), retry a bounded number of times, and if still failing emit a clear error and abort advancing; additionally enforce the "FORBIDDEN until C is selected" gate by explicitly checking the selection condition (the "C selected" flag/state) before any write and refuse to load the next step if not satisfied, returning a deterministic failure path rather than deadlocking or proceeding silently.
165-166:⚠️ Potential issue | 🟡 MinorMissing alternative paths: no handling for user rejection or revision requests.
Line 165 asks "Ready to proceed to competitive landscape analysis?" but line 166 only provides
[C] Continue. What if the user responds "no", "revise", or requests changes to the analysis? There's no fallback, retry, or edit path—the workflow assumes linear success only.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md` around lines 165 - 166, The prompt "Ready to proceed to competitive landscape analysis?" currently only offers "[C] Continue" and lacks branches for negative or revision responses; update step-02-domain-analysis.md to add explicit alternative options (e.g., "[R] Revise / Request changes", "[N] No / Abort", "[E] Edit previous analysis") and describe the corresponding branch behavior: how to re-open the analysis for edits, ask clarifying questions, save intermediate state, or return to prior steps before proceeding; ensure you reference the prompt text and the existing "[C] Continue" option so the workflow can handle "no", "revise", or other user responses instead of assuming a linear path.
60-63:⚠️ Potential issue | 🟠 MajorNo error handling or sanitization for web search queries.
The web search queries directly embed
{{research_topic}}without sanitization or bounds checking. Ifresearch_topiccontains quotes, special characters, or is excessively long, the queries could fail or produce unexpected results. Additionally, there's no fallback if any of the four parallel searches fail or return zero results.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md` around lines 60 - 63, The queries in step-02-domain-analysis.md embed "{{research_topic}}" directly into the four search prompts ("market size value", "market growth rate dynamics", "market segmentation structure", "industry trends evolution") without sanitization or failure handling; update the code that constructs these prompts to validate and sanitize research_topic (trim whitespace, enforce a max length, escape/strip quotes and other special characters, and reject empty or clearly invalid inputs) and wrap each web search call with error handling and retry/fallback logic so a failed or empty search doesn’t break the workflow—e.g., validate research_topic before building the four search strings, escape/encode it when interpolating into the search templates, run searches with try/catch and retries, and consolidate/dedupe results with a fallback message if any search returns zero results.
🧹 Nitpick comments (6)
src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-04-regulatory-focus.md (1)
158-158: Relative path follows same pattern—verify resolution behavior.Same concern as other step files: if
./paths resolve from skill root per the project convention, this would look forstep-05-technical-trends.mdat the skill root rather than indomain-steps/. The path change is consistent across all step files, so the behavior will either work correctly for all or fail for all.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-04-regulatory-focus.md` at line 158, The Load entry "Load: `./step-05-technical-trends.md`" uses a `./` path that will resolve from the skill root per project convention; update this to reference the domain-steps directory explicitly so it resolves relative to the current step file (e.g., change the Load line in step-04-regulatory-focus.md from `./step-05-technical-trends.md` to `./domain-steps/step-05-technical-trends.md`) and apply the same fix to any other step files with the same `Load: ./...` pattern.src/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md (4)
6-8: Semantic overlap betweenresearch_type,research_topic, andresearch_goalsis unclear.Three separate frontmatter fields (
research_type,research_topic,research_goals) capture research metadata, but their boundaries are undefined. For example:
- If
research_typeis "Domain Research" andresearch_topicis "AI in Healthcare," is there overlap or redundancy?- Could
research_goalsconflict with or duplicate information inresearch_topic?Without clear semantic definitions, users and agents may populate these inconsistently, leading to confusing or contradictory document headers.
📖 Suggested clarification
Add a comment block in the template:
# Field definitions: # - research_type: The category of research (e.g., "Domain Research", "Competitive Analysis") # - research_topic: The specific subject being researched (e.g., "AI in Healthcare", "E-commerce Platforms") # - research_goals: The objectives or questions driving the research (e.g., "Assess market size and growth trends") research_type: '{{research_type}}' research_topic: '{{research_topic}}' research_goals: '{{research_goals}}'🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md` around lines 6 - 8, Add a YAML comment block above the three frontmatter fields explaining each field's semantics so contributors populate them consistently; explicitly define research_type (category of research, e.g., "Domain Research"), research_topic (specific subject, e.g., "AI in Healthcare"), and research_goals (objectives or research questions, e.g., "Assess market size and growth trends"), then leave the existing placeholders research_type: '{{research_type}}', research_topic: '{{research_topic}}', research_goals: '{{research_goals}}' unchanged.
15-19: Redundant usage of{{research_type}}in title and metadata section.
{{research_type}}appears twice: once in the title (line 15) and again in the metadata (line 19). Ifresearch_typeis long (e.g., "Comprehensive Domain and Competitive Landscape Research"), this creates verbose, repetitive headers.♻️ Alternative: Remove redundant field from metadata
# Research Report: {{research_type}} **Date:** {{date}} **Author:** {{user_name}} -**Research Type:** {{research_type}}The title already conveys the research type; repeating it in the metadata block is unnecessary.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md` around lines 15 - 19, The template redundantly repeats the {{research_type}} token in both the title and the metadata block; remove the duplicate by keeping {{research_type}} only in the title and deleting it from the metadata section (the lines showing **Research Type:** {{research_type}}) in research.template.md so the title conveys the type without a repeated verbose metadata field.
25-25: Ambiguous placeholder syntax conflicts with step-02 content structure.Line 25 uses
[Research overview and methodology will be appended here]as a placeholder. However, step-02 (file 1, lines 102-149) uses similar[bracketed text]for content placeholders like[Market size analysis with source citations]. This creates ambiguity:
- Should bracketed text in the final document be replaced or preserved?
- Are brackets part of the output format or just placeholder syntax?
Different agents may interpret this inconsistently, producing malformed output.
4-4: Inflexible hardcodedworkflowType: 'research'limits template reusability.Line 4 hardcodes
workflowType: 'research', but this prevents the template from being adapted for related workflow types like "market-research", "technical-research", or "competitive-intelligence". If BMAD-METHOD later introduces research sub-types, this field will need to be changed across all instantiated documents.Consider making this a placeholder:
workflowType: '{{workflow_type}}'Or use a more generic value:
workflowType: 'research-workflow'🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md` at line 4, The template currently hardcodes the workflowType key to the literal 'research', which reduces reuse; update the workflowType entry (the workflowType key currently set to 'research') to use a placeholder like {{workflow_type}} or a more generic value such as 'research-workflow' so downstream instantiations can override it; ensure any template rendering code or callers that consume this template are updated to provide the workflow_type variable if you choose the placeholder approach.src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md (1)
102-149: Ambiguous placeholder syntax could confuse content generation.The content structure template (lines 102-149) mixes
[bracketed placeholders]with explicit field labels like_Total Market Size:_and_Growth Rate:_. It's unclear whether the agent should:
- Replace the brackets with actual content while keeping the underscore-wrapped labels.
- Remove both brackets and labels.
- Keep brackets as literal Markdown list syntax.
This ambiguity could lead to inconsistent output formatting across different agent implementations.
📝 Suggested clarification
Add a formatting note:
#### Content Structure: **Formatting Instructions:** - Replace `[bracketed placeholders]` with actual analysis content (do not output the brackets). - Preserve `_underscore-wrapped field labels:_` exactly as shown for consistent structure. - Follow the exact heading hierarchy (## and ###) as specified.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md` around lines 102 - 149, The Industry Analysis template under "## Industry Analysis" mixes [bracketed placeholders] and _underscore-wrapped field labels:_ which is ambiguous; add a short "#### Content Structure" formatting note immediately after the "## Industry Analysis" heading that instructs agents to (1) replace bracketed placeholders with actual content (remove the brackets), (2) preserve underscore-wrapped field labels exactly as shown, and (3) keep the specified heading hierarchy (## and ###); reference these terms ("[bracketed placeholders]" and "_underscore-wrapped field labels:_") so implementers can update the template text unambiguously.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In
`@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md`:
- Line 227: The next-step link currently uses the incorrect relative path
'./step-03-competitive-landscape.md' (see the "After user selects 'C'" line)
which duplicates the earlier error; update that reference to include the
domain-steps directory prefix so it points to
'./domain-steps/step-03-competitive-landscape.md' (or
'domain-steps/step-03-competitive-landscape.md') to match the correct resolution
used elsewhere.
- Around line 172-173: The frontmatter update `stepsCompleted: [1, 2]` is
applied unconditionally after the "C" (Continue) action even though the file
contains only the placeholder "**CONTENT ALREADY WRITTEN TO DOCUMENT**";
implement a validation step before setting `stepsCompleted` in the "Continue"
handler (the UI action bound to 'C') that verifies the actual content was
written to step-02-domain-analysis.md by checking the file size changed and that
required section headers (e.g., "Industry Analysis" or other expected headings)
are present, and if verification fails abort the transition and surface the
error "Content write verification failed. Cannot proceed until industry analysis
is written to document." so the frontmatter update is only applied when
validation passes.
- Line 174: Replace the incorrect relative reference
"./step-03-competitive-landscape.md" with the skill-root-corrected path
"./domain-steps/step-03-competitive-landscape.md" in this markdown so step
navigation resolves correctly; update both occurrences (the two places that
currently reference "./step-03-competitive-landscape.md") in the
step-02-domain-analysis content.
In
`@src/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md`:
- Around line 2-5: The front-matter has inconsistent initial state:
stepsCompleted: [] but lastStep: 1; choose one of two fixes and apply it
consistently—either set lastStep to 0 or null to indicate no steps done (update
the lastStep field) or add 1 to stepsCompleted (stepsCompleted: [1]) to reflect
that step 1 is complete; ensure the final values of stepsCompleted and lastStep
match the chosen initial state and update only the fields stepsCompleted and
lastStep in the template.
---
Outside diff comments:
In
`@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md`:
- Around line 28-29: Add a PRE-EXECUTION VALIDATION block in
step-02-domain-analysis.md that checks the template variables
`{{research_topic}}` and `{{research_goals}}` are defined and non-empty before
any task or web-search logic runs; if either is missing or empty, stop execution
and emit the exact error "Required research context variables not initialized.
Cannot proceed." so downstream steps that build web-search queries or call
functions using `research_topic`/`research_goals` do not run with undefined
context.
- Line 94: The directive "WRITE IMMEDIATELY TO DOCUMENT" is ambiguous; update it
to explicitly name the target by referencing the frontmatter key
(inputDocuments) and the default template name so the agent knows where to
append output—e.g., change the instruction text to "WRITE IMMEDIATELY TO
DOCUMENT: Append to the active research document specified in frontmatter
(inputDocuments) — typically the instantiated research.template.md used as the
current working document); if inputDocuments is empty, default to
research.template.md in the working folder." Ensure you modify the string "WRITE
IMMEDIATELY TO DOCUMENT" and validate mapping logic that reads inputDocuments to
resolve the concrete output document path before writing.
- Around line 22-23: Ensure the frontmatter update for the stepsCompleted key is
atomic and error-handled: when attempting to write/update stepsCompleted: [1, 2]
validate parsing of the frontmatter, catch write errors (permissions, concurrent
edits, syntax), retry a bounded number of times, and if still failing emit a
clear error and abort advancing; additionally enforce the "FORBIDDEN until C is
selected" gate by explicitly checking the selection condition (the "C selected"
flag/state) before any write and refuse to load the next step if not satisfied,
returning a deterministic failure path rather than deadlocking or proceeding
silently.
- Around line 165-166: The prompt "Ready to proceed to competitive landscape
analysis?" currently only offers "[C] Continue" and lacks branches for negative
or revision responses; update step-02-domain-analysis.md to add explicit
alternative options (e.g., "[R] Revise / Request changes", "[N] No / Abort",
"[E] Edit previous analysis") and describe the corresponding branch behavior:
how to re-open the analysis for edits, ask clarifying questions, save
intermediate state, or return to prior steps before proceeding; ensure you
reference the prompt text and the existing "[C] Continue" option so the workflow
can handle "no", "revise", or other user responses instead of assuming a linear
path.
- Around line 60-63: The queries in step-02-domain-analysis.md embed
"{{research_topic}}" directly into the four search prompts ("market size value",
"market growth rate dynamics", "market segmentation structure", "industry trends
evolution") without sanitization or failure handling; update the code that
constructs these prompts to validate and sanitize research_topic (trim
whitespace, enforce a max length, escape/strip quotes and other special
characters, and reject empty or clearly invalid inputs) and wrap each web search
call with error handling and retry/fallback logic so a failed or empty search
doesn’t break the workflow—e.g., validate research_topic before building the
four search strings, escape/encode it when interpolating into the search
templates, run searches with try/catch and retries, and consolidate/dedupe
results with a fallback message if any search returns zero results.
---
Nitpick comments:
In
`@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md`:
- Around line 102-149: The Industry Analysis template under "## Industry
Analysis" mixes [bracketed placeholders] and _underscore-wrapped field labels:_
which is ambiguous; add a short "#### Content Structure" formatting note
immediately after the "## Industry Analysis" heading that instructs agents to
(1) replace bracketed placeholders with actual content (remove the brackets),
(2) preserve underscore-wrapped field labels exactly as shown, and (3) keep the
specified heading hierarchy (## and ###); reference these terms ("[bracketed
placeholders]" and "_underscore-wrapped field labels:_") so implementers can
update the template text unambiguously.
In
`@src/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-04-regulatory-focus.md`:
- Line 158: The Load entry "Load: `./step-05-technical-trends.md`" uses a `./`
path that will resolve from the skill root per project convention; update this
to reference the domain-steps directory explicitly so it resolves relative to
the current step file (e.g., change the Load line in step-04-regulatory-focus.md
from `./step-05-technical-trends.md` to
`./domain-steps/step-05-technical-trends.md`) and apply the same fix to any
other step files with the same `Load: ./...` pattern.
In
`@src/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md`:
- Around line 6-8: Add a YAML comment block above the three frontmatter fields
explaining each field's semantics so contributors populate them consistently;
explicitly define research_type (category of research, e.g., "Domain Research"),
research_topic (specific subject, e.g., "AI in Healthcare"), and research_goals
(objectives or research questions, e.g., "Assess market size and growth
trends"), then leave the existing placeholders research_type:
'{{research_type}}', research_topic: '{{research_topic}}', research_goals:
'{{research_goals}}' unchanged.
- Around line 15-19: The template redundantly repeats the {{research_type}}
token in both the title and the metadata block; remove the duplicate by keeping
{{research_type}} only in the title and deleting it from the metadata section
(the lines showing **Research Type:** {{research_type}}) in research.template.md
so the title conveys the type without a repeated verbose metadata field.
- Line 4: The template currently hardcodes the workflowType key to the literal
'research', which reduces reuse; update the workflowType entry (the workflowType
key currently set to 'research') to use a placeholder like {{workflow_type}} or
a more generic value such as 'research-workflow' so downstream instantiations
can override it; ensure any template rendering code or callers that consume this
template are updated to provide the workflow_type variable if you choose the
placeholder approach.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 3f081542-a7a2-4f2d-840c-33456bc9fba4
⛔ Files ignored due to path filters (1)
src/bmm/module-help.csvis excluded by!**/*.csv
📒 Files selected for processing (12)
src/bmm/agents/analyst.agent.yamlsrc/bmm/workflows/1-analysis/research/bmad-domain-research/SKILL.mdsrc/bmm/workflows/1-analysis/research/bmad-domain-research/bmad-skill-manifest.yamlsrc/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-01-init.mdsrc/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.mdsrc/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-03-competitive-landscape.mdsrc/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-04-regulatory-focus.mdsrc/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-05-technical-trends.mdsrc/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-06-research-synthesis.mdsrc/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.mdsrc/bmm/workflows/1-analysis/research/bmad-domain-research/workflow.mdsrc/bmm/workflows/1-analysis/research/bmad-skill-manifest.yaml
💤 Files with no reviewable changes (1)
- src/bmm/workflows/1-analysis/research/bmad-skill-manifest.yaml
...m/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md
Show resolved
Hide resolved
...m/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md
Show resolved
Hide resolved
...m/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md
Show resolved
Hide resolved
src/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md
Show resolved
Hide resolved
50a0b2e to
8ce08fc
Compare
* refactor(bmm): convert domain research workflow to native skill * fix(bmm): correct domain-research step relative paths * fix domain research skill metadata refs
Summary
workflow-domain-research.mdinto native skill packagebmad-domain-researchdomain-steps/andresearch.template.mdunder the new skill directorymodule-help.csvdomain research entry toskill:bmad-domain-researchValidation
npm testnode tools/cli/bmad-cli.js install --directory /Users/alex/src/bmad --modules bmm --tools claude-code --yes