prd-to-plan

Originally frommattpocock/skills
Installation
SKILL.md

PRD to Plan

Break a PRD into a phased implementation plan using vertical slices (tracer bullets). Output is a Markdown file in ./docs/<feature-name>/plan.md.

Process

1. Confirm the PRD is in context

The PRD should already be in the conversation. If it isn't, ask the user to paste it or point you to the file.

2. Explore the codebase

If you have not already explored the codebase, do so to understand the current architecture, existing patterns, and integration layers.

3. Identify durable architectural decisions

Before slicing, identify high-level decisions that are unlikely to change throughout implementation:

  • Route structures / URL patterns
  • Database schema shape
  • Key data models
  • Authentication / authorization approach
  • Third-party service boundaries

These go in the plan header so every phase can reference them.

4. Draft vertical slices

Break the PRD into tracer bullet phases. Each phase is a thin vertical slice that cuts through ALL integration layers end-to-end, NOT a horizontal slice of one layer.

5. Quiz the user

Present the proposed breakdown as a numbered list. For each phase show:

  • Title: short descriptive name
  • User stories covered: which user stories from the PRD this addresses

Ask the user:

  • Does the granularity feel right? (too coarse / too fine)
  • Should any phases be merged or split further?

Iterate until the user approves the breakdown.

When invoked by afk (no user interaction): Skip the quiz. Use your best judgment on granularity and write the plan directly.

6. Write the plan file

Create ./docs/<feature-name>/ if it doesn't exist. Write the plan as a Markdown file named after the feature (e.g. ./docs/meta-direct-whatsapp/plan.md). Use the template below.

Task formatting (important for execution)

Each phase's "What to build" section controls how ralph executes the phase:

  • Numbered list (1., 2., 3.) — each item becomes a separate implementation task with its own commit. This is the preferred format for phases with multiple deliverables.
  • Bullet list (-, *) — each bullet becomes a separate task.
  • Single paragraph — the entire phase runs as one task.

Use numbered items whenever a phase has more than one logical deliverable. This gives ralph focused, atomic implementation sessions and granular commit history.

Source PRD: <relative path to PRD.md, e.g. docs/feature/PRD.md>

Architectural decisions

Durable decisions that apply across all phases:

  • Routes: ...
  • Schema: ...
  • Key models: ...
  • (add/remove sections as appropriate)

Phase 1:

User stories:

What to build

  1. First task — describe the first deliverable for this slice
  2. Second task — describe the next deliverable
  3. Third task — describe the next deliverable

Acceptance criteria

  • Criterion 1
  • Criterion 2
  • Criterion 3

Phase 2:

User stories:

What to build

  1. First task — ...
  2. Second task — ...

Acceptance criteria

  • ...
Related skills

More from tahajemmali/skills

Installs
76
First Seen
Apr 11, 2026