agentsclimarketplace

Generating prd json from prd md

Skill qte77/claude-code-plugins/plugins/ralph/skills/generating-prd-json-from-prd-md

A Claude Code plugin marketplace providing skills, rules, and scripts extracted from a production development workflow.

Install
npx -y skills add qte77/claude-code-plugins --skill generating-prd-json-from-prd-md

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Generates prd.json task tracking file from PRD.md requirements document. Use when initializing Ralph loop or when the user asks to convert PRD to JSON format for autonomous execution.

SKILL.md

2.6 KB, as published. Nobody here has run it

PRD to JSON Conversion

Hybrid approach: Python script parses, AI validates and corrects.

Workflow

  1. Dry-run parser (Bash tool) — catch parser issues before writing
python ralph/scripts/generate_prd_json.py --dry-run

Check output for: declared vs parsed story count mismatch, missing stories, empty acceptance/files. If issues found, fix PRD markdown or note for manual correction in step 3.

  1. Run parser (Bash tool)
python ralph/scripts/generate_prd_json.py

Script handles: PRD.md parsing, (depends: ...) extraction, content hashing, state preservation.

  1. Validate (Read tool)

    • Read ralph/docs/prd.json (script output)
    • Read docs/PRD.md (cross-reference)
    • Check against Validation Checklist
  2. Correct errors (Write tool, if needed)

    • Fix issues found
    • Recompute content_hash if title/description/acceptance changed
    • Write corrected ralph/docs/prd.json
  3. Report

    • Story count and status
    • Corrections made
    • Suggest: make ralph_run

Validation Checklist

For each story, verify:

  • id follows STORY-XXX format
  • title is 3-7 words, matches PRD.md feature
  • description is non-empty
  • acceptance array is non-empty
  • files array contains valid paths (if specified in PRD.md)
  • content_hash is 64-char hex string
  • depends_on references valid STORY-XXX IDs (no circular deps, no self-refs)

Cross-reference with PRD.md:

  • All #### Feature N: headings have corresponding stories
  • Story order matches PRD.md feature order
  • (depends: STORY-XXX) syntax correctly parsed

Common Issues to Correct

IssueCorrection
Empty acceptanceExtract from description or PRD.md feature
Invalid depends_on referenceRemove non-existent story IDs
Circular dependencyRemove one direction
Missing content_hashRecompute from title+description+acceptance
Duplicate story IDsRenumber sequentially

prd.json Schema

See ralph/docs/templates/prd.json.template for structure and fields.

Usage

make ralph_prd_json

Next Steps

make ralph_init    # Validate environment
make ralph_run     # Start Ralph loop

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.