Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Break a plan, spec, or PRD into independently-grabbable GitHub issues using tracer-bullet vertical slices. Use when user wants to convert a plan into issues, create implementation tickets, or break down work into issues.
.claude/skills/mkurman-to-issues/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✗→✓ | ▲ Improved | -30% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -10% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -42% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -2% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -2% | 0% |
Break a plan into independently-grabbable GitHub issues using vertical slices (tracer bullets).
Work from whatever is already in the conversation context. If the user passes a GitHub issue number or URL as an argument, fetch it with gh issue view <number> (with comments).
If you have not already explored the codebase, do so to understand the current state of the code.
Break the plan into tracer bullet issues. Each issue is a thin vertical slice that cuts through ALL integration layers end-to-end, NOT a horizontal slice of one layer.
Slices may be 'HITL' or 'AFK'. HITL slices require human interaction, such as an architectural decision or a design review. AFK slices can be implemented and merged without human interaction. Prefer AFK over HITL where possible.
<vertical-slice-rules>
</vertical-slice-rules>
Present the proposed breakdown as a numbered list. For each slice, show:
Ask the user:
Iterate until the user approves the breakdown.
For each approved slice, create a GitHub issue using gh issue create. Use the issue body template below.
Create issues in dependency order (blockers first) so you can reference real issue numbers in the "Blocked by" field.
<issue-template>
#<parent-issue-number> (if the source was a GitHub issue, otherwise omit this section)
A concise description of this vertical slice. Describe the end-to-end behavior, not layer-by-layer implementation.
Or "None - can start immediately" if no blockers.
</issue-template>
Do NOT close or modify any parent issue.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 5,761 | 2,098 | -64% | 1 | 1 | 0% | 916 | 879 | -4% | 0 | 0 | — |
case-02 | fail→fail | 4,056 | 3,765 | -7% | 1 | 1 | 0% | 693 | 770 | +11% | 0 | 0 | — |
case-03 | fail→fail | 9,603 | 5,017 | -48% | 1 | 1 | 0% | 1,647 | 846 | -49% | 0 | 0 | — |
case-04 | pass→pass | 11,490 | 6,017 | -48% | 1 | 1 | 0% | 1,996 | 1,612 | -19% | 0 | 0 | — |
case-05 | fail→pass | 11,929 | 4,507 | -62% | 1 | 1 | 0% | 1,948 | 1,357 | -30% | 0 | 0 | — |
case-23 | fail→fail | 4,264 | 6,734 | +58% | 1 | 1 | 0% | 635 | 1,003 | +58% | 0 | 0 | — |
case-06 | pass→pass | 5,402 | 2,732 | -49% | 1 | 1 | 0% | 1,011 | 1,121 | +11% | 0 | 0 | — |
case-07 | fail→pass | 7,262 | 2,412 | -67% | 1 | 1 | 0% | 1,030 | 932 | -10% | 0 | 0 | — |
case-08 | fail→pass | 9,012 | 2,246 | -75% | 1 | 1 | 0% | 1,544 | 901 | -42% | 0 | 0 | — |
case-09 | pass→pass | 12,386 | 5,841 | -53% | 1 | 1 | 0% | 1,988 | 1,459 | -27% | 0 | 0 | — |
case-10 | fail→pass | 5,640 | 1,591 | -72% | 1 | 1 | 0% | 846 | 833 | -2% | 0 | 0 | — |
case-11 | fail→pass | 7,005 | 2,768 | -60% | 1 | 1 | 0% | 1,099 | 1,081 | -2% | 0 | 0 | — |
case-12 | pass→pass | 4,482 | 2,972 | -34% | 1 | 1 | 0% | 800 | 1,126 | +41% | 0 | 0 | — |
case-13 | pass→fail | 11,104 | 3,355 | -70% | 1 | 1 | 0% | 1,850 | 1,163 | -37% | 0 | 0 | — |
case-14 | fail→pass | 14,365 | 2,191 | -85% | 1 | 1 | 0% | 2,046 | 889 | -57% | 0 | 0 | — |
case-15 | fail→pass | 8,570 | 2,650 | -69% | 1 | 1 | 0% | 1,385 | 972 | -30% | 0 | 0 | — |
case-16 | pass→pass | 15,172 | 6,765 | -55% | 1 | 1 | 0% | 2,230 | 1,650 | -26% | 0 | 0 | — |
case-17 | pass→pass | 6,677 | 2,262 | -66% | 1 | 1 | 0% | 994 | 892 | -10% | 0 | 0 | — |
case-18 | fail→pass | 15,211 | 3,238 | -79% | 1 | 1 | 0% | 2,198 | 1,129 | -49% | 0 | 0 | — |
case-19 | fail→fail | 11,466 | 3,004 | -74% | 1 | 1 | 0% | 1,591 | 1,041 | -35% | 0 | 0 | — |
case-20 | pass→pass | 5,668 | 8,922 | +57% | 1 | 1 | 0% | 937 | 2,122 | +126% | 0 | 0 | — |
case-21 | fail→fail | 10,833 | 5,272 | -51% | 1 | 1 | 0% | 2,138 | 852 | -60% | 0 | 0 | — |
case-22 | fail→fail | 5,968 | 12,626 | +112% | 1 | 1 | 0% | 1,244 | 2,780 | +123% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 19 counted toward the lift figure. The other 4 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +30 percentage points is the difference between those two pass rates over the 19 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.