pm-prd — Generate a structured PRD
Part of the Personal Corp framework — running a one-person business through AI agents.
Generate a delivery-ready Product Requirements Document from a feature description. Branches by product type — B2C, B2B, internal tool, platform — with each type emphasizing different modules. Includes a 10-item quality self-check that runs after generation.
Inputs
| Field |
Required |
Notes |
| Feature description |
yes |
What the feature does and what problem it solves; one sentence minimum |
| Target user |
no |
Who it's for; inferred from the feature if not given |
| Business goals |
no |
Expected business metrics (DAU, conversion, revenue, etc.) |
| Product type |
no |
B2C / B2B / internal / platform; auto-detected if not given |
| Constraints |
no |
Tech limits, deadlines, resource limits |
| Depth |
no |
Outline (for review) / detailed (for development); default detailed |
If the user only says "write a PRD" with no feature, ask for the feature description. If they give feature + user + goals, go straight to generation.
Step 1 — Parse input and branch by product type
| Product type |
PRD emphasis |
Key differentiators |
| B2C |
UX flow, growth metrics, A/B test plan |
Heavy on interaction, heavy on data, write user journeys |
| B2B |
Permission model, multi-tenancy, SLA, integration APIs |
Heavy on completeness, security, API contracts |
| Internal tool |
Operational efficiency, integration with existing systems, training cost |
Heavy on practicality, light on visuals |
| Platform |
Multi-role interaction, supply-demand matching, ecosystem rules |
Heavy on role separation, rules engine |
Auto-detection rules: mentions of "user / member / loyalty / marketplace" → B2C; "enterprise / SaaS / CRM / admin panel" → B2B; "internal / management system / ticketing" → internal tool; "platform / marketplace / two-sided" → platform.
B2B PRDs must additionally cover:
- Permission matrix (role × feature × data scope)
- Multi-tenant data isolation approach
- Integration interfaces with the customer's existing systems
Platform PRDs must additionally cover:
- Independent feature view per role (supplier / consumer / platform ops)
- Matching rules and ranking strategy
- Commission / take-rate / settlement rules
Step 2 — Structured requirement breakdown
Three-method feature decomposition:
- User journey: trace the user's path from entry to goal completion; each node = one feature point
- Role split: list every role involved (end user, admin, ops); each role's actions = one feature module
- CRUD: for each core data object, walk through create / read / update / delete
For every feature module, fill:
- Feature description (one sentence)
- User story (As a {role}, I want to {action}, so that {value})
- Business rules (exhaustive — no "etc." or "other cases")
- Interaction (entry point → steps → success/failure feedback)
- Exception handling (timeouts, data anomalies, permission denied, edge cases)
Step 3 — Generate the PRD
Use this template. Comments next to each placeholder describe the fill logic.
# PRD: {feature name}
**Version:** v1.0
**Author:** {PM name, or [TBD]}
**Date:** {today}
**Status:** Draft
---
## 1. Background and Goals
### 1.1 Background
<!-- Answer three questions: why now? what happens if we don't? what changes if we do? -->
{problem state + user pain + why this is the right moment}
### 1.2 Target users
<!-- Use [role] + [trait] + [scenario]. Never write "all users". -->
| User role | Trait | Core need | Use scenario |
|---|---|---|---|
### 1.3 Business goals and success metrics
<!-- Each goal must be SMART — specific number + deadline. -->
| Goal | Metric | Target | Tracking method |
|---|---|---|---|
## 2. Requirement Overview
<!-- One paragraph, 30 words max, summarizing the core requirement. -->
## 3. Detailed Feature Design
### 3.1 {Module 1}
**Description:** {what it does}
**User story:** As a {role}, I want {action}, so that {value}
**Priority:** P0 (must launch) / P1 (strongly recommended) / P2 (nice-to-have)
**Business rules:**
1. {rule 1 — clear trigger condition + processing logic}
2. {rule 2}
**Interaction flow:**
<!-- Start at entry point, end at task completion, cover happy path + exception branches. -->
1. User enters from {entry}
2. {steps}
3. Success: {feedback}
4. Failure: {error message and handling}
**Exception handling:**
| Scenario | Handling | User-facing message |
|---|---|---|
(repeat format for each module)
## 4. Non-Functional Requirements
<!-- B2C → emphasize performance and experience; B2B → emphasize security and availability. -->
| Category | Requirement | Acceptance criterion |
|---|---|---|
| Performance | {e.g. page load time} | {e.g. < 2s} |
| Security | {e.g. data encryption} | {e.g. TLS 1.2+ in transit} |
| Compatibility | {browsers / devices} | {Chrome, Safari, mobile webview} |
## 5. Data Requirements (Analytics Events)
<!-- List every event to capture. Format: event name + trigger + attributes + purpose. -->
| Event | Trigger | Key attributes | Purpose |
|---|---|---|---|
## 6. Acceptance Criteria
<!-- At least 3 ACs per feature module, in Given-When-Then format. -->
| ID | Scenario | Given | When | Then |
|---|---|---|---|---|
## 7. Schedule
<!-- Break into design / dev / integration / launch. -->
| Phase | Estimate | Dependency | Risk |
|---|---|---|---|
## 8. Risks and Dependencies
| Risk | Probability | Impact | Mitigation |
|---|---|---|---|
## Appendix
- Related documents
- Competitor references
- Design files
Step 4 — Quality self-check
Run this 10-point checklist after generating. Flag any failed item with a fix suggestion.
| # |
Check |
Pass criterion |
| 1 |
Background not vague |
Answers "why do this?" not just "we need to do this" |
| 2 |
Goals quantified |
At least one numeric success metric |
| 3 |
Personas concrete |
No "all users" / "everyone" |
| 4 |
Business rules exhaustive |
No "etc.", "other cases", "and so on" |
| 5 |
Exception flows covered |
Every feature has ≥2 exception scenarios |
| 6 |
Acceptance testable |
Given-When-Then format used |
| 7 |
Analytics complete |
All core action paths have events |
| 8 |
No tech implementation |
PRD describes "what", not "how to build" |
| 9 |
Priorities assigned |
Every module tagged P0/P1/P2 |
| 10 |
Schedule grounded |
Estimate covers design + dev + test + integration |
Common PRD anti-patterns
| Anti-pattern |
What it looks like |
Fix |
| Gold-plating |
50 features in v1 |
Split MVP / v1.1 / v2; v1 keeps 3-5 core features |
| Fake requirement |
"Users might want…" with no data |
Tag every requirement with source: feedback / analytics / competitor / hypothesis |
| Design overreach |
PRD specifies button color, font size, layout |
Describe info hierarchy and interaction logic only; visuals → designer |
| Tech overreach |
PRD specifies Redis, MySQL, framework choice |
Describe perf requirements (e.g. "<2s") only; implementation → engineering |
| Rule blackhole |
"Per business rules" without listing them |
Enumerate every rule's trigger, logic, edge values |
Red lines
- PRD does not specify implementation — no DB type, language, framework
- PRD does not replace design specs — no detailed UI layout, colors, sizes
- No fabricated data — for any business data the user didn't provide (DAU, conversion), write
[TBD]
- No missing roles — for multi-role features, every role's perspective must be covered
When input is incomplete
- Just "write a PRD" with no requirement → ask for the feature description with an example
- One-sentence requirement ("build a marketplace") → produce an outline-level PRD framework, mark
[needs input] on critical missing pieces
- Requirement too large → suggest splitting into multiple PRDs; agree on MVP scope first
Related skills
/pm-user-stories — after PRD review, break features into developable User Stories
/pm-competitive — run before PRD to gather competitor references
/pm-prioritize — when multiple requirements compete, rank with RICE first
1---2name: pm-prd-23description: Генерирует структурированный PRD (Product Requirements Document) с шаблонами под тип продукта (B2C / B2B / внутренний инструмент / платформа) — фон, цели, детальный дизайн фич, acceptance criteria в Given-When-Then, аналитика и 10-пунктовый чеклист качества. User-invoked only — do NOT auto-trigger. Triggers on /pm-prd, "сделай PRD", "напиши PRD", "продуктовые требования", "make a PRD", "write a PRD", "draft requirements doc".4---5
6# pm-prd — Generate a structured PRD
7
8
9Part of the Personal Corp framework — running a one-person business through AI agents.
10Generate a delivery-ready Product Requirements Document from a feature description. Branches by product type — B2C, B2B, internal tool, platform — with each type emphasizing different modules. Includes a 10-item quality self-check that runs after generation.
11
12## Inputs
13
14| Field | Required | Notes |
15|---|---|---|
16| Feature description | yes | What the feature does and what problem it solves; one sentence minimum |
17| Target user | no | Who it's for; inferred from the feature if not given |
18| Business goals | no | Expected business metrics (DAU, conversion, revenue, etc.) |
19| Product type | no | B2C / B2B / internal / platform; auto-detected if not given |
20| Constraints | no | Tech limits, deadlines, resource limits |
21| Depth | no | Outline (for review) / detailed (for development); default detailed |
22
23If the user only says "write a PRD" with no feature, ask for the feature description. If they give feature + user + goals, go straight to generation.
24
25## Step 1 — Parse input and branch by product type
26
27| Product type | PRD emphasis | Key differentiators |
28|---|---|---|
29| **B2C** | UX flow, growth metrics, A/B test plan | Heavy on interaction, heavy on data, write user journeys |
30| **B2B** | Permission model, multi-tenancy, SLA, integration APIs | Heavy on completeness, security, API contracts |
31| **Internal tool** | Operational efficiency, integration with existing systems, training cost | Heavy on practicality, light on visuals |
32| **Platform** | Multi-role interaction, supply-demand matching, ecosystem rules | Heavy on role separation, rules engine |
33
34**Auto-detection rules:** mentions of "user / member / loyalty / marketplace" → B2C; "enterprise / SaaS / CRM / admin panel" → B2B; "internal / management system / ticketing" → internal tool; "platform / marketplace / two-sided" → platform.
35
36**B2B PRDs must additionally cover:**
37- Permission matrix (role × feature × data scope)
38- Multi-tenant data isolation approach
39- Integration interfaces with the customer's existing systems
40
41**Platform PRDs must additionally cover:**
42- Independent feature view per role (supplier / consumer / platform ops)
43- Matching rules and ranking strategy
44- Commission / take-rate / settlement rules
45
46## Step 2 — Structured requirement breakdown
47
48**Three-method feature decomposition:**
49
501. **User journey:** trace the user's path from entry to goal completion; each node = one feature point
512. **Role split:** list every role involved (end user, admin, ops); each role's actions = one feature module
523. **CRUD:** for each core data object, walk through create / read / update / delete
53
54For every feature module, fill:
55
56- Feature description (one sentence)
57- User story (As a {role}, I want to {action}, so that {value})
58- Business rules (exhaustive — no "etc." or "other cases")
59- Interaction (entry point → steps → success/failure feedback)
60- Exception handling (timeouts, data anomalies, permission denied, edge cases)
61
62## Step 3 — Generate the PRD
63
64Use this template. Comments next to each placeholder describe the fill logic.
65
66```markdown
67# PRD: {feature name}
68
69**Version:** v1.0
70**Author:** {PM name, or [TBD]}
71**Date:** {today}
72**Status:** Draft
73
74---
75
76## 1. Background and Goals
77
78### 1.1 Background
79<!-- Answer three questions: why now? what happens if we don't? what changes if we do? -->
80{problem state + user pain + why this is the right moment}
81
82### 1.2 Target users
83<!-- Use [role] + [trait] + [scenario]. Never write "all users". -->
84| User role | Trait | Core need | Use scenario |
85|---|---|---|---|
86
87### 1.3 Business goals and success metrics
88<!-- Each goal must be SMART — specific number + deadline. -->
89| Goal | Metric | Target | Tracking method |
90|---|---|---|---|
91
92## 2. Requirement Overview
93<!-- One paragraph, 30 words max, summarizing the core requirement. -->
94
95## 3. Detailed Feature Design
96
97### 3.1 {Module 1}
98**Description:** {what it does}
99**User story:** As a {role}, I want {action}, so that {value}
100**Priority:** P0 (must launch) / P1 (strongly recommended) / P2 (nice-to-have)
101
102**Business rules:**
1031. {rule 1 — clear trigger condition + processing logic}
1042. {rule 2}
105
106**Interaction flow:**
107<!-- Start at entry point, end at task completion, cover happy path + exception branches. -->
1081. User enters from {entry}
1092. {steps}
1103. Success: {feedback}
1114. Failure: {error message and handling}
112
113**Exception handling:**
114| Scenario | Handling | User-facing message |
115|---|---|---|
116
117(repeat format for each module)
118
119## 4. Non-Functional Requirements
120<!-- B2C → emphasize performance and experience; B2B → emphasize security and availability. -->
121| Category | Requirement | Acceptance criterion |
122|---|---|---|
123| Performance | {e.g. page load time} | {e.g. < 2s} |
124| Security | {e.g. data encryption} | {e.g. TLS 1.2+ in transit} |
125| Compatibility | {browsers / devices} | {Chrome, Safari, mobile webview} |
126
127## 5. Data Requirements (Analytics Events)
128<!-- List every event to capture. Format: event name + trigger + attributes + purpose. -->
129| Event | Trigger | Key attributes | Purpose |
130|---|---|---|---|
131
132## 6. Acceptance Criteria
133<!-- At least 3 ACs per feature module, in Given-When-Then format. -->
134| ID | Scenario | Given | When | Then |
135|---|---|---|---|---|
136
137## 7. Schedule
138<!-- Break into design / dev / integration / launch. -->
139| Phase | Estimate | Dependency | Risk |
140|---|---|---|---|
141
142## 8. Risks and Dependencies
143| Risk | Probability | Impact | Mitigation |
144|---|---|---|---|
145
146## Appendix
147- Related documents
148- Competitor references
149- Design files
150```
151
152## Step 4 — Quality self-check
153
154Run this 10-point checklist after generating. Flag any failed item with a fix suggestion.
155
156| # | Check | Pass criterion |
157|---|---|---|
158| 1 | Background not vague | Answers "why do this?" not just "we need to do this" |
159| 2 | Goals quantified | At least one numeric success metric |
160| 3 | Personas concrete | No "all users" / "everyone" |
161| 4 | Business rules exhaustive | No "etc.", "other cases", "and so on" |
162| 5 | Exception flows covered | Every feature has ≥2 exception scenarios |
163| 6 | Acceptance testable | Given-When-Then format used |
164| 7 | Analytics complete | All core action paths have events |
165| 8 | No tech implementation | PRD describes "what", not "how to build" |
166| 9 | Priorities assigned | Every module tagged P0/P1/P2 |
167| 10 | Schedule grounded | Estimate covers design + dev + test + integration |
168
169## Common PRD anti-patterns
170
171| Anti-pattern | What it looks like | Fix |
172|---|---|---|
173| **Gold-plating** | 50 features in v1 | Split MVP / v1.1 / v2; v1 keeps 3-5 core features |
174| **Fake requirement** | "Users might want…" with no data | Tag every requirement with source: feedback / analytics / competitor / hypothesis |
175| **Design overreach** | PRD specifies button color, font size, layout | Describe info hierarchy and interaction logic only; visuals → designer |
176| **Tech overreach** | PRD specifies Redis, MySQL, framework choice | Describe perf requirements (e.g. "<2s") only; implementation → engineering |
177| **Rule blackhole** | "Per business rules" without listing them | Enumerate every rule's trigger, logic, edge values |
178
179## Red lines
180
1811. **PRD does not specify implementation** — no DB type, language, framework
1822. **PRD does not replace design specs** — no detailed UI layout, colors, sizes
1833. **No fabricated data** — for any business data the user didn't provide (DAU, conversion), write `[TBD]`
1844. **No missing roles** — for multi-role features, every role's perspective must be covered
185
186## When input is incomplete
187
188- **Just "write a PRD"** with no requirement → ask for the feature description with an example
189- **One-sentence requirement** ("build a marketplace") → produce an outline-level PRD framework, mark `[needs input]` on critical missing pieces
190- **Requirement too large** → suggest splitting into multiple PRDs; agree on MVP scope first
191
192## Related skills
193
194- `/pm-user-stories` — after PRD review, break features into developable User Stories
195- `/pm-competitive` — run before PRD to gather competitor references
196- `/pm-prioritize` — when multiple requirements compete, rank with RICE first
197