con un clic
bmad-domain-research
Conduct domain and industry research. Use when the user says wants to do domain research for a topic or industry
Menú
Conduct domain and industry research. Use when the user says wants to do domain research for a topic or industry
Post-epic review to extract lessons and assess success. Use when the user says "run a retrospective" or "lets retro the epic [epic]"
Break requirements into epics and user stories. Use when the user says "create the epics and stories list"
Review code changes adversarially using parallel review layers (Blind Hunter, Edge Case Hunter, Acceptance Auditor) with structured triage into actionable categories. Use when the user says "run code review" or "review this code"
Creates a dedicated story file with all the context the agent will need to implement it later. Use when the user says "create the next story" or "create story [story identifier]"
Implements any user intent, requirement, story, bug fix or change request by producing clean working code artifacts that follow the project's existing architecture, patterns and conventions. Use when the user wants to build, fix, tweak, refactor, add or modify any code, component or feature.
Facilitate a brainstorming session using diverse creative techniques. Use when the user says 'help me brainstorm' or 'help me ideate'.
| name | bmad-domain-research |
| description | Conduct domain and industry research. Use when the user says wants to do domain research for a topic or industry |
Goal: Conduct comprehensive domain/industry research using current web data and verified sources to produce complete research documents with compelling narratives and proper citations.
Your Role: You are a domain research facilitator working with an expert partner. This is a collaboration where you bring research methodology and web search capabilities, while your partner brings domain knowledge and research direction.
domain-steps/step-01-init.md) resolve from the skill root.{skill-root} resolves to this skill's installed directory (where customize.toml lives).{project-root}-prefixed paths resolve from the project working directory.{skill-name} resolves to the skill directory's basename.⛔ Web search required. If unavailable, abort and tell the user.
Run: python3 {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key workflow
If the script fails, resolve the workflow block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
{skill-root}/customize.toml — defaults{project-root}/_bmad/custom/{skill-name}.toml — team overrides{project-root}/_bmad/custom/{skill-name}.user.toml — personal overridesAny missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by code or id replace matching entries and append new entries, and all other arrays append.
Execute each entry in {workflow.activation_steps_prepend} in order before proceeding.
Treat every entry in {workflow.persistent_facts} as foundational context you carry for the rest of the workflow run. Entries prefixed file: are paths or globs under {project-root} — load the referenced contents as facts. All other entries are facts verbatim.
Load config from {project-root}/_bmad/bmm/config.yaml and resolve:
{user_name} for greeting{communication_language} for all communications{document_output_language} for output documents{planning_artifacts} for output location and artifact scanning{project_knowledge} for additional context scanningGreet {user_name}, speaking in {communication_language}.
Execute each entry in {workflow.activation_steps_append} in order.
Activation is complete. If activation_steps_prepend or activation_steps_append were non-empty, confirm every entry was executed in order before proceeding. Do not begin the main workflow until all activation steps have been completed.
"Welcome {{user_name}}! Let's get started with your domain/industry research.
What domain, industry, or sector do you want to research?
For example:
Based on the user's topic, briefly clarify:
After gathering the topic and goals:
research_type = "domain"research_topic = [discovered topic from discussion]research_goals = [discovered goals from discussion]research_topic_slug from {{research_topic}}: lowercase, trim, replace whitespace with -, strip path separators (/, \), .., and any character that is not alphanumeric, -, or _. Collapse repeated - and strip leading/trailing -. If the result is empty, use untitled.{planning_artifacts}/research/domain-{{research_topic_slug}}-research-{{date}}.md with exact copy of the ./research.template.md contents./domain-steps/step-01-init.md with topic contextNote: The discovered topic from the discussion should be passed to the initialization step, so it doesn't need to ask "What do you want to research?" again - it can focus on refining the scope for domain research.
✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config {communication_language}