prd

Create, update, or list PRDs for features, fixes, and chores. Handles project setup (first PRD) and ongoing PRD management. Each PRD is a self-contained spec with status, priority, and acceptance criteria. Triggers: prd, new feature, write prd, plan feature, create spec, list prds, update prd, add feature.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "prd" with this command: npx skills add kelvinz/cobb/kelvinz-cobb-prd

prd

Create, update, or list PRDs. Each PRD is a self-contained feature spec with status and priority.


Guardrails

  • Do not implement code.
  • Keep features "PRD-sized": one feature = one PRD.
  • Split the feature if it spans >2 subsystems, >1 UI surface + backend, or >~1 day of work.
  • Prefer asking a small number of high-value questions; otherwise write a draft PRD with explicit assumptions.
  • Write the PRD so a junior dev (or another AI) can implement it without extra context.
  • Use plain language, explicit edge cases, and verifiable acceptance criteria.
  • Do not use Markdown tables (use checklists + bullets).
  • When asking users for decisions, always provide numbered options with low-keystroke reply formats.
  • Treat context capture as built-in.
  • If durable decisions are made, update tasks/context.md in this step.
  • Do not defer to a separate context pass.

Modes

  • Create / update (default): write or revise a single PRD.
  • List: scan tasks/ for active (non-archived) PRDs and display a summary of feature ID, name, status, and priority. No file modifications.

Workflow — Create / Update

  1. Determine intent:
    • New project (no tasks/context.md or empty): ask project-definition questions, initialise tasks/context.md with project gist, then write the first PRD.
    • New PRD (project exists): proceed to PRD creation.
    • Update existing PRD: locate the existing PRD file and edit in place.
  2. Read context:
    • If tasks/context.md exists, skim project gist, key decisions, and notes/gotchas.
    • Avoid conflicts with prior decisions.
  3. Assign feature ID:
    • Scan existing PRD files in tasks/ and tasks/archive/ for the highest f-## number.
    • New PRD gets (max existing f-##) + 1.
    • For updates, preserve the existing ID.
  4. Ask clarifying questions only when needed (numbered A/B/C/D options, up to ~7, answerable like 1A, 2C).
  5. Determine PRD file path:
    • Look for an existing active PRD matching the feature ID in tasks/ (tasks/f-##-*.md).
    • If found, use it (update in place).
    • Otherwise use tasks/f-##-<feature-slug>.md.
  6. Write or update the PRD at the chosen path using references/prd-template.md:
    • Set Status: and Priority: in the Summary section.
    • For new PRDs, default Status: draft. Prompt the user to confirm ready when scope is locked.
    • Priority: uses P0 (critical), P1 (high), P2 (medium), P3 (low).
    • Ensure implementation progress is trackable via checklist items.
    • For UI/UX-heavy features, include expected design inputs and state whether design should run before implement.
  7. Update context:
    • Update project gist in tasks/context.md if this is the first PRD or project scope changed.
    • Capture any durable decisions or constraints.
  8. Reply with updated file paths and a short change summary.

Workflow — List

  1. Scan tasks/ for files matching f-##-*.md (exclude tasks/archive/).
  2. For each file, extract from the Summary section: Feature ID, name, Type, Status, Priority.
  3. Display sorted by priority (P0 first), then by feature ID.
  4. Suggest the highest-priority Status: ready PRD as the next candidate for implement.
  5. No file modifications in list mode.

Clarifying Questions (Only If Needed)

Ask up to ~7 high-value questions. Keep them answerable via 1A, 2C, 3B.

Focus on ambiguity around:

  • target user + primary use case
  • the problem + desired outcome
  • constraints (platforms, timeline, integrations)
  • success metrics / how we know it worked
  • scope boundaries (what's explicitly in vs out)
  • whether this is Type: feat vs fix vs chore
  • priority (P0 / P1 / P2 / P3)
  • dependencies between features (by ID)

Example question format

1. What are we building?
   A. A brand new feature
   B. A fix for existing behaviour
   C. A maintenance/chore item
   D. Other: [describe]

Feature Writing Guidelines

  • Prefer feature names as verb phrases (e.g., "Invite teammates", "Export CSV").
  • For fix items, name them clearly (e.g., "Fix <problem>") and set Type: fix. Include minimal bug info:
    • Current behaviour: …
    • Expected behaviour: …
    • Repro steps (if known): …
  • For chores, keep them crisp and outcome-oriented (e.g., "Chore: remove dead code") and set Type: chore.
  • Ensure each feature has a crisp outcome (what changes for the user).
  • Avoid implementation tasks ("refactor", "set up DB") unless they are truly user-facing requirements.
  • If a feature is too large, split by user goal or workflow step until each item could reasonably become a single PRD.

Update Rules (When a PRD Exists)

  • If a PRD already exists at that path, update it in place.
  • Do not create a duplicate PRD unless the user asks.
  • Do not reset existing checklist items inside the PRD.
  • Preserve existing Status: and Priority: unless the user explicitly asks to change them.
  • Keep feature IDs stable; IDs must be globally unique across tasks/ and tasks/archive/.
  • When adding a new feature, use the next ID as (max existing f-##) + 1 (never reuse old IDs).

PRD Template

Use references/prd-template.md as the default PRD template and checklist.

  • Read it before drafting a new PRD.
  • For updates to an existing PRD, edit only impacted sections and preserve existing checkbox state.
  • Keep acceptance criteria concrete and verifiable; examples are in the reference file.

Output

  • Create or reuse tasks/.
  • Save/update the PRD at the chosen path.
  • Update tasks/context.md when durable decisions or project scope changes warrant it.
  • For UI/UX-heavy PRDs, recommend design (optional) before implement.
  • Suggest the next action:
    • If Status: draft, suggest refining to ready.
    • If Status: ready, suggest implement.
  • End with a short status block:
    • Files changed: list of created/updated files
    • Key decisions: any assumptions or choices made (if any)
    • Next step: recommended next skill or action

Quality Checklist

Before saving:

  • PRD Summary includes Feature ID, Type, Status, and Priority.
  • Feature ID is unique and stable (checked against existing PRDs in tasks/ and tasks/archive/).
  • If updating an existing PRD, existing story/task checkboxes were preserved (not reset).
  • If a PRD already existed, it was updated in place (no duplicates).
  • Each feature has a user-visible outcome and explicit scope boundaries (goals + non-goals).
  • Dependencies reference valid feature IDs.
  • Acceptance criteria are concrete and verifiable.
  • PRD is consistent with tasks/context.md (or tasks/context.md was updated in this run).

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

compact

No summary provided by upstream source.

Repository SourceNeeds Review
General

commit

No summary provided by upstream source.

Repository SourceNeeds Review
General

review

No summary provided by upstream source.

Repository SourceNeeds Review
General

implement

No summary provided by upstream source.

Repository SourceNeeds Review