pdr-intake
Trigger: PDR, PRD, pdr-intake, early idea, I have an idea, mature idea. Converts ambiguous ideas into minimum PDRs without triggering SDD.
SKILL.mdskills/workflow/pdr-intake/SKILL.md
GitHubPDR Intake
Activation Contract
Use this skill when the user opens with an early product idea and wants to mature it or close open questions. This skill does not start an SDD cycle.
Triggers (aligned with the description):
- Artifact references:
PDR,PRD,pdr-intake. - Conversational phrases: "I have an idea", "early idea".
- Intent verbs: "mature idea".
Do not use this skill when the scenario is different:
- The user already brings a spec or formal PRD → go to
sdd-spec. - The conversation is open technical exploration → go to
sdd-explore. - The idea has already gone through SDD and is back for review → go to
sdd-verify.
The final result is a minimum PDR persisted at docs/prd/{module}/{area}/{slug}-pdr.md and an
inline executive summary.
Hard Rules
Structure and scope
- Use
assets/minimal-pdr-template.mdas the base structure. - Do not turn the PDR into technical design, detailed spec, or implementation plan.
- If problem, objective, or scope are missing, ask before completing the PDR.
- If several critical data points are missing, ask one question per turn, starting with the real problem.
- Mark open questions explicitly; do not invent decisions or requirements.
Persistence and delivery
- The skill always creates the PDR file; there is no inline-only flow. On completion, it also returns an inline executive summary.
- Default file path:
docs/prd/{module}/{area}/{slug}-pdr.md. If the user does not specifymoduleorarea, ask before creating. - Create the directory
docs/prd/{module}/{area}/withmkdir -p; if it fails for permissions, return a clear message and do not write the file. - If a file already exists at the destination path, read it and compare intent with the new idea before writing. If the intent matches, ask the user: overwrite, minor update, or major change? If the intent is different, derive a new slug (do not overwrite the existing PDR).
- There is no formal escape hatch to discard a draft; if the user does not want to keep it, they delete it manually.
Lifecycle and versioning
status: draftwhile the PDR has not been approved by the user.versionstays fixed duringdraft. Only on user approval, the skill analyzes whether the change is minor (1.0→1.1) or major (1.0→2.0) and bumps the frontmatter.- Versioning lives in the frontmatter, never in the file name.
Frontmatter
- The
ownerfield must indicate the module or workspace responsible for the PDR, for examplepackages-ui,apps-web, orapps-cli. - The
{slug}must be kebab-case, use lowercase ASCII, describe the change or problem, and avoid dates unless the user explicitly asks. - The
{module}and{area}segments must reuse existing names when applicable, for exampleapps-dash/pages,apps-dash/components, orpackages-ui/components.
Language
- PDR file content (the markdown document at
docs/prd/{module}/{area}/{slug}-pdr.md) defaults to neutral and professional English regardless of the conversation language or the agent's active persona. - If the user explicitly requests another language, use it. Spanish is the most common case but any language is acceptable on explicit request.
- All non-English output must be neutral and professional. Do not introduce regional variants (voseo, slang, dialect-specific grammar) unless the user explicitly asks for them.
Decision Gates
| Situation | Action |
|---|---|
| The idea has clear problem, objective, and scope | Create the minimum PDR as a file + inline executive summary |
| Critical data is missing | Ask one question at a time, starting with the real problem |
module or area is missing for the path |
Ask before creating the file |
| A PDR already exists at the path and intent matches | Ask: overwrite, minor update, or major change? |
| A PDR already exists and intent is different | Derive a new slug; do not overwrite the existing PDR |
mkdir -p fails for permissions |
Return a clear message and do not write the file |
| Premature technical design is present | Convert it into implementation notes |
| Several features are mixed together | Recommend splitting before creating the PDR |
| The user approves the PDR | Analyze change magnitude and bump version (minor 1.0 → 1.1, major 1.0 → 2.0) |
| The user asks to start SDD when finished | Finish the PDR first and ask for explicit confirmation to switch to another flow |
Execution Steps
- Read
assets/minimal-pdr-template.md. - Extract intent, problem, objective, scope, key concepts, implementation notes, and acceptance criteria from the user's idea.
- If
moduleorareais missing, ask before continuing. - Build the first coherent draft of the PDR using the template.
- Create the file at
docs/prd/{module}/{area}/{slug}-pdr.mdwithmkdir -pfor parent directories. - Update the file on each clarification round, keeping
versionfixed whilestatus: draft. - If a file already exists at the destination path, read it and compare intent before writing (see Decision Gates).
- On user approval, analyze whether the change is minor or major and bump
versionin the frontmatter. - At closure, return an inline executive summary with: title, problem, objective, scope (in/out), acceptance criteria, open questions + path, status, and version.
- Stop after delivering the PDR.
Output Contract
Return:
- Path of the file created or updated under
docs/prd/{module}/{area}/{slug}-pdr.md. - Inline executive summary: title, problem, objective, scope (in/out), acceptance criteria, open questions.
- Current
statusandversionfrom the frontmatter. - Explicit recommendation: approve, adjust, or split.
- Confirmation that no SDD cycle was started.
Final Verification Checklist
Before returning the PDR, verify:
- The real problem is explicit.
- The objective fits in one sentence.
- The scope includes
In scopeandOut of scope. - Acceptance criteria are verifiable.
- Open questions are marked explicitly.
- No premature technical design.
- The file exists at
docs/prd/{module}/{area}/{slug}-pdr.mdand parent directories were created withmkdir -p. - The frontmatter includes
owner,module,area,slug,status, andversion. - If a previous file existed, it was read, intent was compared, and the correct policy was applied.
- Status remains
draftunless there is explicit human approval. -
versionstays fixed duringdraftand only bumps on approval. - The inline executive summary includes the relevant points and references the file path.
- No proposal, spec, design, tasks, apply, or SDD preflight was started.
References
assets/minimal-pdr-template.md— base template to build the minimum PDR.