Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Move incoming issues and pull requests through triage states until each is actionable or closed — use when the queue has piled up or a report arrives unsorted
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 598% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 109% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 40% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 205% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 52% | 0% |
Work the incoming queue. Each item moves through a small set of states until it is either actionable by someone who did not write it, or closed with a reason.
A pull request is an issue with attached code. Same states, same moves, with the deltas noted below. Resolving a bare #42 means checking both.
Adapted from triage in mattpocock/skills (MIT), cut down to the states this repo can actually represent and retargeted at gh and bd.
skill-issues and .octo/ISSUES.md.skill-code-review orskill-staged-review; intake decides whether the PR should be reviewed at all.
An issue or PR reference, or nothing — with nothing, take the queue in order. gh issue list and gh pr list for the public surface; bd ready and bd blocked for tracked work.
What kind of thing is it: a bug, an enhancement, a question, or noise. For a PR, also: does it correspond to an existing issue, or arrive unannounced?
Do not skip this because the title looks obvious. Titles are written by people who already know what they meant.
The step that earns the whole skill. For a bug: reproduce it, or establish that you cannot. For a PR: check the claim it makes is the change it contains.
An unverified bug report is a hypothesis. Filing it as fact wastes whoever picks it up. If reproduction needs something you do not have — credentials, a dataset, a platform — that is needs-info, not verified.
needs-triage — arrived, not yet sorted. The entry state.needs-info — blocked on the reporter. Say exactly what is missing; "moredetail" is not a request anyone can act on.
verified — reproduced or confirmed, ready to be worked.needs-decision — real, but what to do is a judgement call the maintainerhas not made. Do not resolve these by inference. Escalate, or run skill-pressure-test with the maintainer.
closed — not a bug, out of scope, duplicate, or fixed. Always with areason, and for out-of-scope, why.
For anything reaching verified, write what someone picking it up needs and would otherwise have to rediscover: where the relevant code is, what you already ruled out, and how to tell when it is fixed. This is the difference between an item that gets worked and one that gets re-triaged.
For a PR, add: whether it has tests, whether CI is green, and whether it conflicts with anything in flight.
gh issue comment / gh issue edit --add-label for the public surface. bd update for tracked work. If bd writes are blocked by pending migrations, say so and do not run the migration — see skill-work-slicing for that constraint.
duplicate. Closing is the one move that is rude to get wrong.
needs-decision items and surface them rather than guessing.reports end up buried under a label.
Per item:
with the reason.
Then a queue summary: counts by state, and which items are now takeable.
verified item was actually reproduced, or says explicitly that it wasnot and why.
needs-info names the specific missing thing.Other measured skills in the registry, with their headline benchmark lift.