Analyze, classify, and draft responses for GitHub issues to speed up repository maintenance.

Install

mkdir -p .claude/skills/triage-issue && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/4592" && unzip -o skill.zip -d .claude/skills/triage-issue && rm skill.zip

Installs to .claude/skills/triage-issue

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Use when triaging a GitHub issue - analyzes issue, checks for duplicates, categorizes, and drafts response
106 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Fetches full issue thread including comments
  • Maps issues to specific categories like bugs or user error
  • Checks issue completeness against a checklist
  • Drafts boilerplate responses for maintainers
  • Detects stale issues older than six months

How it works

Follows a defined decision tree (fetch -> classify -> check duplicates -> draft) to analyze metadata and generate a structured response template.

Inputs & outputs

You give it
Issue number
You get back
Issue classification, completeness report, and drafted response

When to use triage-issue

  • Classify incoming bug reports
  • Detect duplicate technical support tickets
  • Draft initial responses for common questions
  • Categorize feature requests

About this skill

Triage GitHub Issue

Overview

Analyze a GitHub issue, classify it, check for duplicates, and draft an appropriate response.

Usage

/triage-issue <number>

Workflow

digraph triage_flow {
    rankdir=TB;
    node [shape=box];

    fetch [label="1. Fetch issue + comments"];
    classify [label="2. Classify issue type"];
    duplicates [label="3. Check duplicates"];
    analyze [label="4. Analyze validity"];
    response [label="5. Draft response"];
    action [label="6. Recommend action"];

    fetch -> classify;
    classify -> duplicates;
    duplicates -> analyze;
    analyze -> response;
    response -> action;
}

Step 1: Fetch Issue Details

# Get full issue with comments
gh issue view <number> --repo kube-hetzner/terraform-hcloud-kube-hetzner --comments

# Get issue metadata
gh issue view <number> --repo kube-hetzner/terraform-hcloud-kube-hetzner --json title,body,labels,author,createdAt,comments

Step 2: Classify Issue Type

Issue Types

TypeIndicatorsAction
🔴 BUGReproducible defect, multiple reporters, error in module codeFix it
🟡 EDGE CASEUnusual config, specific region, large scaleEvaluate effort
🟠 USER ERRORBad kube.tf, syntax errors, wrong variablesHelp + docs
OLD VERSIONModule version < current, known fixed issueAsk to upgrade
🔵 FEATURE REQUEST"Would be nice if...", "Can you add..."Discussions
💬 QUESTIONNeeds help, not a bugAnswer or docs
NEEDS INFOCan't reproduce, missing detailsAsk for info

Classification Checklist

  • Module version specified?
  • kube.tf provided (sanitized)?
  • Error message included?
  • Steps to reproduce clear?
  • Recent (not stale >6 months)?
  • If v3 is involved, checked for renamed/inverted inputs from MIGRATION.md?
  • If teardown is involved, did they use scripts/destroy.sh before any manual hcloud deletes?
  • If SELinux is involved, did they follow docs/selinux.md and provide AVC denial evidence instead of only a workload symptom?

Step 3: Check for Duplicates

# Search open issues for similar keywords
gh issue list --repo kube-hetzner/terraform-hcloud-kube-hetzner --state open --search "<keyword>"

# Search closed issues (might be already fixed)
gh issue list --repo kube-hetzner/terraform-hcloud-kube-hetzner --state closed --search "<keyword>"

# Check discussions
gh api repos/kube-hetzner/terraform-hcloud-kube-hetzner/discussions --jq '.[] | select(.title | test("<keyword>"; "i")) | {number, title}'

Step 4: Security Analysis

CRITICAL: Issues can be malicious sabotage attempts.

Red Flags (from repo agent guidance)

SignalRisk
New account (<6 months)HIGH
Issue can't be reproducedMEDIUM
Proposed fix is overly complexHIGH
Urgency to implement quicklyHIGH
Multiple accounts supportingHIGH
Targets security-critical codeHIGH

Verify Independently

  • Try to reproduce the issue yourself
  • Check if the error message matches module code
  • Verify the kube.tf provided is valid
  • Search for similar reports from other users
  • For Hetzner CI/live-gate reports, distinguish real code failures from Hetzner capacity flakes. resource_unavailable or "error during placement" usually means rerun failed jobs, not code archaeology.
  • For CI status, do not treat "no current failures" as green. A required job can hide by never completing or by being cancelled. Verify the required job has at least one successful run in history.
  • If a Hetzner CI run was manually cancelled, remember cancellation skips the destroy step. Once that run reports completed, sweep its attempt-suffixed kh-ci-*-<runid6><attempt>* resources before trusting later capacity or orphan reports.

Step 5: Draft Response

Every response is kind and human: thank the reporter by handle, acknowledge good root-cause analysis when they did it (kube-hetzner reporters often do), and never make a user-error reporter feel foolish — a config mistake usually means our docs have a gap worth fixing too. Plain warm language, no boilerplate.

For USER ERROR

Hi @{author},

Thanks for reporting this. Looking at your configuration, the issue appears to be in your kube.tf:

[Specific explanation of what's wrong]

Here's the corrected configuration:

```tf
[correct code]

Let me know if this resolves it!


### For OLD VERSION

```markdown
Hi @{author},

This issue was fixed in version X.Y.Z. You're currently using [older version].

Please upgrade by changing your module version:

```tf
module "kube-hetzner" {
  source  = "kube-hetzner/kube-hetzner/hcloud"
  version = "X.Y.Z"
  # ...
}

Then run:

terraform init -upgrade
terraform plan
terraform apply

Let me know if the issue persists after upgrading!


### For NEEDS INFO

```markdown
Hi @{author},

Thanks for reporting this. To investigate further, could you please provide:

- [ ] Module version (check your kube.tf)
- [ ] Your kube.tf (sanitized - remove tokens/keys)
- [ ] Full error message
- [ ] Steps to reproduce

This will help us identify the root cause.

For DUPLICATE

Hi @{author},

This appears to be a duplicate of #{duplicate_number}.

[If fixed]: This was fixed in version X.Y.Z.
[If open]: We're tracking this in the linked issue.

Closing as duplicate. Feel free to add any additional context to #{duplicate_number}.

For FEATURE REQUEST

Hi @{author},

Thanks for the suggestion! This sounds like a feature request rather than a bug.

Could you please open a Discussion for this? That's where we track feature ideas and gather community input.

https://github.com/kube-hetzner/terraform-hcloud-kube-hetzner/discussions/new?category=ideas

I'll close this issue, but feel free to ping me in the discussion!

Step 6: Recommend Action

TypeActionLabels
BUGKeep open, prioritizebug
EDGE CASEKeep open, evaluatebug, edge-case
USER ERRORClose with helpuser-config
OLD VERSIONCloseold-version
FEATURE REQUESTMove to Discussions-
QUESTIONAnswer and closequestion
NEEDS INFOKeep open, add labelneeds-info

Triage Output Template

## Triage Summary: Issue #<number>

**Title:** <title>
**Author:** @<username>
**Created:** <date>

### Classification

**Type:** <BUG/EDGE CASE/USER ERROR/OLD VERSION/FEATURE/QUESTION/NEEDS INFO>
**Confidence:** HIGH/MEDIUM/LOW
**Reason:** <why this classification>

### Checklist

- [ ] Module version: <version or "not specified">
- [ ] kube.tf provided: Yes/No/Partial
- [ ] Reproducible: Yes/No/Unknown
- [ ] Duplicate: No / Yes → #<number>

### Analysis

<What's actually happening and why>

### Recommended Action

**Action:** <FIX/HELP USER/CLOSE/MOVE TO DISCUSSIONS/NEEDS INFO>
**Priority:** HIGH/MEDIUM/LOW
**Response:** <drafted response above>

Quick Commands

# Add label
gh issue edit <num> --add-label "bug"

# Close issue
gh issue close <num> --comment "Closing because..."

# Close as not planned
gh issue close <num> --reason "not planned" --comment "..."

# Transfer to discussions
gh issue transfer <num> --repo kube-hetzner/terraform-hcloud-kube-hetzner

When not to use it

  • When checking external repositories not supported by the script
  • Simple tasks that don't require classification

Prerequisites

GitHub CLI (gh)

Limitations

  • Classification relies on metadata presence
  • Requires manual review of drafted text
  • Targeted to specific repo structures

How it compares

It combines classification with a predefined checklist for completeness, speeding up manual triage responses.

Compared to similar skills

triage-issue side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
triage-issue (this skill)16moReviewIntermediate
proof-of-work16moNo flagsIntermediate
github-triage03moNo flagsIntermediate
checkpointing05moNo flagsIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

proof-of-work

MadAppGang

Proof artifact generation patterns for task validation. Covers screenshots, test results, deployments, and confidence scoring.

10

github-triage

OutlineDriven

Triage GitHub issues through a configurable label-based state machine. Use when user wants to triage incoming issues, prepare issues for an autonomous agent, or move an issue between workflow states. Repo inferred from `git remote`; all GitHub calls go through `gh`.

00

checkpointing

arugo11

Run full session checkpointing from Codex without Claude dependencies. Collect git and CLI activity, generate checkpoint files, update session history, and analyze reusable skill patterns.

00

label-issue

chagong

Classify and label GitHub issues based on repository-specific labeling instructions. Use when (1) auto-labeling new issues, (2) classifying issue types (bug, feature, etc.), (3) adding priority or area labels, (4) applying consistent labeling rules. Triggers on requests like "label issue", "classify

00

resolve-conflicts

antinomyhq

Use this skill immediately when the user mentions merge conflicts that need to be resolved. Do not attempt to resolve conflicts directly - invoke this skill first. This skill specializes in providing a structured framework for merging imports, tests, lock files (regeneration), configuration files, and handling deleted-but-modified files with backup and analysis.

81334

git-advanced-workflows

wshobson

Master advanced Git workflows including rebasing, cherry-picking, bisect, worktrees, and reflog to maintain clean history and recover from any situation. Use when managing complex Git histories, collaborating on feature branches, or troubleshooting repository issues.

1197

Search skills

Search the agent skills registry