prd
- Repo stars 38
- License MIT
- Author repo builder-skills
Product Requirements Document
Write a PRD that answers two questions clearly: what are we building and why does it matter. Everything else is supporting detail.
Step 1: Gather Context
Before writing anything, nail down these three inputs. If the user hasn't provided them, ask.
| Input | Question | Watch out for |
|---|---|---|
| Problem | What pain exists today? Who feels it? | Jumping to solutions before the problem is sharp |
| Audience | Who specifically benefits? What's their situation? | "Everyone" is not an audience |
| Current state | How do people solve this now? What's broken? | Assuming nothing exists today |
If a JTBD analysis, research, or prior conversations exist, pull from them. Don't invent context.
Step 2: Write the PRD
Use this structure. Every section earns its place — skip a section only if it genuinely doesn't apply.
# PRD: [Feature / Product Name]
## Problem Statement
What's broken, missing, or painful. Ground it in real user behavior.
Who has this problem. How often. How bad.
## Goals & Non-Goals
### Goals
- [ ] Measurable outcome this work achieves
- [ ] Another measurable outcome
### Non-Goals
- What this work deliberately does NOT try to solve (and why)
## User Stories / Job Stories
Use job story format when possible:
- When [situation], I want to [motivation], so I can [outcome]
Keep to 3-8 stories. If you have more, the scope is too big.
## Functional Requirements
What the system must do. Number them for traceability.
FR-1: [Requirement]
FR-2: [Requirement]
## Non-Functional Requirements
Performance, security, accessibility, scale, compatibility.
NFR-1: [Requirement]
NFR-2: [Requirement]
## Success Metrics
How we'll know this worked. Be specific:
- Metric + target + timeframe
- e.g., "Reduce average onboarding time from 12 min to under 5 min within 30 days of launch"
## Open Questions
What's unresolved. Who owns answering it. When it needs an answer by.
| # | Question | Owner | Deadline |
|---|----------|-------|----------|
## Out of Scope
What's explicitly excluded from this effort. Prevents scope creep later.
Quality Checks
Run these before delivering the PRD:
- Every requirement is testable. If you can't write a pass/fail check for it, rewrite it. "Fast" is not testable. "Loads in under 2 seconds on 3G" is.
- No solutions hiding as requirements. "Use Redis for caching" is a solution. "Cache frequently accessed data with sub-100ms retrieval" is a requirement.
- Scope is realistic. If the PRD has 30+ requirements, it's a roadmap pretending to be a PRD. Split it.
- Goals are measurable. Each goal should have a number attached or a clear yes/no test.
- Non-goals are deliberate. They prevent future arguments about what "should have been included."
- Open questions have owners. An open question without an owner is a stalled decision.
Tone and Format
- Write requirements as imperative statements: "The system shall..." or "Users can..."
- Use numbered identifiers (FR-1, NFR-1) so engineers and designers can reference them
- Keep the language concrete. Replace "intuitive" with observable behavior. Replace "scalable" with specific numbers.
- One requirement per line. Compound requirements hide complexity.
When the PRD Is Done
Hand it off with three things clear:
- What's decided — requirements that are locked
- What's open — questions that still need answers
- What's next — who reviews, who builds, what's the timeline
- Fluxly category
- Engineering
- Author-declared agents
- No explicit declaration found; this is not inferred or tested compatibility
- Static check
- 94 / 100 · heuristic scan, not runtime safety proof
- Author / version / license
- @kazdenc · MIT
- Fluxly token estimate
- Lean
- Fluxly setup estimate
- Plug-and-play
- External API key
- No requirement detected
- Detected OS requirements
- Unspecified
- Runtime requirements
- Unspecified
- Detected file/system behavior
-
- Read-only
- Write / modify
- Detected network behavior
- Local-only
- Install commands
- None (reference only)
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。
The current SKILL.md does not define a fixed output example. Before writing anything, nail down these three inputs. If the user hasn't provided them, ask. Input · Question · Watch out for Problem · What pain exists today? Who feels it? · Jumping to solutions before the problem is sharp
Use this structure. Every section earns its place — skip a section only if it genuinely doesn't apply.
# Product Requirements Document
Write a PRD that answers two questions clearly: **what are we building** and **why does it matter**. Everything else is supporting detail.
## Step 1: Gather Context
Before writing anything, nail down these three inputs. If the user hasn't provided them, ask.
| Input | Question | Watch out for |
|-------|----------|---------------|
| **Problem** | What pain exists today? Who feels it? | Jumping to solutions before the problem is sharp |
| **Audience** | Who specifically benefits? What's their situation? | "Everyone" is not an audience |
| **Current state** | How do people solve this now? What's broken? | Assuming nothing exists today |
If a JTBD analysis, research, or prior conversations exist, pull from them. Don't invent context.
## Step 2: Write the PRD
Use this structure. Every section earns its place — skip a section only if it genuinely doesn't apply.
```
# PRD: [Feature / Product Name]
## Problem Statement
What's broken, missing, or painful. Ground it in real user behavior.
Who has this problem. How often. How bad.
## Goals & Non-Goals
### Goals
- [ ] Measurable outcome this work achieves
- [ ] Another measurable outcome
### Non-Goals
- What this work deliberately does NOT try to solve (and why)
## User Stories / Job Stories
Use job story format when possible:
- When [situation], I want to [motivation], so I can [outcome]
Keep to 3-8 stories. If you have more, the scope is too big.
## Functional Requirements
What the system must do. Number them for traceability.
FR-1: [Requirement]
FR-2: [Requirement]
## Non-Functional Requirements
Performance, security, accessibility, scale, compatibility.
NFR-1: [Requirement]
NFR-2: [Requirement]
## Success Metrics
How we'll know this worked. Be specific:
… Author text anchors workflow facts; Fluxly only indexes current sections, terms, files, and commands.
sections -> Step 1: Gather Context → Step 2: Write the PRD → Problem Statement → Goals & Non-Goals → Goals → Non-Goals
terms -> what are we building · why does it matter · Problem · Audience · Current state · Every requirement is testable. · No solutions hiding as requirements. · Scope is realistic.
files/cmd -> pass/fail · yes/no
body sha256 -> 650f15942a4a
Decide Fit First
Design Intent
How To Use It
Boundaries And Review