From rk-skills
Breaks a finished PRD into dependency-ordered GitHub milestones and fully-specified issues with complexity scores and execution blocks. Invoke via '/prd-to-issues' or 'file the issues from the PRD'.
How this skill is triggered — by the user, by Claude, or both
Slash command
/rk-skills:prd-to-issuesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Break a refined PRD into milestones and fully-specified GitHub issues that cold agents can implement one at a time. Every issue must be self-sufficient: an agent holding only the issue body and the PRD can build it correctly.
Break a refined PRD into milestones and fully-specified GitHub issues that cold agents can implement one at a time. Every issue must be self-sufficient: an agent holding only the issue body and the PRD can build it correctly.
Load the github-issue-format skill before filing anything — mandatory.
v0 — Foundation & core <surface> (scaffold, schema, auth, core domain flows, payments happy path), v1 — Lifecycle & delivery (jobs, schedulers, notifications, end-of-life), v2 — <second surface> parity, v3 — Post-MVP.gh api repos/<owner>/<repo>/milestones -f title='...' -f description='...' — one per phase, descriptions listing the member issues' themes.
Per github-issue-format: [C<score>] plain-language title, complexity rationale first line, then Problem (with PRD § references), Goal, Approach, Acceptance criteria, attribution footer.
Issue-quality rules learned the hard way:
gh issue create --milestone), sequentially so numbering is stable.Append to every issue body, before the footer:
## Execution
- **Depends on:** #<n>[, #<n>…] | none
- **Runs after:** #<n>[, #<n>…] | none
- **Build model:** <Fable 5 | Opus 5 | ...>
- **Effort:** <low (Fable-only, discretionary — below the formula floor) | medium (Fable-only) | high | xhigh>
- **Validate effort:** <medium | high> (optional — omit for the default, high; never xhigh)
- **fableplan first:** <Yes — Fable 5 plans, plan posted to this issue, builder implements against it | No>
- **Plan effort:** <low | medium | high | xhigh> (optional — omit for the default, high; only meaningful when fableplan first is Yes)
- **PR review:** standard `@claude` review trigger
Ordering-field rules:
none when there is no edge of that kind.Runs after, not Depends on. If an edge is genuinely hard, record it only in Depends on; never list one predecessor in both fields.Assignment — derive from the complexity score band (canonical formula in validate-issue step 6: score = 25 × Capability + Volume). Score each issue with that formula first, then stamp Execution from the band:
| Capability | Score band | Build model | fableplan first | Effort from Volume (0–7 / 8–15 / 16–24) |
|---|---|---|---|---|
| 0 | 0–24 | Sonnet (or the repo's cheap/fast builder) | No | high / high / xhigh |
| 1 | 25–49 | Opus 5 | No | high / high / xhigh |
| 2 | 50–74 | Opus 5 | Yes | high / high / xhigh |
| 3 | 75–99 | Fable 5 | No (planning is inherent) | medium / high / xhigh (or discretionary low) |
Axes already encode the old parallel heuristics (money/security → high Risk; design-heavy → high Uncertainty; mechanical grind → high Scope/Volume at Capability 0). Do not override the band with a separate signal table unless a safety carve-out is explicit in the PRD and Risk was under-scored — then raise Risk and re-score, don't bypass the formula.
fableplan first: Yes issues — it is ignored everywhere else. The planner is always Fable 5, so every tier is legal, including the Fable-only low and medium — this line sets effort only, never a model. Default high; raise to xhigh when the design itself is the risk (the issue's Uncertainty axis is 3–4, or it defines a contract several later issues build against); drop to medium when Capability 2 came from the Coupling bump rather than Risk/Uncertainty, so the plan is mostly sequencing known work. Reserve low for a Capability-2 issue whose approach is already settled in the issue body and only needs ordering.@claude review trigger — no model routing in the review line.A compact table: issue number, C, title. Note the spine/waves ordering and which issues concentrate risk.
| Situation | Do this |
|---|---|
| An issue can't be specced without a decision the PRD doesn't make | Stop; run prd-questions for it first — never file a stub |
| Two issues want to touch the same module in the same wave | In the later issue's Runs after, list the earlier issue, or merge them if they are not independently implementable |
| A milestone exceeds ~12 issues | Split it; workflow waves get unwieldy past that |
| Tempted to skip Execution blocks "for now" | Don't — cold agents need them; that's the point |
npx claudepluginhub richkuo/rk-skills --plugin rk-skillsBreaks product requirement documents (PRDs) or plans into independently grabbable vertical slice issues, with dependency ordering and HITL/AFK labels.
Generates Agile project plans with Epic > Feature > Story hierarchy, dependencies, priorities, and automated GitHub issue tracking for feature artifacts.
Transforms product ideas, feature requests, or stakeholder requirements into structured PRDs with user stories, acceptance criteria, and GitHub issues.