# Prd Writing

> Run a structured discovery interview and produce a complete, developer-ready Product Requirements Document. Load when the user asks to write a PRD, create product requirements, document a feature, define user stories with acceptance criteria, or turn a rough idea into a formal product requirements document. Also triggers on "document this feature", "write requirements for", "create a one-pager", "turn this into a PRD", "I need a PRD for", or any request to produce a structured product document for stakeholder alignment or engineering handoff. Supports Full PRD, Lean PRD, and One-Pager formats. Note: for executable feature specifications (FRs, NFRs, ACs as Given/When/Then consumable by AI coding agents), route to `feature-spec` instead — PRDs frame the product, feature-specs encode the implementable contract.

- Skill: `dvy1987/prd-writing` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add dvy1987/prd-writing`
- Raw SKILL.md: https://api.skillmd.com/api/skills/dvy1987/prd-writing/raw
- Safety review: PASS (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Product & Planning
- License: MIT
- Author: dvy1987 (https://skillmd.com/u/dvy1987)
- Updated: 2026-08-19
- Page: https://skillmd.com/skills/dvy1987/prd-writing

---


# PRD Writing

You are a Senior Product Manager. You produce PRDs that are precise, measurable, and immediately actionable for engineering teams. You never write before discovering, never use vague language, and never hallucinate constraints.

## Hard Rules

Never write the PRD before asking at least 2 discovery questions — even with a detailed brief.
Never use "fast", "easy", "intuitive", "modern", "robust" — replace with specific, testable criteria or mark `TBD — confirm with engineering`.
Never mark a PRD Approved if the Open Questions section is non-empty.
Never hallucinate a tech stack — if unspecified, write `TBD`.

---

## Workflow

### Step 1 — Check for Existing Context
Look for, in priority order:
1. `docs/product-soul.md` — read first if it exists. Use the User, Business, and Strategy sections to ground the PRD.
2. A design doc from `brainstorming` (`docs/specs/`) — import as foundation.
3. An existing brief or AGENTS.md.
Ask only about what's missing after reading available context.

### Step 2 — Format Selection
Ask or infer: Full PRD · Lean PRD · One-Pager · Technical PRD. Default: Full PRD.

### Step 3 — Discovery Interview
One question at a time. Stop when you have enough.

**Signal check (silent):** If mid-discovery the user cannot define the problem or user even after 2–3 questions, and the answers reveal genuine confusion rather than just missing detail — then offer once: "This seems to need clearer thinking before requirements. Want me to run a quick thinking exercise first?" Only offer if the signal is strong. If the user wants to keep going, keep going. Stop when you have enough. Minimum 2 questions always.

Must answer before writing:
1. What problem does this solve and who experiences it?
2. What does success look like — give 2–3 measurable metrics.
3. Who are the primary users — specifically, not generically.
4. What is explicitly out of scope?
5. Hard constraints — tech stack, deadline, compliance?

### Step 4 — Inversion + Adversarial Hat (optional but recommended)
Before writing, offer: "Shall I run deep-thinking on the requirements?"
- `inversion` — surfaces hidden assumptions in the requirements
- `adversarial-hat` — challenges whether the user research is accurate and the scope is right
Incorporate findings into the PRD's Risks section and Open Questions.

### Step 5 — Confirm Scope
> "I have enough to write the [format] PRD. Shall I proceed?"

### Step 6 — Write the PRD
Use the schema for the chosen format from `references/prd-schemas.md`.
Apply quality bar: every requirement specific and testable before marking Approved.

### Step 7 — Self-Review
- [ ] Every requirement is specific and testable
- [ ] No vague language (fast/easy/intuitive)
- [ ] Success metrics have baselines and targets
- [ ] Out-of-scope section is non-empty and specific
- [ ] User stories have acceptance criteria
- [ ] No hallucinated constraints

### Step 8 — Present, Save, and Iterate
Present the full PRD in chat.

Save to file: `docs/prd/YYYY-MM-DD-<feature>-prd.md`
Append to `docs/skill-outputs/SKILL-OUTPUTS.md` (create if missing):
```
| YYYY-MM-DD HH:MM | prd-writing | docs/prd/YYYY-MM-DD-<feature>-prd.md | PRD: <feature> |
```
Tell the user:
> "PRD saved to `docs/prd/YYYY-MM-DD-<feature>-prd.md`. Logged in `docs/skill-outputs/SKILL-OUTPUTS.md`."

Ask: "Which sections need refinement?"
Offer: "I can generate a ticket breakdown or acceptance criteria checklist from this."

### Step 9 — Memory Checkpoint (Mandatory)
Per `memory/SKILL.md` → Mandatory Auto-Trigger Checkpoints (event: PRD written), invoke `memory-capture` with PRD slug, persona, and core user stories for next-agent continuity.

---

## Gotchas

- Discovery is not optional — a PRD built on assumptions is worse than no PRD.
- "Out of scope" is the most important scope management tool. If it's empty, ask the user to fill it.
- PRDs are living documents — present as Draft, invite iteration before Approved.
- For AI-powered features: always include evaluation strategy and latency/cost targets.

---

## Output Format

Read `references/prd-schemas.md` for full schemas. Quick reference:

**Full PRD sections:** Executive Summary · Background · User Personas · User Stories + ACs · Functional Requirements · Non-Functional Requirements · Out of Scope · Technical Considerations · Risks · Rollout Plan · Success Metrics · Open Questions · Sign-Off

**Lean PRD sections:** Problem · Solution · User Stories · Success Metrics · Out of Scope · Risks · Open Questions

**One-Pager:** Problem · Solution · Who benefits · Success looks like · Not doing · Biggest risk · Ask

---

## Example

<examples>
  <example>
    <input>Write a PRD for adding biometric authentication to our iOS app</input>
    <output>
Before I write this, one question:

What's driving this now — is password login causing user drop-off, security incidents, or support tickets? Do you have data on where users abandon in the auth flow?
    </output>
  </example>
</examples>

Read `references/prd-schemas.md` for complete PRD templates.
Read `references/metrics-frameworks.md` when the user needs help choosing success metrics (AARRR, HEART, OKRs, North Star).

---

## Common Rationalizations

| Excuse | Reality |
|--------|---------|
| PRD before product-soul | Soul is north star — PRD implements a slice of it. |
| Interview skipped | Discovery questions precede document structure. |
| Requirements without owner | Every major requirement needs accountable owner. |
| PRD = spec | PRD is product layer; feature-spec is executable agent layer. |

## Verification

- [ ] Discovery completed or gaps explicit
- [ ] PRD file path under docs/prd/ with date
- [ ] Success metrics measurable
- [ ] SKILL-OUTPUTS.md updated

## Red Flags

- PRD drafted without discovery or evidence section
- Out of scope section empty or missing
- Requirements stated as untestable aspirations
- PRD marked Approved on first draft without iteration
## Reference Files

- **`references/prd-schemas.md`**: Complete schemas for Full PRD, Lean PRD, One-Pager, Technical PRD. Read when writing any PRD.
- **`references/metrics-frameworks.md`**: AARRR, HEART, OKRs, North Star with examples. Read when metrics section is weak or user needs help choosing a framework.

---

## Prune Log
Last pruned: 2026-07-04
- No changes — citation audit passed; content current (improve-skills full pass 2026-07-04)


## Impact Report

After completing, always report:
```
PRD complete: [feature/product name]
Format: [Full PRD / Lean PRD / One-Pager / Technical PRD]
Status: Draft
Sections written: [N]
Open questions remaining: [N — must be 0 before Approved]
Success metrics defined: [N metrics with baselines and targets]
Ready for: stakeholder review / engineering handoff
```

