afrexai-prd-engine
# PRD Engine — Product Requirements That Ship
What this skill does
# PRD Engine — Product Requirements That Ship
Complete product requirements methodology: from idea to spec to shipped feature. Not just a JSON template — a full system for writing PRDs that developers actually follow and stakeholders actually approve.
## When to Use This Skill
- Turning a vague idea into a buildable specification
- Writing PRDs for new features, products, or major refactors
- Reviewing/improving existing PRDs before sprint planning
- Breaking epics into right-sized user stories
- Creating technical design documents alongside product specs
- Preparing specs for AI coding agents (Claude Code, Cursor, Copilot)
---
## Phase 1: Discovery Brief
Before writing a single requirement, answer these questions. Skip this and you'll rewrite the PRD 3 times.
### Problem Validation Checklist
```yaml
discovery_brief:
problem:
statement: "" # One sentence. If you need two, you don't understand it yet.
who_has_it: "" # Specific persona, not "users"
frequency: "" # Daily? Weekly? Once? (daily problems > occasional ones)
current_workaround: "" # What do they do today? (no workaround = maybe not a real problem)
evidence:
- type: "" # support_ticket | user_interview | analytics | churned_user | sales_objection
detail: ""
date: ""
impact:
users_affected: "" # Number or percentage
revenue_impact: "" # $ at risk or $ opportunity
strategic_alignment: "" # Which company goal does this serve?
constraints:
deadline: "" # Hard date or flexible?
budget: "" # Engineering weeks available
dependencies: "" # What must exist first?
regulatory: "" # Any compliance requirements?
success_metrics:
primary: "" # ONE metric that defines success
secondary: [] # 2-3 supporting metrics
measurement_method: "" # How will you actually measure this?
target: "" # Specific number, not "improve"
timeframe: "" # When do you expect to see results?
```
### Problem Statement Formula
**[Persona] needs [capability] because [reason], but currently [blocker], which causes [measurable impact].**
Examples:
- ❌ "Users need better onboarding" (vague, unmeasurable)
- ✅ "New free-trial users (500/month) need to reach their first 'aha moment' within 10 minutes because 73% who don't will churn within 48 hours, but currently the average time-to-value is 34 minutes due to a 12-step setup wizard, which costs us ~$18K/month in lost conversions."
### Kill Criteria
Before proceeding, check these. If any are true, STOP and push back:
| Signal | Action |
|--------|--------|
| No evidence of the problem (just someone's opinion) | Demand evidence. Opinions aren't requirements. |
| Solution already decided ("just build X") | Rewind to the problem. Solutions without problems = features nobody uses. |
| Success metric is unmeasurable | Define how you'll measure it or don't build it. |
| Affects <1% of users with no revenue impact | Deprioritize. Small problems with small impact = small returns. |
| Scope keeps expanding during discovery | Scope lock. If everything is in scope, nothing is. |
---
## Phase 2: PRD Document
### PRD Template
```markdown
# PRD: [Feature Name]
**Author:** [Name]
**Status:** Draft | In Review | Approved | In Progress | Shipped
**Created:** YYYY-MM-DD
**Last Updated:** YYYY-MM-DD
**Approvers:** [Names + roles]
## 1. Problem & Opportunity
[Problem statement from discovery brief — one paragraph max]
### Evidence
- [Evidence point 1 — with data]
- [Evidence point 2 — with data]
### Impact
- Users affected: [number]
- Revenue impact: [$ amount or % change]
- Strategic goal: [which one]
## 2. Solution Overview
[2-3 paragraphs max. What are we building and why this approach?]
### What This Is
- [Bullet list of what's in scope]
### What This Is NOT
- [Explicit exclusions — this prevents scope creep]
### Key Decisions Made
| Decision | Options Considered | Chosen | Rationale |
|----------|-------------------|--------|-----------|
| [Decision 1] | A, B, C | B | [Why] |
## 3. User Stories
[See Phase 3 below for story writing methodology]
## 4. Design & UX
### User Flow
1. User [action] →
2. System [response] →
3. User sees [outcome]
### Wireframes/Mockups
[Link to Figma/screenshots or describe key screens]
### Edge Cases
| Scenario | Expected Behavior |
|----------|------------------|
| [Edge case 1] | [What happens] |
| [Edge case 2] | [What happens] |
| Empty state | [What user sees with no data] |
| Error state | [What user sees on failure] |
| Slow connection | [Loading behavior] |
## 5. Technical Considerations
### Architecture Notes
- [Key technical decisions]
- [New services/APIs needed]
- [Database changes]
### Dependencies
- [External service X]
- [Team Y's API]
- [Library Z]
### Performance Requirements
- Page load: <[X]ms
- API response: <[X]ms
- Concurrent users: [X]
### Security & Privacy
- [Data handling requirements]
- [Auth/permissions needed]
- [PII considerations]
## 6. Release Plan
### Rollout Strategy
- [ ] Feature flag: [flag name]
- [ ] Beta group: [who]
- [ ] % rollout: [10% → 50% → 100%]
- [ ] Rollback plan: [how]
### Launch Checklist
- [ ] QA sign-off
- [ ] Analytics events implemented
- [ ] Monitoring/alerts configured
- [ ] Documentation updated
- [ ] Support team briefed
- [ ] Stakeholders notified
## 7. Success Criteria
| Metric | Current | Target | Timeframe |
|--------|---------|--------|-----------|
| [Primary metric] | [X] | [Y] | [Z weeks] |
| [Secondary metric] | [X] | [Y] | [Z weeks] |
### Post-Launch Review
- **1-week check:** [What to look at]
- **1-month review:** [What to measure]
- **Kill/iterate decision:** [Criteria for each]
```
### PRD Quality Rubric (score before sharing)
| Dimension | 0-2 (Weak) | 3-4 (Adequate) | 5 (Strong) | Weight |
|-----------|-----------|----------------|------------|--------|
| **Problem clarity** | Vague, no data | Clear but thin evidence | Sharp statement + multiple evidence points | x4 |
| **Scope discipline** | Everything in scope | Some boundaries | Explicit in/out + "what this is NOT" | x3 |
| **Story quality** | Vague tasks | Stories with some criteria | INVEST stories + verifiable acceptance criteria | x4 |
| **Edge cases** | None listed | Happy path + 1-2 edges | Comprehensive: empty, error, slow, permissions, concurrent | x3 |
| **Success metrics** | "Improve X" | Metric + target | Metric + baseline + target + timeframe + measurement method | x3 |
| **Technical feasibility** | No tech section | Architecture notes | Dependencies, performance, security, migration plan | x2 |
| **Release plan** | None | "Ship it" | Feature flag + rollout % + rollback + launch checklist | x1 |
**Scoring:** Sum (score × weight). Max = 100.
- **80-100:** Ship-ready. Get approvals.
- **60-79:** Solid but missing pieces. Fill gaps before review.
- **40-59:** Needs work. Major sections incomplete.
- **<40:** Start over or go back to discovery.
---
## Phase 3: User Story Methodology
### Story Format
```yaml
story:
id: "US-001"
title: "" # Action-oriented: "Add priority field to tasks table"
persona: "" # Who benefits
narrative: "As a [persona], I want [capability] so that [benefit]"
acceptance_criteria:
- criterion: "" # Verifiable statement
type: "functional" # functional | performance | security | ux
priority: 1 # Execution order (dependencies first)
size: "" # XS | S | M | L | XL
status: "todo" # todo | in_progress | review | done
notes: "" # Runtime observations
depends_on: [] # Story IDs this depends on
blocked_by: [] # External blockers
```
### INVEST Checklist (every story must pass)
| Letter | Criterion | Test |
|--------|-----------|------|
| **I** — Independent | Can be built without other incomplete stories | No circular dependencies |
| **N** — Negotiable | Details can flex (the "what" is fixed, the "how" is flexible) | Multiple implementation approaches exist |
| **V** — Valuable | Delivers user or business value on its own | Would a user/stakeholdeRelated in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.