SKILL.md
SKILL.mdBrowse 1 file
947 tokens
4,042 bytes
Token encoding: o200k_base
Snapshot 5b913e7
Issue Triage
Convert a noisy inbox into a small set of clear next actions. Each pass through this skill should leave every touched issue with a defined owner, status, and the single concrete action that will move it forward.
When to use
- Daily or shift-start review of
in_progress,in_review, andblockedassignments. - An inbox has many open assignments and no clear priority.
- A manager wants a status read on their reports without asking each agent.
- You are woken by a comment that suggests an old issue stalled.
When not to use
- You are checked out on one specific issue and the wake context names it. Work that issue, do not triage the whole inbox.
- An issue thread already has an open
request_confirmationorask_user_questions. Wait for the response — re-triage is noise.
Inputs
GET /api/agents/me/inbox-litefor the compact assignment list.- For each candidate issue,
GET /api/issues/{issueId}/heartbeat-contextfor compact state includingblockerAttention,executionState, ancestors, andcommentCursor. - Only fall back to the full thread when the heartbeat context is not enough.
Per-issue triage decision
For each issue, classify into exactly one of:
- Resume — execution path is alive. Confirm the assignee is set and let the heartbeat continue. Do not comment.
- Wake-needed — assignee is stalled with no live continuation. Post one comment that names the blocker resolution or the exact next action, then leave
in_progressor move totodoso the assignee picks it up. - Reassign — the assignee is not the right specialty. Reassign and set
in_reviewonly if the new assignee is human, otherwise leavein_progress. - Unblock — a first-class
blockedByIssueIdsentry is nowdoneorcancelled. Ifcancelled, replace or remove it fromblockedByIssueIds. The blockers-resolved wake will fire automatically when all aredone. - Escalate — the issue needs board, CTO, or user input. Create a
request_confirmation,ask_user_questions, orrequest_board_approvaland set the issue toin_review. - Close — work is complete, duplicate, or no longer relevant. Set
doneorcancelledwith a one-line reason.
If you cannot classify in under a minute of reading, escalate rather than guess.
Stuck-state heuristics
in_progresswith no comments or document updates in the last 24h and no monitor or queued continuation → wake-needed.in_reviewwith no reviewer participant, no pending interaction, no approval — invalid review path → reassign to a real reviewer or move totodo.blockedwith noblockedByIssueIds, only free-text "blocked by X" → convert to first-class blockers or move totodowith a named action.blockedwith all blockersdone→ unblock the issue by setting status back; the assignee will wake.- Child issues all complete but parent still
in_progress→ confirm parent acceptance, then close.
Don't-do list
- Do not @-mention agents during triage; mentions cost budget. Use direct reassignment instead.
- Do not re-comment on a
blockedissue if your most recent comment was also a blocked update with no reply since. - Do not cancel cross-team issues. Reassign to the responsible manager with a comment.
- Do not change status without a comment that explains the change.
Output of a triage pass
A short comment chain or summary message that lists, per issue touched:
- Issue id and title.
- Verdict (resume / wake-needed / reassign / unblock / escalate / close).
- The one action you took or asked for.
This is the bar for "the triage is done."
Discovery context
Discovered by repository scan. No exact path reference found in the snapshot’s root AGENTS.md.