prd-to-issues

prd-to-issues is a skill for Claude Code from mgiovani/cc-arsenal. It costs 133 tokens per session (1,073 once invoked), scanned A, original, MIT.

A workflow that turns an approved product requirements document (PRD) into trackable work issues, with one issue for each requirement and links showing what must come first.

In plain words
What is it for?
Use it to break a PRD into tickets in Beads or GitHub, record requirement dependencies, check for existing tickets, and report created, skipped, or blocked work.
Why use it?
It removes the manual step of copying a written specification into a backlog and helps prevent duplicate or premature issues. Unresolved requirements are reported instead of being turned into guesses.

Skill for Claude Code

Written for Claude Code: disable-model-invocation in frontmatter.

Part of the cc-arsenal-product plugin — 7 skills shipped together , and of cc-arsenal

Good fit Use it to break a PRD into tickets in Beads or GitHub, record requirement dependencies, check for existing tickets, and report created, skipped, or blocked work.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/mgiovani/cc-arsenal/prd-to-issues
Install

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.

Any agent
npx skills add mgiovani/cc-arsenal --skill prd-to-issues
Clone the repo
git clone --depth 1 https://github.com/mgiovani/cc-arsenal

Made for: Claude Code.

Or install cc-arsenal-product, the plugin that ships this one along with the rest of its 7 skills.

Wrote 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.

agentmods badge for prd-to-issues

README.md
[![agentmods](https://agentmods.dev/badge/skills/mgiovani/cc-arsenal/prd-to-issues/github.svg)](https://agentmods.dev/skills/mgiovani/cc-arsenal/prd-to-issues)
Your own site
<a href="https://agentmods.dev/skills/mgiovani/cc-arsenal/prd-to-issues"><img src="https://agentmods.dev/badge/skills/mgiovani/cc-arsenal/prd-to-issues/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.

agentmods 80×15 button for prd-to-issues

Your own site · 80×15
<a href="https://agentmods.dev/skills/mgiovani/cc-arsenal/prd-to-issues"><img src="https://agentmods.dev/badge/skills/mgiovani/cc-arsenal/prd-to-issues.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 133 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,073 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00133 $0.01073
Opus 5.5 $0.00053 $0.00429
Sonnet 5.5 $0.00027 $0.00215
Haiku 4.5 $0.00013 $0.00107

Measured 22d ago against content hash 8c8b8f1cb5a8, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

prd-to-issues 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 22d 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.

skills/prd-to-issues/SKILL.md · 80 lines

How it starts

The opening of the file, as written. The whole thing — 80 lines — stays where its author put it; the contents beside it link to each section on GitHub.

PRD to Issues

The seam between a written spec and a tracked backlog. A PRD is one document; work is many issues with an order. This is the translation, and it is mechanical on purpose: the thinking already happened in the PRD.

What you produce

Output Description
One issue per requirement ID PRD-FR-001 becomes exactly one issue, with the ID in the title. That ID is the only link back to the spec, and it's what lets a re-run recognize its own earlier output.
Dependencies between issues Taken from the PRD's own ordering and its stated prerequisites, never invented.
A report What was created, what was skipped, and what blocked.

Method

  1. Read the whole PRD first, noting requirement IDs, non-goals, and every [NEEDS CLARIFICATION: ...] tag.
  2. An unresolved clarification on a requirement means it doesn't get filed. List those separately and say the PRD isn't ready for that requirement yet; a ticket filed on a guess costs more than the one that was never filed.
  3. Before creating anything, check what already exists by searching for the requirement ID:
    bd list --json | grep -o 'PRD-[A-Z]*-[0-9]*'      # or:
    gh issue list --search "PRD-FR-001" --state all --json number,title
    
    Skip an ID that already has an issue and report it as skipped. Never duplicate it, never update it silently.
  4. Create one issue per remaining requirement. Prefer bd, which records dependencies as a graph, and fall back to gh when bd isn't available (brew install beads, then bd init):
    bd create "PRD-FR-001: <requirement title>" -d "$(cat body.md)" -p 2
    bd dep add <child-id> <parent-id>                  # child needs parent first
    
    gh issue create --title "PRD-FR-001: <requirement title>" --body-file body.md
    
    Carry the requirement text verbatim in the body, along with its Given/When/Then acceptance criteria and a line naming the PRD file. Copying the acceptance criteria unchanged matters, since rewording them is how a spec and its tickets drift apart.
  5. Once every issue exists and has an id, record dependencies. If one points at an issue that was skipped in step 3, report that rather than guessing around it.
  6. Close with a report, tagging each requirement ID as created, skipped because it already existed, or blocked on a clarification.

Read the full file on GitHub · 80 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 22d ago Changed · -1 lines 8c8b8f1cb5a8
  2. 1mo ago Changed · -5 lines cc872e5fdf03
  3. 1mo ago Changed · +1 lines 81db59265106
  4. 1mo ago First seen · 85 lines · 133 tokens per session scan A 4804676f2898

Subscribe to this mod's changes

prd-to-issues is a skill published in the GitHub repository mgiovani/cc-arsenal (8 stars, last pushed 2d ago), licensed MIT. It adds 133 tokens to every session and 1,073 once invoked, about $0.0005 per session on Opus 5.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-08-31.

Related

Other skills, from other repositories

handoff-protocols

Manages work transitions between team members or agents by creating structured handoff documents, summarizing project status, documenting key decisions, blockers, and open questions, and generating onboarding briefs. Use when someone needs to hand off, hand over, or transition a project; pass work to another person or…

rohitg00/skillkit · 116 tokens

gitlab

Agent-callable GitLab tools — manage issues and merge requests, review diffs, commit files, run pipelines, and search. Use when the user mentions GitLab or wants to review or merge an MR, commit code, run CI, or manage issues — even if they don't name GitLab explicitly.

zapier/connectors · 64 tokens

harvest

Agent-callable Harvest tools — track time (log hours, start/stop timers), and manage the projects, clients, contacts, and tasks time is logged against, plus read invoices and account settings. Use when the user wants to log or edit time, manage Harvest projects/clients/tasks, or check what was billed — even if they…

zapier/connectors · 75 tokens

linear

Agent-callable Linear tools — create, update, find, and comment on issues; manage projects; and resolve teams, states, labels, users, and cycles. Use when the user mentions Linear or wants to track issues, even if they don't name Linear explicitly.

zapier/connectors · 55 tokens

quality

Evaluates whether a GitHub issue is spam, empty, needs more information, or is OK to proceed.

google-gemini/gemini-cli · 24 tokens

follow-up-after-call

Use after a completed customer, prospect, partner, or important internal sales call, discovery session, demo, or conversation, including when the user supplies or uploads a transcript, notes, recording summary, or other grounded evidence. Advise on, assess, qualify, recap, and produce seller-ready follow-up actions…

XiaomiMiMo/MiMo-Code · 69 tokens