---
name: rcode-prfaq
internal: true
description: Working Backwards PRFAQ challenge to forge product concepts.
triggers:
  - "prfaq"
  - "working backwards"
  - "press release first"
  - "create a prfaq"
  - "product concept challenge"
  - "forge a product idea"
user-invocable: true
---
@.rcode/references/karpathy-guidelines.md


## Do NOT use this skill for

- **Refining an existing PRD** — use `rcode-create-prd` or `rcode-edit-prd`.
- **Brainstorming raw ideas** before there's a concept — use `rcode-brainstorming` first; PRFAQ assumes a candidate concept exists.
- **Sprint or phase planning** — use `rcode-sprint-planning` / `rcode-create-milestone`.
- **Pure market research with no product hypothesis** — use a research workflow.
- **Single-question Q&A** — PRFAQ runs a multi-stage gauntlet; for a one-off answer, just answer.

If the user asks to "validate" or "polish" an existing PRD, redirect to `rcode-validate-prd`.

## Workflow


# 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 + PRD distillate for downstream pipeline consumption.

**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.

## On Activation

1. Load config from `{project-root}/.rcode/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}`. Be warm but efficient — dream builder energy.

3. **Resume detection:** Check if `{planning_artifacts}/prfaq-{project_name}.md` already exists. If it does, 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.

4. **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 or documents yourself. 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 `{planning_artifacts}/prfaq-{project_name}.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 — suggest the idea may need more exploration first and recommend they invoke the `rcode-brainstorming` skill to develop it further.

**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 — do not read user-provided files yourself; that's the Artifact Analyzer's job.
2. **Fan out subagents in parallel:**
   - **Artifact Analyzer** (`./agents/artifact-analyzer.md`) — Scans `{planning_artifacts}` and `{project_knowledge}` 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 `{planning_artifacts}/prfaq-{project_name}.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` |

## Output Format

- Complete PRFAQ document at `{planning_artifacts}/prfaq-{project_name}.md` using `./assets/prfaq-template.md`
- PRD distillate block at end of document for downstream consumption
- Sections: Press Release (1 page), Customer FAQ (5-10 Q&As), Internal FAQ (risks/feasibility/trade-offs), Verdict (build/refine/kill)
- Max 3 pages total

## Examples

### Happy Path
**Input:** "Create a PRFAQ for an AI PRD validator"
**Expected:** Gauntlet mode questioning → press release → customer FAQ → internal FAQ → verdict + distillate. Saved to planning_artifacts/.

### Headless Mode
**Input:** `/rcode-prfaq --headless --customer "{persona}" --problem "{problem}" --stakes "{why}" --solution "{concept}"`
**Expected:** First-draft PRFAQ generated autonomously via artifact-analyzer + web-researcher subagents.

### Negative Test
**Input:** "Create a PRFAQ for a product that doesn't have a clear customer"
**Expected:** Skill challenges immediately: "Who specifically buys this? Job title + decision criteria?" Refuses vague answers.

## When NOT to use this skill

Do NOT use this skill for writing a full PRD (use rcode-create-prd), validating an existing PRD (use rcode-validate-prd), market research (use rcode-sadiq-analyst), or sprint planning. PRFAQ is a concept-forging challenge, not a requirements document.
