product-requirements-builder
npx machina-cli add skill mouchegmouradian/claude-code-skills/product-requirements-builder --openclawBuilding Product Requirements
Help users create professional, implementation-ready product requirements. The output is a PRD (the "what" and "why") plus a set of focused RFCs (the "how"), designed so that a coding agent can pick up any single RFC and implement it with minimal hallucination.
Why this structure matters
A PRD without RFCs is too vague for implementation. RFCs without a PRD lack product context and user grounding. The combination gives coding agents:
- Focused context — each RFC addresses one implementation area
- Clear boundaries — explicit scope prevents agents from drifting
- Traceability — every technical decision links back to a user need
- Reduced errors — smaller, well-defined documents produce better code
Workflow overview
Copy this checklist and track progress:
Requirements Progress:
- [ ] Phase 1: Discovery — understand the product vision
- [ ] Phase 2: PRD Draft — write the product requirements document
- [ ] Phase 3: RFC Breakdown — identify implementation areas
- [ ] Phase 4: RFC Drafting — write each RFC
- [ ] Phase 5: Review — validate completeness and consistency
Phase 1: Discovery
Interview the user to understand their product. Don't skip this — even a brief conversation dramatically improves the output. Adapt your questions to what the user has already shared; don't re-ask what's obvious from context.
Core questions (ask what's missing, skip what's known):
- What problem are you solving? Who has this problem, and how painful is it?
- Who are your users? What are their goals, frustrations, and current workarounds?
- What does success look like? Measurable criteria — time saved, error rates, adoption targets.
- What's the MVP scope? What's in for v1, what's explicitly out?
- Technical constraints? Platform (web/mobile/both), tech stack preferences, third-party services, offline needs.
- What exists already? Any prior art, mockups, codebases, or competitor references?
Capture answers in your working memory. You'll weave them into the PRD.
Phase 2: PRD Draft
Use the PRD template. See templates/prd-template.md for the full template with section guidance.
Key sections (every PRD needs these):
- Overview — project description, goals/objectives, success criteria
- Problem Statement — the pain, the business context, user pain points
- User Requirements — personas, job stories (not user stories), functional requirements broken into MVP vs. future
- Technical Requirements — architecture overview, tech stack, API specs, data models, security, performance targets
- Design Requirements — interaction patterns, accessibility, platform-specific considerations
- Success Metrics — quantitative measures tied to goals
- Timeline — milestones and phases
- Features Overview — summary table linking each feature to its RFC
- Glossary — define every domain term; this prevents agent confusion
Writing principles:
- Use job stories ("When [situation], I want to [motivation], so I can [outcome]") rather than user stories. They focus on context and motivation rather than role.
- Be specific about what's in scope and what's not. Ambiguity is where coding agents hallucinate.
- Include edge cases in functional requirements. If you can think of it, write it down.
- Define data models early — field names, types, relationships, constraints. These are the foundation everything else builds on.
Phase 3: RFC Breakdown
Decompose the product into discrete, implementable RFCs. Each RFC should:
- Be implementable independently (or with explicit dependencies noted)
- Have clear inputs and outputs
- Map to a logical area of the codebase
- Be small enough that a coding agent can hold the full context
Common decomposition pattern:
| RFC | Area | Typical Content |
|---|---|---|
| RFC-000 | Architecture Overview | User flows, state management, service architecture, performance targets |
| RFC-001 | Database & Data Models | Schema, ORM models, migrations, sync strategy, RLS policies |
| RFC-002 | Core Feature A | The primary user-facing capability |
| RFC-003 | Core Feature B | Secondary capability |
| RFC-004 | Integration / API | External service integration, edge functions |
| RFC-005 | UI Components | Screens, navigation, state management, accessibility |
Adapt this to the project. A simple web app might need 3 RFCs. A cross-platform mobile app might need 6+. Always start with RFC-000 as the architecture overview that all other RFCs reference.
Phase 4: RFC Drafting
Use the RFC template. See templates/rfc-template.md for the full template with section guidance.
Each RFC must include:
- Overview — what this RFC covers, one paragraph
- Goals — numbered list, specific and testable
- Technical Design — architecture, data flow, code structure
- Implementation Details — platform-specific code samples, file paths, configuration
- Edge Cases — every failure mode you can anticipate, with handling strategy
- Testing Strategy — unit tests, integration tests, manual testing checklist
- Security Considerations — auth, data privacy, permissions
- Dependencies — libraries, APIs, other RFCs this depends on
- Related Documents — links back to PRD and sibling RFCs
Writing principles for RFCs:
- Include code samples in the language/framework of the project. Not pseudocode — actual compilable/runnable snippets.
- Specify file paths where code should live (e.g.,
src/database/schema.ts). - List explicit exclusions — "Do NOT implement X (that's RFC-003)". This prevents coding agents from scope-creeping.
- Use consistent naming across all RFCs. If the PRD calls it "Idea", every RFC calls it "Idea" (not "Note" or "Entry").
Phase 5: Review
Before finalizing, validate:
- Every job story in the PRD maps to at least one RFC
- Every data model field is consistent across PRD and all RFCs
- No two RFCs overlap in scope
- Each RFC has explicit "do not implement" boundaries
- Glossary terms are used consistently everywhere
- Edge cases are documented (not deferred)
- Code samples match the declared tech stack
- Performance targets are stated with acceptable ranges
Prompt patterns for coding agents
After the PRD and RFCs are complete, the user can feed individual RFCs to a coding agent. Recommend this pattern:
Based on RFC-001: Database Schema & Sync
Please implement the database schema and TypeScript interfaces.
Files to create:
- src/database/schema.ts
- src/models/Idea.ts
- src/models/Category.ts
- src/database/migrations/001_initial.sql
Follow [framework] best practices.
Do NOT implement:
- API sync logic (that's RFC-006)
- UI components (that's RFC-005)
This pattern gives the agent focused context, clear deliverables, and explicit boundaries.
Adapting to project scale
Small project (landing page, simple tool, single-platform app):
- Combine PRD into a shorter format — skip personas if there's only one user type
- 2-3 RFCs may be sufficient
- Architecture overview can be a section within the PRD rather than a separate RFC
Medium project (multi-feature app, API + frontend):
- Full PRD with all sections
- 4-6 RFCs
- Separate architecture RFC (RFC-000)
Large project (cross-platform, multiple integrations, team of developers):
- Full PRD, possibly with appendices
- 6+ RFCs, potentially with sub-RFCs for complex areas
- Consider a "RFC-000: Architecture" that serves as the index document
- Add a dependency graph showing RFC implementation order
Reference files
- templates/prd-template.md — Full PRD template with section-by-section guidance
- templates/rfc-template.md — Full RFC template with section-by-section guidance
- references/job-stories-guide.md — How to write effective job stories
- references/example-prompt-patterns.md — Prompt patterns for feeding RFCs to coding agents
Source
git clone https://github.com/mouchegmouradian/claude-code-skills/blob/main/skills/product-requirements-builder/SKILL.mdView on GitHub Overview
This skill builds professional, implementation-ready product requirements. It outputs a PRD (the what and why) plus focused RFCs (the how), designed so a coding agent can implement with minimal hallucination. It guides structured discovery from problem statements to architecture, data models, and implementation plans.
How This Skill Works
Follow a phased workflow: Phase 1 Discovery to capture problem, users, success metrics; Phase 2 PRD Draft using the provided template; Phase 3 RFC Breakdown to identify implementation areas; Phase 4 RFC Drafting; Phase 5 Review for completeness and consistency. Emphasizes job stories, explicit scope, and traceability by linking each RFC to product needs.
When to Use It
- When you’re planning a new product or feature and need a complete PRD plus RFCs.
- When you want to convert product requirements into concrete RFCs for engineers.
- When you need to break a project into implementable tasks with clear boundaries.
- When you’re preparing documentation for AI-assisted coding (e.g., Claude Code, Cursor).
- When you want structured discovery from problem statement to architecture, data models, and implementation RFCs.
Quick Start
- Step 1: Run Phase 1 Discovery by interviewing stakeholders and capturing core questions (problem, users, success, MVP scope, constraints, existing assets).
- Step 2: Draft the PRD using the templates: include Overview, Problem Statement, User Requirements, Technical Requirements, Design, Metrics, Timeline, Features Overview, and Glossary.
- Step 3: Create RFCs for each implementation area, link them to PRD features, then perform Phase 5 Review for completeness.
Best Practices
- Start with Phase 1 Discovery and use the core questions to surface missing details.
- Use the PRD template structure (Overview, Problem, User Requirements, Technical Requirements, etc.).
- Write job stories (When, I want to, so I can) to keep context and motivation explicit.
- Link every RFC to a corresponding feature in the PRD for traceability.
- Maintain a glossary and explicit boundaries to prevent scope drift and hallucination.
Example Use Cases
- Define PRD and RFCs for a SaaS onboarding flow with user goals and technical integration points.
- Plan a feature like in-app messaging, producing an architecture RFC and data model definitions.
- Draft RFCs for a data-model change (events/telemetry) tied to product goals in the PRD.
- Prepare documentation for an AI-assisted coding integration, mapping user needs to implementation steps.
- Break down a monolith feature into microservices with RFCs for interfaces, deployment, and data ownership.