GitHub Labels Skill
Purpose
Prevents "label not found" errors when creating GitHub issues by providing agents with the current valid label taxonomy.
Valid Labels (Current Repository)
Standard Labels
bug- Something isn't workingdocumentation- Improvements or additions to documentationduplicate- This issue or pull request already existsenhancement- New feature or requestgood first issue- Good for newcomershelp wanted- Extra attention is neededinvalid- This doesn't seem rightquestion- Further information is requestedwontfix- This will not be worked on
Document Types
adr- Architecture Decision Recordrfc- Request for Comments (deprecated per ADR-0060)
Priority Levels
priority:p0-critical- Blocking production or critical pathpriority:p1-high- Important, should be addressed soonpriority:p2-medium- Normal prioritypriority:p3-low- Nice to have
Development Phases
phase:b1- B1: Foundation phasephase:b2- B2: Features phasephase:future- Future consideration
Area Tags
area:mcp-tools- MCP tool implementationarea:governance- Governance systemarea:ci-cd- CI/CD pipelinearea:agents- Agent system
Status Tags
status:blocked- Blocked by dependenciesstatus:needs-discussion- Needs team discussionstatus:implementation-pending- Approved, waiting for implementationstatus:draft- Draft/work in progressobsolete- No longer relevant
Milestone Tags
milestone:b1-foundation- B1 milestonemilestone:b2-features- B2 milestonemilestone:b3-integration- B3 milestone
Special Tags
epic- Epic tracking issueoctave-integration- OCTAVE integration work
Usage Pattern
Before creating a GitHub issue:
# 1. Verify current labels (labels can change over time)
gh label list --json name --jq '.[].name'
# 2. Create issue with ONLY valid labels
gh issue create \
--title "Issue Title" \
--label "enhancement,priority:p2-medium,phase:b1" \
--body "Issue description"
Common Mistakes to Avoid
❌ Don't use:
p0,p1,p2,p3(missingpriority:prefix)b1,b2(missingphase:prefix)mcp-tools,governance(missingarea:prefix)- Custom labels that don't exist
✅ Do use:
priority:p0-critical,priority:p1-highphase:b1,phase:b2area:mcp-tools,area:governance- Exact label names from the valid list above (including spaces when present, e.g.,
good first issue)
Auto-Validation
The ~/.claude/hooks/pre_tool_use/validate-gh-labels.sh hook automatically:
- Intercepts Bash tool before
gh issue createexecutes - Validates labels against current repository labels (cached 5min)
- Removes invalid labels
- Warns you about changes
If you see a warning, check this skill for the correct label names.
Dynamic Label Lookup
To get the current label list programmatically:
gh label list --json name,description --jq '.[] | "\(.name): \(.description)"'
Integration with Hooks
This skill works in tandem with the label validation hook to:
- Prevent errors before they happen
- Save time by avoiding re-writes
- Educate agents about valid taxonomy
Escalation
If you need a new label that doesn't exist:
- Discuss with the team first
- Create label via:
gh label create <name> --description "..." --color <hex> - Update this skill documentation
Converted and distributed by TomeVault — claim your Tome and manage your conversions.