agentsclimarketplace

Generating prd json from prd md

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

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.From its SKILL.md

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.

SKILL.md

2.6 KB, 573 tokens by cl100k_base, 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

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. 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.