prd-to-issues
PRD to Issues
Break a PRD into independently-grabbable implementation issues using vertical slices (tracer bullets).
Process
1. Locate the PRD
Ask the user where the PRD lives. It might be a local file path, a GitHub wiki page, a Notion or Confluence doc, or already in the conversation. The user may also provide links to Linear issues/projects or Figma designs for additional context.
Read or fetch the PRD from wherever it lives.
2. Gather external context
If the user provided references to external tools, use the available MCP tools to pull in additional context:
- Linear: The user may provide ticket codes (e.g.,
EO-1234) or URLs. Fetch related issues, project details, or initiative context to understand scope, dependencies, and prior decisions. - Figma: The user may provide a Figma URL. Fetch design context and screenshots to understand UI requirements and component boundaries for each slice.
- Notion: The user may provide page titles or URLs. Search Notion by title if no URL is given. Fetch documents for supplementary specs, notes, or research.
Use this context to inform how you break the PRD into slices. If no external references are provided, skip this step.
3. Explore the codebase (optional)
If you have not already explored the codebase, do so to understand the current state of the code.
4. Draft vertical slices
Break the PRD into tracer bullet issues. Each issue is a thin vertical slice that cuts through ALL integration layers end-to-end, NOT a horizontal slice of one layer.
Slices may be 'HITL' or 'AFK'. HITL slices require human interaction, such as an architectural decision or a design review. AFK slices can be implemented and merged without human interaction. Prefer AFK over HITL where possible.
5. Quiz the user
Present the proposed breakdown as a numbered list. For each slice, show:
- Title: short descriptive name
- Type: HITL / AFK
- Blocked by: which other slices (if any) must complete first
- User stories covered: which user stories from the PRD this addresses
Ask the user:
- Does the granularity feel right? (too coarse / too fine)
- Are the dependency relationships correct?
- Should any slices be merged or split further?
- Are the correct slices marked as HITL and AFK?
Iterate until the user approves the breakdown.
6. Create the issue documents
Ask the user where they'd like these saved. Common destinations:
- GitHub Issues: create each one directly with
gh issue create - Local files: save markdown files to a directory of the user's choice
- Notion / Confluence: create pages via MCP tools if available
- Linear: create issues via Linear MCP tools if available
Create issues in dependency order (blockers first) so you can reference each issue in the "Blocked by" field.
Use the issue body template below for each issue.
<link or reference to the source PRD>
What to build
A concise description of this vertical slice. Describe the end-to-end behavior, not layer-by-layer implementation. Reference specific sections of the parent PRD rather than duplicating content.
Acceptance criteria
- Criterion 1
- Criterion 2
- Criterion 3
Blocked by
- Blocked by
<issue-filename>(if any)
Or "None - can start immediately" if no blockers.
User stories addressed
Reference by number from the parent PRD:
- User story 3
- User story 7
Do NOT modify the parent PRD document.
More from evans-sam/skills
grill-me
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
15write-a-prd
Create a PRD through user interview, codebase exploration, and module design, then save as a local markdown document. Use when user wants to write a PRD, create a product requirements document, or plan a new feature.
12request-refactor-plan
Create a detailed refactor plan with tiny commits via user interview, then save it as a local markdown RFC document. Use when user wants to plan a refactor, create a refactoring RFC, or break a refactor into safe incremental steps.
11git-guardrails-claude-code
Set up Claude Code hooks to block dangerous git and gh CLI commands before they execute. Use when user wants to prevent destructive git operations, block dangerous GitHub CLI actions (repo delete, pr merge, secret management, API mutations), or add git/gh safety hooks to Claude Code.
11tdd
Test-driven development with red-green-refactor loop. Use when user wants to build features or fix bugs using TDD, mentions "red-green-refactor", wants integration tests, or asks for test-first development.
10prd-to-plan
Turn a PRD into a multi-phase implementation plan using tracer-bullet vertical slices, saved as a local Markdown file in ./plans/. Use when user wants to break down a PRD, create an implementation plan, plan phases from a PRD, or mentions "tracer bullets".
10