project-write-prd
Turn an idea into a product requirements doc (PRD) for a project
SKILL.md.claude/skills/project.write_prd/SKILL.md
GitHubGoal
- Given an idea, write
docs/01-prd.md: what the product must and must not do - Do not design the solution and do not write code
Input
<IDEA>: an idea file (e.g.,research/ideas/<name>.md) or a free-text description<DOCS_DIR>: the project'sdocs/dir, optional- If missing, use
docs/in the current dir
- If missing, use
Workflow
Read the Idea
- Read
<IDEA>and the files it links to (papers, related ideas, existing code) - Read the existing docs in
<DOCS_DIR>, if any, to avoid repeating them
Ask If the Idea Is Unclear
- If the goal, users, or scope is not perfectly clear, do not write the PRD. Ask the user for clarification and wait for the answers
- Do not guess a requirement to fill a section. Put each unresolved item in "Open Questions"
Write the PRD
- Create
<DOCS_DIR>/01-prd.md - Follow
.claude/skills/project.rules.mdsection "Write a PRD" and the template.claude/templates/project_prd.template.md - Follow
.claude/skills/markdown.rules.mdand.claude/skills/text.rules.md - Point to the idea file and background instead of copying them
Update the Index
- If
<DOCS_DIR>/README.mdexists, add a row for01-prd.md, per.claude/skills/project.rules.mdsection "Write an Index in docs/README.md"
Conventions
- Say in the PRD how it was generated, with this line right after the title:
- Generated by `.claude/skills/project.write_prd/SKILL.md`
Constraints
- Do not describe the solution. That is the job of
architecture.write_design - Do not commit any change
- Do not create a GitHub issue
Verification
- Every requirement is an H3
### `R<N>` (<short description>)and a test can check it - The non-goals are listed
- Every open question is numbered
- The PRD does not contain design or code
- The row for
01-prd.mdis in<DOCS_DIR>/README.md, if the file exists - The PRD says that it was generated by
.claude/skills/project.write_prd/SKILL.md