ワンクリックで
issue-triage
Fetch open GitHub issues and produce a read-only triage report with quick wins and recommended groupings.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Fetch open GitHub issues and produce a read-only triage report with quick wins and recommended groupings.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Audit corpus and highlight tests for tests that pass for the wrong reason — designed to pass rather than designed to catch regressions.
Fix multiple GitHub issues on an integration branch. Issues touching different areas (grammar, scanner, queries, bindings, tests) run in parallel worktrees; issues sharing an area or affecting cross-binding code run sequentially. Each goes through fix, simplify, review, and remediation before merging. Use when asked to fix several issues at once.
Complete workflow for fixing GitHub issues — investigation, implementation, review, testing, documentation.
Read a GitHub issue, develop a resolution plan via sequential thinking, rate difficulty/complexity/priority, label low-priority when warranted.
Review project activity (issues, commits, changelog) and draft entries for docs/lessons_learned.md.
Audit grammar / query / binding changes for correctness, performance, and quality. Use when asked to review changes, diffs, or pull requests.
| name | issue-triage |
| description | Fetch open GitHub issues and produce a read-only triage report with quick wins and recommended groupings. |
Generate a triage report for open issues. Read-only — no creation, modification, or closing.
Argument: $ARGUMENTS
<component> → filter by title prefix matching a component
(grammar, scanner, queries, bindings, tests, spec)ensure_label() {
local name="$1" color="$2" desc="$3"
if ! gh label list --limit 200 --json name --jq '.[].name' | grep -qx "$name"; then
gh label create "$name" --color "$color" --description "$desc"
fi
}
ensure_label grammar "1d76db" "Touches grammar.js"
ensure_label scanner "1d76db" "Touches src/scanner.c"
ensure_label queries "1d76db" "Touches queries/"
ensure_label bindings "1d76db" "Touches bindings/"
ensure_label spec "1d76db" "Touches SPECIFICATION.md"
ensure_label upstream-apache-groovy "fbca04" "Depends on an Apache Groovy language change"
ensure_label refactor "fbca04" "Refactor without behavior change"
ensure_label security "ee0701" "Security-relevant finding"
bug, enhancement, documentation already exist on most repos.
(
gh issue list --state open --label bug --limit 200 --json number,title,labels,body
gh issue list --state open --label enhancement --limit 200 --json number,title,labels,body
gh issue list --state open --label refactor --limit 200 --json number,title,labels,body
gh issue list --state open --label documentation --limit 200 --json number,title,labels,body
gh issue list --state open --label security --limit 200 --json number,title,labels,body
gh issue list --state open --label upstream-apache-groovy --limit 200 --json number,title,labels,body
) | jq -s '
add
| unique_by(.number)
| [ .[] | select([ .labels[].name ] | any(. == "low-priority") | not) ]
'
Filter further if $ARGUMENTS names a component. Save the result.
Titles mislead. For each issue, read the full body. Note: scope, complexity signals (cross-binding work, AST shape change, scanner involvement), dependencies on other issues, root cause hints.
src/scanner.cupstream-apache-groovy label (depends on an Apache Groovy
language change before it can be fixed locally)SPECIFICATION.md (design decisions need
discussion before code)Err on the side of NOT classifying as a quick win.
A group requires 2+ issues.
grammar, scanner, queries, bindings/<lang>, tests, spec.
SPECIFICATION.md section: multiple issues against §3
(operators), §4 (statements), §5 (edge cases), §6 (scanner).Do NOT force groupings.
Every fetched issue must appear in exactly one section.
## Issue Triage Report
**Scope**: all | <component>
**Issues analyzed**: N
**Date**: YYYY-MM-DD
### Quick Wins
| # | Title | Why it's a quick win |
|---|-------|----------------------|
### Recommended Groupings
| Group | Issues | Rationale |
|-------|--------|-----------|
### Remaining Issues
| # | Title | Notes |
|---|-------|-------|
---
**Quick wins**: #X, #Y, #Z
**Grouped**: [#A, #B], [#C, #D], #E
If a section is empty, keep the header and write "None".
low-priority-labeled issues never appear.