Analyze unlabeled GitHub issues and generate label recommendations for review. Supports batch submission after approval.
Generate label recommendations for unlabeled GitHub issues, review them, then submit in batch.
# Fetch unlabeled issues and analyze them
./scripts/analyze.sh owner/repo
This creates recommendations.json with suggested labels for each issue.
# Launch the review UI
./scripts/serve.sh
The UI shows:
After reviewing in the UI, export approved recommendations and run:
# Apply approved labels
./scripts/apply.sh recommendations-approved.json
Or use the "Submit All" button in the UI to apply via gh CLI.
The analyzer suggests labels from these categories:
| Category | Labels |
|---|---|
| Type | bug, enhancement, question, documentation |
| Priority | priority-1, priority-2, priority-3 |
| Status | triage, needs-info, investigating, confirmed |
| Area | (detected from content: auth, cli, api, ui, etc.) |
For each unlabeled issue, the LLM analyzes:
issue-labeler/
āāā SKILL.md # This file
āāā review.html # Review UI for recommendations
āāā scripts/
ā āāā analyze.sh # Fetch and generate recommendations
ā āāā apply.sh # Apply approved labels
ā āāā serve.sh # Launch review UI
āāā recommendations.json # Generated recommendations (git-ignored)
āāā approved.json # Approved recommendations (git-ignored)
{
"number": 123,
"title": "App crashes when clicking submit",
"current_labels": [],
"recommended_labels": ["bug", "priority-2", "needs-info"],
"confidence": 0.85,
"reasoning": "Title indicates crash (bug). No repro steps provided (needs-info). User-facing issue (priority-2).",
"approved": null
}
./scripts/apply.sh --dry-rungh CLI authenticated with write access to issuesgh auth status to verify permissions--limit flag