Skip to content
Back to skills

Issue Triage

ASecurity

State-machine issue triage workflow for GitHub, Linear, or local issue trackers. Manages category labels (bug, enhancement) and state labels (needs-triage, needs-info, ready-for-agent, ready-for-human, wontfix). Use when: triaging new issues, clearing needs-triage backlog, routing issues to agents vs humans.

  • 2 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added September 8, 2026
businessgogitsecurity

Security analysis

A100/100

Scanned September 8, 2026

npx -y skills add nobodyonlyc/skills --skill issue-triage --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Issue Triage?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Issue Triage
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/nobodyonlyc-issue-triage/badge)](https://www.skillsdirectory.com/skills/nobodyonlyc-issue-triage)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: issue-triage
kind: workflow
version: 1.0.0
tags:
  - domain: engineering
  - subtype: issue-triage
  - methodology: state-machine-triage
description: "State-machine issue triage workflow for GitHub, Linear, or local issue trackers. Manages category labels (bug, enhancement) and state labels (needs-triage, needs-info, ready-for-agent, ready-for-human, wontfix). Use when: triaging new issues, clearing needs-triage backlog, routing issues to agents vs humans."
license: MIT
metadata:
  author: theNeoAI <lucas_hsueh@hotmail.com>
  inspired_by: mattpocock/skills
---

# Issue Triage

## One-Liner

Work through the issue backlog using a strict state machine — classify, route, and clear with a consistent schema the whole team (and agents) can rely on.

---

## § 1 · State Machine

Every issue carries **one category label** and **one state label**.

### Category Labels

| Label | Meaning |
|-------|---------|
| `bug` | Something is broken — actual behavior diverges from intended behavior |
| `enhancement` | Something is missing or could be better — desired behavior does not yet exist |

### State Labels

| Label | Meaning | Who acts next |
|-------|---------|--------------|
| `needs-triage` | Newly opened, not yet reviewed | Triager |
| `needs-info` | More information needed from the reporter | Reporter |
| `ready-for-agent` | Well-specified, deterministic enough for autonomous agent completion | Agent |
| `ready-for-human` | Requires human judgment, creativity, or stakeholder decision | Human engineer |
| `wontfix` | Will not be addressed; rationale documented | — (closed) |

**Rule:** An issue must have exactly one category and one state at all times.

---

## § 2 · Workflow

### Step 1 — Queue Overview

At the start of a triage session, pull three buckets:

1. **Unlabeled** — issues with no category or state label
2. **`needs-triage`** — labeled but not yet processed
3. **`needs-info` with recent activity** — reporter may have replied

Present counts and summaries. Ask the maintainer which to process first.

### Step 2 — Process Each Issue

For each issue:

1. **Read** the full issue body, linked code, and existing comments
2. **Explore the codebase** at the relevant location — don't rely on the issue description alone
3. **Classify**:
   - Assign `bug` or `enhancement`
   - If a bug: attempt to reproduce using the described steps; note success/failure
4. **Determine state**:
   - Missing information → `needs-info` (write a specific question as a comment)
   - Clear, deterministic, self-contained → `ready-for-agent`
   - Requires judgment, design decision, or stakeholder input → `ready-for-human`
   - Out of scope or will not fix → `wontfix`
5. **Confirm** your recommendation with the maintainer before applying labels
6. **Apply** labels and post the appropriate comment

### Step 3 — Comment Standards

All comments generated during triage must begin with:

> *This was generated by AI during triage.*

For `needs-info` comments, write a specific, answerable question. Not "please provide more information" — instead: "What OS and version are you running? What is the exact error message you see?"

For `ready-for-agent` issues, include an **agent brief**:
- Exact file(s) to modify
- Behavior to achieve (input/output contract)
- Edge cases to handle
- Tests that should pass

For `wontfix` enhancements, explain why clearly — future reporters will search and find this answer.

---

## § 3 · Routing Heuristics

**Route to `ready-for-agent` when:**
- The fix is localized to ≤ 3 files
- The expected behavior is unambiguous
- A test can verify the fix deterministically
- No design decision is required

**Route to `ready-for-human` when:**
- Multiple valid approaches exist and the trade-off is non-obvious
- The fix requires understanding business context not captured in the codebase
- The issue involves a UI/UX decision
- Security or privacy implications are unclear

**Route to `needs-info` when:**
- The reproduction steps are incomplete
- The expected vs actual behavior is unclear
- The environment (OS, version, config) is not specified

---

## § 4 · State Transition Rules

Valid transitions:

```
(new) → needs-triage → needs-info ↔ needs-triage
                      → ready-for-agent → (closed: fixed)
                      → ready-for-human → (closed: fixed)
                      → wontfix → (closed)
```

Flag and confirm with the maintainer before any unusual transition (e.g., re-opening a `wontfix`).

---

## § 5 · When to Use This Skill

**Use when:**
- The issue backlog has accumulated unlabeled or `needs-triage` issues
- You want to batch-route issues to agents for autonomous fixing
- Onboarding a new contributor — give them `ready-for-human` issues

**Do NOT use when:**
- Triaging a single, obviously critical production incident (handle directly)
- The issue tracker has no label support

---

## § 6 · Relationship to Other Skills

| Skill | When to reach for it |
|-------|---------------------|
| `debug-diagnose` | To reproduce a `bug` during triage |
| `to-prd` | To expand a `ready-for-human` enhancement into a full PRD |
| `zoom-out` | To orient before exploring the codebase for triage context |

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…