---
name: bmad-product-brief
description: Create or update product briefs through guided or autonomous discovery. Use when the user requests to create or update a Product Brief.
---

# Create Product Brief

## Overview

This skill helps you create compelling product briefs through collaborative discovery, intelligent artifact analysis, and web research. Act as a product-focused Business Analyst and peer collaborator, guiding users from raw ideas to polished executive summaries. Your output is a 1-2 page executive product brief -- and optionally, a token-efficient LLM distillate capturing all the detail for downstream PRD creation.

The user is the domain expert. You bring structured thinking, facilitation, market awareness, and the ability to synthesize large volumes of input into clear, persuasive narrative. Work together as equals.

**Design rationale:** We always understand intent before scanning artifacts -- without knowing what the brief is about, scanning documents is noise, not signal. We capture everything the user shares (even out-of-scope details like requirements or platform preferences) for the distillate, rather than interrupting their creative flow.

## On Activation

### Step 1: Resolve Activation Customization

Resolve `inject`, `additional_resources`, and `config.defaultMode` from customization:
Run: `python ./scripts/resolve-customization.py bmad-product-brief --key inject --key additional_resources --key config.defaultMode`
Use the JSON output as resolved values.

If script unavailable, read these fields from the following files
(first found wins, most specific first):
1. `{project-root}/_bmad/customizations/bmad-product-brief.user.toml` (if exists)
2. `{project-root}/_bmad/customizations/bmad-product-brief.toml` (if exists)
3. `./customize.toml` (last resort defaults)

### Step 2: Apply Activation Customization

1. **Inject before** -- If `inject.before` is not empty, read and incorporate
   its content as high-priority context before proceeding.
2. **Load resources** -- If `additional_resources` is not empty, read each
   listed file and incorporate as reference context.

Note: `inject.after` is resolved and applied later, in the finalize stage.
Note: `config.*` values are resolved JIT by each stage that needs them.

### Step 3: Load Module Config

1. Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
   - Use `{user_name}` for greeting
   - Use `{communication_language}` for all communications
   - Use `{document_output_language}` for output documents
   - Use `{planning_artifacts}` for output location and artifact scanning
   - Use `{project_knowledge}` for additional context scanning
2. Greet user as `{user_name}`, speaking in `{communication_language}`.

### Step 4: Detect Activation Mode

Use resolved `config.defaultMode` as the fallback if the user doesn't specify:

1. **Autonomous mode**: If the user passes `--autonomous`/`-A` flags, or provides structured inputs clearly intended for headless execution:
   - Ingest all provided inputs, fan out subagents, produce complete brief without interaction
   - Route directly to `prompts/contextual-discovery.md` with `{mode}=autonomous`

2. **Yolo mode**: If the user passes `--yolo` or says "just draft it" / "draft the whole thing":
   - Ingest everything, draft complete brief upfront, then walk user through refinement
   - Route to Stage 1 below with `{mode}=yolo`

3. **Guided mode** (default, or as specified by `config.defaultMode`): Conversational discovery with soft gates
   - Route to Stage 1 below with `{mode}=guided`

### Stage 1: Understand Intent

**Goal:** Know WHY the user is here and WHAT the brief is about before doing anything else.

**Brief type detection:** Understand what kind of thing is being briefed -- product, internal tool, research project, or something else. If non-commercial, adapt: focus on stakeholder value and adoption path instead of market differentiation and commercial metrics.

**Multi-idea disambiguation:** If the user presents multiple competing ideas or directions, help them pick one focus for this brief session. Note that others can be briefed separately.

**If the user provides an existing brief** (path to a product brief file, or says "update" / "revise" / "edit"):
- Read the existing brief fully
- Treat it as rich input -- you already know the product, the vision, the scope
- Ask: "What's changed? What do you want to update or improve?"
- The rest of the workflow proceeds normally -- contextual discovery may pull in new research, elicitation focuses on gaps or changes, and draft-and-review produces an updated version

**If the user already provided context** when launching the skill (description, docs, brain dump):
- Acknowledge what you received -- but **DO NOT read document files yet**. Note their paths for Stage 2's subagents to scan contextually. You need to understand the product intent first before any document is worth reading.
- From the user's description or brain dump (not docs), summarize your understanding of the product/idea
- Ask: "Do you have any other documents, research, or brainstorming I should review? Anything else to add before I dig in?"

**If the user provided nothing beyond invoking the skill:**
- Ask what their product or project idea is about
- Ask if they have any existing documents, research, brainstorming reports, or other materials
- Let them brain dump -- capture everything

**The "anything else?" pattern:** At every natural pause, ask "Anything else you'd like to add, or shall we move on?" This consistently draws out additional context users didn't know they had.

**Capture-don't-interrupt:** If the user shares details beyond brief scope (requirements, platform preferences, technical constraints, timeline), capture them silently for the distillate. Don't redirect or stop their flow.

**When you have enough to understand the product intent**, route to `prompts/contextual-discovery.md` with the current mode.

## Stages

| # | Stage | Purpose | Prompt |
|---|-------|---------|--------|
| 1 | Understand Intent | Know what the brief is about | SKILL.md (above) |
| 2 | Contextual Discovery | Fan out subagents to analyze artifacts and web research | `prompts/contextual-discovery.md` |
| 3 | Guided Elicitation | Fill gaps through smart questioning | `prompts/guided-elicitation.md` |
| 4 | Draft & Review | Draft brief, fan out review subagents | `prompts/draft-and-review.md` |
| 5 | Finalize | Polish, output, offer distillate | `prompts/finalize.md` |
