triage-issueslisted
Install: claude install-skill by-carlos/claude-plugins
Run a reproducible GitHub issue triage session. The output is a **ranked queue on a
GitHub Projects (v2) board** — not a local file — that `/work-issue next` consumes.
Same stages, same format, every run. Skimmable, no filler.
## Board schema (the contract with `/work-issue`)
The board is the source of truth. Triage writes these fields; `/work-issue next`
reads them. Reading and writing project fields needs the `project` scope on `gh`
(`gh auth refresh -s project`).
| Field | Type | Meaning |
|-------|------|---------|
| **Status** | single-select | `Ready` = a Claude Code session can pick it up **now**. Anything not `Ready` (`Backlog`, `In progress`, `In review`, `Done`) is excluded from the queue. |
| **Priority** | single-select `P0`–`P3` | primary sort key |
| **Size** | single-select `XS`–`XL` | secondary sort key (smaller first) |
| **Effort** | single-select | model + reasoning-effort recommendation: `haiku`; `sonnet-{low,med,high,extra,max,ultracode}`; `opus-{low,med,high,extra,max,ultracode}`; or `human` (needs physical/account/GUI access Claude Code can't do) |
**Readiness invariant — set `Status = Ready` only when all hold:**
- Priority, Size, and Effort are all set, **and**
- Effort ≠ `human` (human-only work stays `Backlog` so `next` never grabs it), **and**
- the issue is dispatch-ready (clear repro/constraints/verify — not a stub).
Anything failing these stays `Backlog`. Enable the board's built-in **"Item closed →
Done"** workflow once, so a merged `Close