Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/qte77/claude-code-plugins/generating-prd-json-from-prd-mdnpx skills add qte77/claude-code-plugins --skill generating-prd-json-from-prd-mdgit clone --depth 1 https://github.com/qte77/claude-code-pluginsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/qte77/claude-code-plugins/generating-prd-json-from-prd-md)<a href="https://agentmods.dev/skills/qte77/claude-code-plugins/generating-prd-json-from-prd-md"><img src="https://agentmods.dev/badge/skills/qte77/claude-code-plugins/generating-prd-json-from-prd-md.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00046 | $0.00651 |
| Opus 5 | $0.00023 | $0.00326 |
| Sonnet 5 | $0.00009 | $0.00130 |
| Haiku 4.5 | $0.00005 | $0.00065 |
Grade A, and why
generating-prd-json-from-prd-md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 92 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PRD to JSON Conversion
Hybrid approach: Python script parses, AI validates and corrects.
Workflow
- 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.
- Run parser (Bash tool)
python ralph/scripts/generate_prd_json.py
Script handles: PRD.md parsing, (depends: ...) extraction, content hashing, state preservation.
-
Validate (Read tool)
- Read
ralph/docs/prd.json(script output) - Read
docs/PRD.md(cross-reference) - Check against Validation Checklist
- Read
-
Correct errors (Write tool, if needed)
- Fix issues found
- Recompute
content_hashif title/description/acceptance changed - Write corrected
ralph/docs/prd.json
-
Report
- Story count and status
- Corrections made
- Suggest:
make ralph_run
Validation Checklist
For each story, verify:
-
idfollows STORY-XXX format -
titleis 3-7 words, matches PRD.md feature -
descriptionis non-empty -
acceptancearray is non-empty -
filesarray contains valid paths (if specified in PRD.md) -
content_hashis 64-char hex string -
depends_onreferences 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
| Issue | Correction |
|---|---|
| Empty acceptance | Extract from description or PRD.md feature |
| Invalid depends_on reference | Remove non-existent story IDs |
| Circular dependency | Remove one direction |
| Missing content_hash | Recompute from title+description+acceptance |
| Duplicate story IDs | Renumber sequentially |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today First seen · 92 lines · 46 tokens per session scan A 4082e5fd8c29
generating-prd-json-from-prd-md is a skill published in the GitHub repository qte77/claude-code-plugins (2 stars, last pushed 5d ago), licensed Apache-2.0. It adds 46 tokens to every session and 651 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
summarize-meeting
Summarize a meeting transcript into structured notes with date, participants, topic, key decisions, summary points, and action items. Use when processing meeting recordings, creating meeting notes, writing meeting minutes, or recapping discussions.
ppt-design-skill
Design, generate, review, and revise editable PowerPoint presentations through a rigorous brief-to-PNG workflow using the public pptx-designer Python library.
reflect-solution
Summarize WHAT WAS SHIPPED in a Claude Code session as a self-contained HTML slide deck — the elevator pitch (problem, solution, decisions, artifacts, verification, gaps), not a play-by-play of tool calls or debugging detours. Defaults to the current in-context session; optionally accepts a session ID or JSONL path.…
workflow
Run the complete 5-step development workflow: focus problem → prevent over-development → test-first (TDD) → document → smart commit. Use when starting a new feature, or when the user runs /workflow or asks for the full development flow.
handoff-gemini
Delegate long-context analysis, research, and large-document summarization to Google Gemini CLI (1M-token context) via non-interactive gemini -p, preserving Claude context. Use when the user says 'use gemini'/'hand off to gemini' or a task needs 100K+ tokens of context.
factcheck
Adversarial citation and claim audit for any document — "do these sources actually say what the text claims?" Takes a markdown file, URL, or pasted draft (including this repo's own pulse/verdict briefs), extracts every checkable claim, then fans out verifier sub-agents instructed to refute, not confirm: does the cited…