Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add ihudak/ihudak-claude-plugins/plugin install product-workflowsWrote 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/commands/ihudak/ihudak-claude-plugins/create-prd)<a href="https://agentmods.dev/commands/ihudak/ihudak-claude-plugins/create-prd"><img src="https://agentmods.dev/badge/commands/ihudak/ihudak-claude-plugins/create-prd/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/ihudak/ihudak-claude-plugins/create-prd"><img src="https://agentmods.dev/badge/commands/ihudak/ihudak-claude-plugins/create-prd.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00000 | $0.23703 |
| Opus 5.5 | $0.00000 | $0.09481 |
| Sonnet 5.5 | $0.00000 | $0.04741 |
| Haiku 4.5 | $0.00000 | $0.02370 |
Grade A, and why
create-prd 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 1mo ago.
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 — 839 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Author a Product Requirements Document: $ARGUMENTS
Core references. A citation of the form workflows-core:<name> names a shared reference in the workflows-core plugin. Load it with Skill(skill: "workflows-core:reference", args: "<name>") — never by path: ${CLAUDE_PLUGIN_ROOT} resolves to this plugin, which does not carry it.
/create-prd is sub-project 2 of the PRD-creation flow (PM phase) — it consumes the idea.md from
/idea and a user-supplied address and
authors a high-quality Product Requirements Document that feeds the downstream pipeline. The PRD is product-level
(a PRD): what / why / for-whom, not how. Zero external calls — the PRD is authored as markdown in the specs
repo, which is where every downstream command reads it from.
Usage: /create-prd <ADDRESS> [@idea.md] [--from-prd <PRD-KEY|path>] [--lean|--hybrid|--full] [--no-docs] [--docs <path>] (default --hybrid, or --full on the BRD route — Phase 0 step 2; the one --no-* switch turns off the one grounding source — see Phase 1). --docs <path> — points documentation grounding at that root for this run instead of ${DOCS_PATH:-/workspace/docs}; strip the flag and its value together before any remaining-argument classification, or the path is read as part of the address. Declared for every consumer by workflows-core:docs-grounding Procedure step 1 (Flags first), which resolves it; this command only has to recognise it and pass the invocation through.
Phase 0 — Resolve inputs
-
Flags. Strip every recognised flag from
$ARGUMENTSbefore step 1 classifies the address or any@idea.md:--from-prd <PRD-KEY|path>and--docs <path>each together with the token after it, plus the booleans--no-docsand--lean/--hybrid/--full. Steps 2 and 2a then read the values this step set aside.Every value-taking flag, not only the docs pair.
--from-prdtakes a<PRD-KEY|path>, and an unstripped one puts two stray tokens in front of step 1 — the flag, which is read as the address, and its value, which is read as@idea.md. That is the same defect as the docs flags and it was missed once by scoping the sweep to "a flag with no parsing site" rather than to "a value not consumed before positionals are read": step 2a does discuss--from-prd, so a parsing-site test passes it, and step 2a runs after step 1. It is step 0 and not1a: step 1 is what parses the address, so a rung numbered after it runs after the damage. Both are carried to Phase 1'sresolve-docs-groundingcall and change nothing else. Without this rung the flag is a token like any other and lands in that classification:--docsis read as the address, or its path is read as the@idea.mdargument. They were named in the Usage line and parsed nowhere, the same defect/create-ard,/specifyand/release-noteswere found to have. -
The address (mandatory). Parse the first token that is neither a flag nor a flag's value —
--from-prdand--docseach consume the token after them (step 0), and a value skipped as "non-flag" would be read as the key and validate it withkey-valid(workflows-core:addressing§1). If absent or malformed, stop gracefully with the oneCREATE_PRD_NEEDS_KEYtext below — there is one stop for this code, not two. (Shape only, and never checked against anything: the key is the operator's own and names a folder in$SPECS_PATH; nothing mints it and nothing verifies it.)The BRD route is detected, not declared. A folder carrying
brd-link.mdwas produced by/brd-splitand holds the seeds this command reads; the operator restates nothing on the command line, and there is no flag that could disagree with the folder it names. Detection therefore waits on resolution. The address is resolved once, withresolve-address(step 5), and that resolution is taken as soon as step 2b has settled$SPECS_PATH— ahead of step 2's profile default and step 3's ladder, both of which read the route. Print which route the run entered at that point, before any other work. Where the address resolves to nothing there is no folder and nobrd-link.mdto read one off, so the run is on the idea route; step 5 says what happens then, and it is not a stop. A key that fails §1's grammar stops withCREATE_PRD_NEEDS_KEY: /create-prd needs an address (^[A-Z][A-Z0-9_]*(-\d+)+$, e.g. EPIC-008 or the slice EPIC-008-01) — re-run '/product-workflows:create-prd <ADDRESS>'.
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.
- 1mo ago Changed · +79 lines 85c59a3ddecb
- 1mo ago Changed · +18 lines a76ad782d8ae
- 1mo ago Changed · +4 lines 80b7f95ee770
- 2mo ago Changed · +60 lines 4292e20b9a30
- 2mo ago Changed · +13 lines bc4e15b64e64
- 2mo ago Changed · +34 lines 904ac36929ba
- 2mo ago First seen · 631 lines · 0 tokens per session scan A 53d475519ce5
create-prd is a command published in the GitHub repository ihudak/ihudak-claude-plugins (2 stars, last pushed 1mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 23,703 tokens. 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-08-31.
create-prd compared with commands from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| create-prdihudak/ihudak-claude-plugins | Command | 2 | 1mo ago | MIT | A | 0 | Claude Code |
| battlecardphuryn/pm-skills | Command | 28k | 2d ago | MIT | A | 19 | Claude Code |
| memorizelucasrosati/claude-code-memory-setup | Command | 1.1k | 21d ago | MIT | A | 0 | Claude Code |
| watchMarcel-Bich/marcel-bich-claude-marketplace | Command | 12 | 2d ago | MIT | A | 11 | Claude Code |
| opsfrankxai/agentic-creator-os | Command | 12 | 2d ago | Apache-2.0 | A | 35 | Claude Code |
| value-prop-statementsstefanoskarakasis/Product-Marketing-Skills | Command | 11 | 2d ago | MIT | A | 16 | Claude Code |
| commitjoaquimscosta/arkhe-claude-plugins | Command | 22 | 26d ago | MIT | A | 11 | Claude Code |