Генерирует структурированный 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".
npx skills add https://github.com/serejaris/personal-corp-skills --skill pm-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.
| 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.
| 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:
Platform PRDs must additionally cover:
Three-method feature decomposition:
For every feature module, fill:
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
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 |
| 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 |
[TBD][needs input] on critical missing pieces/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 firstComprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks
Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.
Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.
Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.
Use this skill any time a .pptx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates, layouts, speaker notes, or comments. Trigger whenever the user mentions \"deck,\" \"slides,\" \"presentation,\" or references a .pptx filename, regardless of what they plan to do with the content afterward. If a .pptx file needs to be opened, created, or touched, use this skill.
Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax. Use when working with .md files in Obsidian, or when the user mentions wikilinks, callouts, frontmatter, tags, embeds, or Obsidian notes.
Take serejaris/pm-prd from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.