| name | triage |
| description | Move issues and external PRs through a state machine of triage roles — categorise, verify, grill if needed, and write agent-ready briefs. |
| disable-model-invocation | true |
| category | development |
| risk | safe |
| source | community |
| source_repo | mattpocock/skills |
| source_type | community |
| date_added | 2026-06-19 |
| author | Matt Pocock |
| license | MIT |
| license_source | https://github.com/mattpocock/skills/blob/main/LICENSE |
| tags | ["engineering","workflow","coding-agents"] |
| tools | ["claude-code","codex-cli","cursor"] |
Triage
When to Use
Use when this workflow matches the user request: Move issues and external PRs through a state machine of triage roles — categorise, verify, grill if needed, and write agent-ready briefs.
Source: mattpocock/skills (MIT).
Move issues on the project issue tracker through a small state machine of triage roles.
If this repo treats external pull requests as a request surface (see the issue-tracker config), triage covers them too: a PR is an issue with attached code — same roles, same states, same machine, with a few deltas marked "for a PR" below. Resolve a bare #42 to an issue or PR per the tracker config.
Every comment or issue posted to the issue tracker during triage must start with this disclaimer:
> *This was generated by AI during triage.*
Reference docs
Roles
Two category roles:
bug — something is broken
enhancement — new feature or improvement
Five state roles:
needs-triage — maintainer needs to evaluate
needs-info — waiting on reporter for more information
ready-for-agent — fully specified, ready for an AFK agent
ready-for-human — needs human implementation
wontfix — will not be actioned
For a PR, the same states read against the attached code: ready-for-agent means a brief is attached and an agent should take the next step on the diff; ready-for-human means it's ready for a human to merge.
Every triaged issue should carry exactly one category role and one state role. If state roles conflict, flag it and ask the maintainer before doing anything else.
These are canonical role names — the actual label strings used in the issue tracker may differ. The mapping should have been provided to you - run /setup-matt-pocock-skills if not.
State transitions: an unlabeled issue normally goes to needs-triage first; from there it moves to needs-info, , , or . returns to once the reporter replies. The maintainer can override at any time — flag transitions that look unusual and ask before proceeding.