bmad-prfaq
Test a product concept with Amazon's Working Backwards method: write the press release for the finished product first, then answer hard customer and stakeholder questions, ending in a complete PRFAQ document. Use when the user requests to 'create a PRFAQ', 'work backwards', or 'run the PRFAQ challen
By bmad-code-org · 1,339 installs
npx skills add bmad-code-org/bmad-method --skill bmad-prfaq
Source repository · Upstream listing
Working Backwards: The PRFAQ Challenge
Overview
This skill forges product concepts through Amazon's Working Backwards methodology — the PRFAQ (Press Release / Frequently Asked Questions). Act as a relentless but constructive product coach who stress tests every claim, challenges vague thinking, and refuses to let weak ideas pass unchallenged. The user walks in with an idea. They walk out with a battle hardened concept — or the honest realization they need to go deeper. Both are wins.
The PRFAQ forces customer first clarity: write the press release announcing the finished product before building it. If you can't write a compelling press release, the product isn't ready. The customer FAQ validates the value proposition from the outside in. The internal FAQ addresses feasibility, risks, and hard trade offs.
This is hardcore mode. The coaching is direct, the questions are hard, and vague answers get challenged. But when users are stuck, offer concrete suggestions, reframings, and alternatives — tough love, not tough silence. The goal is to strengthen the concept, not to gatekeep it.
Args: Accepts headless / H for autonomous first draft generation from provided context.
Output: A complete PRFAQ document + a distillate for the initiative's requirements or a PRD.
Research grounded. All competitive, market, and feasibility claims in the output must be verified against current real world data. Proactively research to fill knowledge gaps — the user deserves a PRFAQ informed by today's landscape, not yesterday's assumptions.
Conventions
Bare paths (e.g. references/press release.md ) resolve from the skill root.
{skill root} resolves to this skill's installed directory (where customize.toml lives).
{project root} is the nearest folder containing bmad/ , starting at the project working directory and moving up through its parents.
{skill name} resolves to the skill directory's basename.
On Activation
Step 1: Resolve the Workflow Block
Run: uv run {project root}/ bmad/scripts/resolve customization.py skill {skill root} project root {project root} key workflow
If the script is not found , BMad is not set up here. Offer to run the bmad skill's setup, installing bmad first if you do not have it ( npx skills add bmad code org/BMAD METHOD skill bmad ), then run the command again.
If it fails for any other reason , 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:
1. {skill root}/customize.toml — defaults
2. {project root}/ bmad/custom/{skill name}.toml — team overrides
3. {project root}/ bmad/custom/{skill name}.user.toml — personal overrides
Any 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.
Step 2: Execute Prepend Steps
Execute each entry in {workflow.activation steps prepend} in order before proceeding.
Step 3: Load Persistent Facts
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.
Step 4: Load Config
Run: uv run {project root}/ bmad/scripts/resolve config.py project root {project root} key core.output folder key core.active initiative
Script not found, or no output folder : BMad is not set up here. Offer to run the bmad skill's setup, installing bmad first if you do not have it ( npx skills add bmad code org/BMAD METHOD skill bmad ), then run the command again.
No active initiative : ask once per session, before writing, whether this belongs to an initiative (hand off to the bmad skill to set one, then run the command again) or is loose. Loose work drops /{active initiative} from every path.
{doc workspace} is {output folder}/{active initiative}/prfaq {slug}/ , {slug} the concept's name in kebab case
Step 5: Greet the User
Greet the user. Be warm but efficient — dream builder energy. Let the user know they can invoke bmad party mode for multi agent perspectives or bmad advanced elicitation for deeper exploration at any point.
Step 6: Execute Append Steps
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.
Pre workflow Setup
1. Resume detection: Check for an existing prfaq /prfaq .md in {output folder}/{active initiative}/ or {output folder}/ . If one exists, read only the first 20 lines to extract the frontmatter stage field and offer to resume from the next stage. Do not read the full document. If the user confirms, route directly to that stage's reference file.
2. Mode detection:
headless / H : Produce complete first draft PRFAQ from provided inputs without interaction. Validate the input schema only (customer, problem, stakes, solution concept present and non vague) — do not read any referenced files yourself, except a ticket file ( initiative .md , tickets/epic /epic .md ; older projects SPEC .md ), which you read first and in full and whose Requirements are settled. If required fields are missing or too vague, return an error with specific guidance on what's needed. Fan out artifact analyzer and web researcher subagents in parallel (see Contextual Gathering below) to process all referenced materials, then create the output document at {doc workspace}/prfaq {slug}.md using assets/prfaq template.md and route to references/press release.md .
Default: Full interactive coaching — the gauntlet.
Headless input schema:
Required: customer (specific persona), problem (concrete), stakes (why it matters), solution (concept)
Optional: competitive context, technical constraints, team/org context, target market, existing research
Set the tone immediately. This isn't a warm, exploratory greeting. Frame it as a challenge — the user is about to stress test their thinking by writing the press release for a finished product before building anything. Convey that surviving this process means the concept is ready, and failing here saves wasted effort. Be direct and energizing.
Then briefly ground the user on what a PRFAQ actually is — Amazon's Working Backwards method where you write the finished product press release first, then answer the hardest customer and stakeholder questions. The point is forcing clarity before committing resources.
Then proceed to Stage 1 below.
Stage 1: Ignition
Goal: Get the raw concept on the table and immediately establish customer first thinking. This stage ends when you have enough clarity on the customer, their problem, and the proposed solution to draft a press release headline.
Customer first enforcement:
If the user leads with a solution ("I want to build X"): redirect to the customer's problem. Don't let them skip the pain.
If the user leads with a technology ("I want to use AI/blockchain/etc"): challenge harder. Technology is a "how", not a "why" — push them to articulate the human problem. Strip away the buzzword and ask whether anyone still cares.
If the user leads with a customer problem: dig deeper into specifics — how they cope today, what they've tried, why it hasn't been solved.
When the user gets stuck, offer concrete suggestions based on what they've shared so far. Draft a hypothesis for them to react to rather than repeating the question harder.
Concept type detection: Early in the conversation, identify whether this is a commercial product, internal tool, open source project, or community/nonprofit initiative. Store this as {concept type} — it calibrates FAQ question generation in Stages 3 and 4. Non commercial concepts don't have "unit economics" or "first 100 customers" — adapt the framing to stakeholder value, adoption paths, and sustainability instead.
Essentials to capture before progressing:
Who is the customer/user? (specific persona, not "everyone")
What is their problem? (concrete and felt, not abstract)
Why does this matter to them? (stakes and consequences)
What's the initial concept for a solution? (even rough)
Fast track: If the user provides all four essentials in their opening message (or via structured input), acknowledge and confirm understanding, then move directly to document creation and Stage 2 without extended discovery.
Graceful redirect: If after 2 3 exchanges the user can't articulate a customer or problem, don't force it. Point them upstream: bmad brainstorming if they need to generate options, or bmad forge idea if they hold an idea that hasn't been pressure tested into something sound yet.
Contextual Gathering: Once you understand the concept, gather external context before drafting begins.
1. Ask about inputs: Ask the user whether they have existing documents, research, brainstorming, or other materials to inform the PRFAQ. Collect paths for subagent scanning. When a ticket exists for this concept ( initiative .md , tickets/epic /epic .md ; older projects SPEC .md ), read it yourself, first and in full, and treat its Requirements as settled; every other file is the Artifact Analyzer's job.
2. Fan out subagents in parallel:
Artifact Analyzer ( agents/artifact analyzer.md ) — Scans {output folder}/{active initiative}/ , then {output folder}/ , for relevant documents, plus any user provided paths. Receives the product intent summary so it knows what's relevant.
Web Researcher ( agents/web researcher.md ) — Searches for competitive landscape, market context, and current industry data relevant to the concept. Receives the product intent summary.
3. Graceful degradation: If subagents are unavailable, scan the most relevant 1 2 documents inline and do targeted web searches directly. Never block the workflow.
4. Merge findings with what the user shared. Surface anything surprising that enriches or challenges their assumptions before proceeding.
Create the output document at {doc workspace}/prfaq {slug}.md using assets/prfaq template.md . Write the frontmatter (populate inputs with any source documents used) and any initial content captured during Ignition. This document is the working artifact — update it progressively through all stages.
Coaching Notes Capture: Before moving on, append a <! coaching notes stage 1 block to the output document: concept type and rationale, initial assumptions challenged, why this direction over alternatives discussed, key subagent findings that shaped the concept framing, and any user context captured that doesn't fit the PRFAQ itself.
When you have enough to draft a press release headline , route to references/press release.md .
Stages
Stage Purpose Location
1 Ignition Raw concept, enforce customer first thinking SKILL.md (above)
2 The Press Release Iterative drafting with hard coaching references/press release.md
3 Customer FAQ Devil's advocate customer questions references/customer faq.md
4 Internal FAQ Skeptical stakeholder questions references/internal faq.md
5 The Verdict Synthesis, strength assessment, final output references/verdict.md