issue-breakdown
Skill0 starsChanged 6 months agoMITView on GitHub
Conductor for the issue-breakdown track. Post-/spec:tasks. Decomposes a GitHub issue into independent draft PRs by parsing tasks.md, opens one draft PR per parallelisable batch, edits the parent issue body to track progress. Triggers "/issue:breakdown <n>", "break this issue down into draft PRs", "decompose issue".
- Commits and pushes
1 other project uses a version of this.
Adopted by
Most recently taken up by
- kellykampen/agent-skillstheir own version, first seen Nov 1, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- kellykampen/agent-skills★ 2same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository45 other files it gives its agents.
- AGENTS.mdAGENTS.md
- plugin-v2/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- plugin-v2/CLAUDE.mdCLAUDE.md
- .github/copilot-instructions.mdCopilot instructions
- .cursor/rules/agents.mdcCursor rule
- agentic-security-reviewSkill
- arc42-baselineSkill
- caveman-commitSkill
- caveman-helpSkill
- caveman-reviewSkill
- cavemanSkill
- create-goalSkill
- design-twiceSkill
- discovery-sprintSkill
- domain-contextSkill
- github-project-setupSkill
- grillSkill
- improve-codebase-architectureSkill
- issue-draftSkill
- issue-pr-syncSkill
- new-adrSkill
- new-glossary-entrySkill
- orchestrateSkill
- portfolio-trackSkill
- product-pageSkill
- project-reviewSkill
- project-runSkill
- project-scaffoldingSkill
- quality-assuranceSkill
- quality-metricsSkill
- record-decisionSkill
- review-fixSkill
- roadmap-managementSkill
- sales-cycleSkill
- specorator-designSkill
- specorator-improvementSkill
- specorator-onboardSkill
- stock-takingSkill
- tackle-issueSkill
- tdd-cycleSkill
- token-budget-reviewSkill
- tracer-bulletSkill
- ubiquitous-languageSkill
- verifySkill
The file
We split this skill into the rules it gives an agent
11 rules. About 0 are common, 2 are distinctive, and 9 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
9
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 36
If state != "OPEN", hard-stop.
- Very specific: line 46
If the agent returns multiple candidates, batch a single AskUserQuestion:
- Distinctive: line 51
If the agent returns a single candidate, accept silently.
- Very specific: line 61
If matches exist, batch one AskUserQuestion:
- Very specific: line 67
If matches exist *and* the parent issue body has no <!-- BEGIN issue-breakdown:<slug> --> block, refuse and surface: "prior run detected …
- Very specific: line 73
If the agent returns parse-error, surface the offending heading to the user and exit.
- Very specific: line 93
If the agent returned just one slice, also offer Skip — open one PR by hand instead.
- Distinctive: line 99
If the agent returns a partial-failure outcome (rate limit, dirty tree mid-run, etc.), surface the failure and the recoverable PR list to …
- Very specific: line 113
If the housekeeping push is denied (operator's permissions don't allow chore/*), surface the failure with the local commit SHA so the …
- Very specific: line 125
If draft_pr is absent in workflow-state.md, the skill exits silently.
- Very specific: line 155
Do not bleed /issue:breakdown concerns back into /spec:tasks or vice versa.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Issue-breakdown conductor
You conduct the issue-breakdown track defined in docs/issue-breakdown-track.md. Your job: gate between phases, dispatch the issue-breakdown specialist agent at .claude/agents/issue-breakdown.md, never do the agent's work yourself. Filed by ADR-0022 (docs/adr/0022-add-issue-breakdown-track.md).
Shared rules (gating, escalation, intake-gate, constraints common to all conductors): .claude/skills/_shared/conductor-pattern.md.
Read first
docs/superpowers/specs/2026-05-02-issue-breakdown-design.md— source-of-truth spec.docs/issue-breakdown-track.md— methodology.templates/tasks-template.md— the layout the agent parses.memory/constitution.md— Articles I, II, VI, IX especially.
Inputs
<issue-number>— required GitHub issue number passed as$ARGUMENTS.
What you do, step by step
Step 1 — Pre-flight
Confirm gh auth status succeeds. If not, surface to the user and exit.
Read the issue:
gh issue view <issue-number> --json number,title,body,labels,state,urlIf state != "OPEN", hard-stop. Tell the user the issue must be open.
Step 2 — Resolve spec lineage
Dispatch the issue-breakdown agent with the issue payload. The agent attempts:
- First
specs/<slug>/link in issue body. spec:<slug>label.- Surface candidates.
If the agent returns multiple candidates, batch a single AskUserQuestion:
- One option per candidate
specs/<slug>/(recommended-first bylast_updated). - "Other" → free-text override (skip).
If the agent returns a single candidate, accept silently.
Step 3 — Verify gate
Agent reads specs/<slug>/workflow-state.md. If tasks.md status is not complete, hard-stop. Surface to the user: "run /spec:tasks first; this conductor only runs post-tasks".
Step 4 — Idempotency check
Agent searches for prior-run PRs via the slice-tag HTML comment.
If matches exist, batch one AskUserQuestion:
Resume — open only the missing slices(Recommended).Re-plan — recompute slices and open new ones (existing PRs untouched).Abort.
If matches exist and the parent issue body has no <!-- BEGIN issue-breakdown:<slug> --> block, refuse and surface: "prior run detected (PRs #x #y) but issue body block missing — restore manually before re-running."
Step 5 — Parse tasks.md
Agent parses specs/<slug>/tasks.md and returns a slice list [{ordinal, scope, goal, task_ids[], dod[], blocked_by[], may_slice}].
If the agent returns parse-error, surface the offending heading to the user and exit.
Step 6 — Confirm slices
Batch one AskUserQuestion. Include the integration branch the agent resolved in Step 1 so the user can spot a Shape-A vs Shape-B mismatch before any PR is opened, and surface whether the slice list came from a real ## Parallelisable batches section or was synthesised because that section was absent (legacy tasks.md):
N slices computed from
## Parallelisable batchesintasks.md(or:tasks.mdhas no## Parallelisable batchessection — single batch synthesised from all tasks in document order):
- 01 —
<goal>(T-AUTH-001, T-AUTH-005)- 02 —
<goal>(T-AUTH-002)- …
Open N draft PRs against issue #
<n>, branched off<integration-branch>(resolved fromgit symbolic-ref refs/remotes/origin/HEAD)?
Options:
Open N drafts(Recommended).Edit slicing— free-text "Other" answer; pass back to the agent as additional context for a re-parse with overrides.Abort.
If the agent returned just one slice, also offer Skip — open one PR by hand instead. Some single-slice flows are more friction than they save.
Step 7 — Per-slice loop
Hand off control fully to the agent. The agent walks the per-slice loop sequentially: branch → empty commit → push → draft PR. You wait.
If the agent returns a partial-failure outcome (rate limit, dirty tree mid-run, etc.), surface the failure and the recoverable PR list to the user. Idempotency on re-run will resume.
Step 8 — Update parent issue body
Agent renders and applies the sentinel-bracketed ## Work packages section to the issue body.
Step 9 — Audit log + hand-off note
Agent writes specs/<slug>/issue-breakdown-log.md and appends one dated line to the ## Hand-off notes section of specs/<slug>/workflow-state.md.
Step 9.5 — Persist audit edits on a housekeeping branch
Agent stages and commits both edits on a fresh chore/issue-breakdown-audit-issue-<n>-<runid> branch cut from <integration-branch>, pushes it, and opens a non-draft chore(issue-breakdown): record run for issue #<n> PR. This leaves the working tree clean for the next /issue:breakdown run (Step 1's git status --porcelain clean-tree gate would otherwise refuse) and surfaces the audit trail through the same review path as every other change in the repo. The housekeeping PR is independent of the slice PRs and safe to merge whenever convenient.
If the housekeeping push is denied (operator's permissions don't allow chore/*), surface the failure with the local commit SHA so the operator can rescue the audit trail manually.
Step 9.75 — Post-breakdown sync (non-fatal)
Invoke the issue-pr-sync skill (.claude/skills/issue-pr-sync/SKILL.md) with:
stage: breakdownslug: <slug>draft_pr: read fromspecs/<slug>/workflow-state.mdissue_number: read fromspecs/<slug>/workflow-state.mdslice_prs: the list of PR numbers just opened (for populating the Tasks section)
If draft_pr is absent in workflow-state.md, the skill exits silently. If gh fails, the skill warns and returns — do not abort the /issue:breakdown run.
This step runs after Step 9.5 (housekeeping commit). The working tree is already clean; no git state is affected.
Step 10 — Report
Print a 4-line summary to the user:
- Path to feature folder.
- Count of slice PRs opened (with numbers).
- Housekeeping PR number (Step 9.5).
- Path to audit log.
Constraints (issue-breakdown-specific)
Generic conductor constraints + escalation pattern: .claude/skills/_shared/conductor-pattern.md. Specifics for this skill:
- Never invoke
tracer-bulletat runtime.tasks.mdis the input; it has already been produced upstream. - Never modify
tasks.md. If parse fails, the user fixes it (or re-runs/spec:tasks). - Never open more than one PR per parallelisable batch (or per
🪓 may-slicetask). - Sequential PR creation only — no
gh pr createparallelism. - Phase 2 (operational bot at
agents/operational/issue-breakdown-bot/) is a separate PR; do not invoke or import any Phase-2-only file.
Boundary with /spec:tasks
/spec:tasks produces tasks.md with ## Parallelisable batches. This skill consumes that artifact. Their boundary is:
/spec:tasksdecides what to build (slices, dependencies, DoD)./issue:breakdowndecides how to track that work on GitHub (one PR per slice, parent issue as dashboard).
Do not bleed /issue:breakdown concerns back into /spec:tasks or vice versa.
References
- Design spec:
docs/superpowers/specs/2026-05-02-issue-breakdown-design.md. - Methodology:
docs/issue-breakdown-track.md. - ADR:
docs/adr/0022-add-issue-breakdown-track.md. - Tasks template:
templates/tasks-template.md. - Slicing primitive (consumed upstream by
/spec:tasks):.claude/skills/tracer-bullet/SKILL.md. - Sink:
docs/sink.md.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

