About triage-issues
triage-issues is a skill for batch reviewing a repository's open Gitee Issues, classifying them, and preparing an action report. It can also apply labels or request missing details after user confirmation.
Key features
- 01Fetch and paginate open Issues
- 02Classify issue types and priority
- 03Identify missing details and duplicates
- 04Generate a structured triage report
- 05Update labels after confirmation
Use cases
- 01Organize a backlog of open repository Issues
- 02Review bug reports that need reproduction details
MCP support
Uses the Gitee MCP Server to list issues, retrieve details, update issues, and post comments. It requires the repository owner and name; bulk updates require user confirmation.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ oschina/ gitee-agent-skills --skill triage-issuesAfter installing, type/triage-issuesin Claude Code to confirm it loaded.
Details
From the project READMENote: If you have
mcporterinstalled locally, you should usemcporterto invoke the MCP tool instead of directly calling the MCP tool. ThemcporterCLI provides a more convenient interface and better error handling.
Triage Issues via Gitee MCP
Batch-process a repository's Issues: classify by priority, add labels, identify duplicates, and generate a clear action list.
Prerequisites
- Gitee MCP Server configured (tools:
list_repo_issues,get_repo_issue_detail,update_issue,create_comment(resource_type: issue)) - User must provide: repository owner, repository name
- Optional: filter criteria (bugs only / unassigned only / specific milestone, etc.)
Steps
Step 1: Fetch the Issue List
Use list_repo_issues to retrieve open Issues:
state:open(open Issues only)- Paginate if there are many Issues (20 per page)
Step 2: Batch Analysis
For each Issue, quickly evaluate:
Type classification (use labels)
| Type | Label | Description |
|---|---|---|
| Bug | bug | something is broken, throwing errors, or crashing |
| Feature | feature | request for new functionality |
| Enhancement | enhancement | improvement to existing functionality |
| Question | question | usage question |
| Documentation | docs | documentation-related |
| Duplicate | duplicate | same as an existing Issue |
Common additional labels
| Label | Use Case |
|---|---|
help wanted | Needs external contribution |
wontfix | Will not be addressed |
invalid | Invalid or spam |
security | Security-related |
performance | Performance-related |
ui/ux | User interface improvements |
backend | Backend-related |
frontend | Frontend-related |
Priority assessment
P0 - Critical: affects core functionality, production bug, security vulnerabilityP1 - High: significant functional defect, affects many usersP2 - Medium: general improvement, workaround existsP3 - Low: nice-to-have, cosmetic improvement
Status assessment
- Whether there are sufficient reproduction steps (for bugs)
- Whether more information is needed
- Whether a PR is already addressing it
Step 3: Generate Triage Report
Output a structured report:
## Issue Triage Report
Repository: [owner/repo]
Date: [date]
Total open issues: [N]
---
### 🔴 P0 Critical (needs immediate attention)
| # | Title | Type | Labels | Note |
|---|-------|------|--------|------|
| #N | [title] | bug | bug, security | [one sentence explaining urgency] |
### 🟠 P1 High Priority
| # | Title | Type | Labels | Note |
|---|-------|------|--------|------|
### 🟡 P2 Medium Priority
| # | Title | Type | Labels | Note |
|---|-------|------|--------|------|
### 🟢 P3 Low Priority
| # | Title | Type | Labels | Note |
|---|-------|------|--------|------|
---
### Needs More Information
- #N [title]: [what information is missing]
### Possible Duplicates
- #N may be a duplicate of #M: [explanation]
### Recommended for Closure
- #N [title]: [reason, e.g., long inactive / already resolved another way]
Step 4: Update Issue Labels (requires user confirmation)
Ask the user whether to automatically update labels and priorities.
After confirmation, use update_issue to:
- Add type labels (
bug,feature,enhancement,question,docs,duplicate) - Add additional labels based on context (
help wanted,security, etc.) - Add priority indicator (if supported by the repository)
Label assignment examples:
- A bug report → add
buglabel - A feature request with good description → add
featurelabel - An enhancement suggestion → add
enhancementlabel - A simple question → add
questionlabel - Needs external help → add
help wanted
For Issues that need more information, use create_comment (resource_type: issue) to ask:
Thanks for submitting this issue!
To help us address it more effectively, could you please provide:
- [Missing reproduction steps]
- [Environment and version info]
- [Expected behavior vs. actual behavior]
Thank you!
Notes
- Triage focuses on classification and organization — no need to deep-dive into technical details of each Issue
- Always confirm with the user before performing bulk updates to avoid unintended changes
- If there are more than 50 Issues, consider processing in batches or filtering by a specific label
- Use consistent labels to help contributors find Issues matching their interests
- Check existing labels in the repository first — some projects may have custom label names