Awesome-omni-skill github-issue-triage

Analyze GitHub issues for the Nx repository and provide assignment recommendations based on technology stack, team expertise, and priority classification rules.

install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/github-issue-triage-frozenpandaz" ~/.claude/skills/diegosouzapw-awesome-omni-skill-github-issue-triage && rm -rf "$T"
manifest: skills/tools/github-issue-triage-frozenpandaz/SKILL.md
source content

GitHub Issue Triage Skill

This skill provides comprehensive logic for triaging GitHub issues in the Nx repository.

Team Expertise Mapping

Primary Team Members

  • @barbados-clemens - Documentation, lifecycle hooks, developer experience, API docs
  • @lourw - Java/Gradle
  • @leosvelperez - Angular (primary), TypeScript, testing tools (Jest/Cypress/Playwright), ESLint issues
  • @Coly010 - Webpack/Rollup/Rspack configs, Module Federation, Storybook, Vue, bundler optimization, React Native, Nx Release, Publishing, migration utilities, React, Node/NestJS/Express, NextJS, Remix, create-nx-workspace, preset issues
  • @AgentEnder - Nx Core (caching/daemon/graph), installation issues, plugin system, devkit, affected calculation

Assignment Logic (Check in Order)

1. Technology Keywords in Title/Body

Look for these keywords and match to assignees:

KeywordsAssigneeReason
"Angular", "ng serve", "@angular"@leosvelperezAngular specialist
"Nest", "NestJS", "@nx/nest"@Coly010Backend framework support
"Next", "NextJS", "@nx/next"@Coly010Framework support
"React", "@nx/react"@Coly010Framework support
"webpack", "rollup", "rspack", "bundler"@Coly010Bundler expertise
"Module Federation", "MF"@Coly010Advanced bundling feature
"create-nx-workspace", "preset"@Coly010Workspace setup
"cache", "daemon", "affected", "nx reset"@AgentEnderNx core functionality
"plugin", "generator", "executor"@AgentEnderPlugin system & devkit
"docs", "documentation", "lifecycle"@barbados-clemensDocumentation focus

2. Error Pattern Analysis

Examine error messages and stack traces to identify:

  • Compilation/build failures with Angular → @leosvelperez
  • Webpack configuration errors → @Coly010
  • Installation/dependency issues → @AgentEnder
  • Preset/generator failures → Check technology first, fallback to @AgentEnder

3. Scope Assignment

Match scope labels to technology:

  • Use
    scope: angular
    for Angular-specific issues
  • Use
    scope: react
    for React-specific issues
  • Use
    scope: node
    for Node/NestJS/Express issues
  • Use
    scope: bundlers
    for webpack/rollup/rspack issues
  • Use
    scope: core
    only for caching/daemon/graph issues
  • Use
    scope: misc
    for installation/setup issues
  • Use
    scope: dx
    for documentation/developer experience issues

Priority Classification Rules

Apply priorities conservatively:

PriorityCriteria
HighBlocks many users (workspace creation failures, compilation blockers, security CVEs)
MediumStandard bugs, configuration issues, generator problems
LowDocumentation improvements, UI enhancements, edge cases

Validation Steps

Before finalizing assignments:

  1. Check issue body for actual error messages and stack traces
  2. Review reproduction steps to identify the root problem area
  3. Consider scope - does this affect a specific framework or Nx core?
  4. Verify priority - how many users would be blocked?
  5. Cross-check - does the technology keyword match the actual problem?

Bulk Operations

Assignment Command Template

# Assign single issue
gh issue edit 12345 --repo nrwl/nx --add-assignee username

# Batch assign to same person
gh issue edit 12345 12346 12347 --repo nrwl/nx --add-assignee username

# Batch assign to different people (sequential)
gh issue edit 12345 12346 --repo nrwl/nx --add-assignee user1
gh issue edit 12347 12348 --repo nrwl/nx --add-assignee user2

Label Command Template

# Apply scope labels
gh issue edit 12345 12346 --repo nrwl/nx --add-label "scope: angular"

# Apply priority labels
gh issue edit 12345 --repo nrwl/nx --add-label "priority: high"
gh issue edit 12346 12347 --repo nrwl/nx --add-label "priority: medium"

Browser Verification (MANDATORY)

After all assignments are complete, open every assigned issue in the browser for manual review.

Command by OS

macOS:

for issue in ISSUE_NUMBERS; do open "https://github.com/nrwl/nx/issues/$issue"; done

Linux:

for issue in ISSUE_NUMBERS; do xdg-open "https://github.com/nrwl/nx/issues/$issue"; done

Windows:

for issue in ISSUE_NUMBERS; do start "https://github.com/nrwl/nx/issues/$issue"; done

Alternative (CLI-based, one at a time):

gh issue view ISSUE_NUMBER --repo nrwl/nx --web

Workflow Best Practices

  1. Always inspect the full issue - Don't assign based on title alone
  2. Check comments - Users often provide context in discussions
  3. Look for duplicate markers - Sometimes issues reference others
  4. Consider workload - Don't overload one assignee
  5. Validate assignments - Browser verification is non-negotiable
  6. Document reasoning - Leave a comment explaining the assignment if complex

Assignment Examples

Example 1: Angular + Build Issue

  • Title: "Angular build fails with Module Federation setup"
  • Keywords: "Angular", "Module Federation", "build fails"
  • Recommendation: @Coly010 (bundler + framework specialist)
  • Scope:
    scope: bundlers
  • Priority:
    priority: high
    (blocks users from building)

Example 2: Installation Problem

  • Title: "npm install fails with peer dependency conflict"
  • Keywords: "install", "dependency"
  • Recommendation: @AgentEnder (installation issues)
  • Scope:
    scope: misc
  • Priority:
    priority: high
    (blocks workspace setup)

Example 3: Documentation Request

  • Title: "Add lifecycle hooks documentation"
  • Keywords: "docs", "documentation", "lifecycle"
  • Recommendation: @barbados-clemens (documentation specialist)
  • Scope:
    scope: dx
  • Priority:
    priority: low
    (enhancement, not blocking)