Token导航 LogoToken导航

Agent Skill · 研究检索

triage-issue(分类问题)

用于围绕 GitHub 仓库、Issue、Pull Request、分支、提交和代码协作流程提供辅助能力。它适合让 Agent 查询项目状态、整理变更、辅助创建或检查协作事项,并把仓库中的信息转成可执行的下一步。使用时需要区分只读查询和写入操作;涉及创建 PR、修改 Issue、推送分支或访问私有仓库时,应确认 token 权限、目标仓库范围和用户授权。

triage-issue 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为需要联网;许可证信息还不明确,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 36,231。

总安装 1,958周安装 80GitHub Stars 627下载 634核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:triage-issue(分类问题)
来源仓库:https://github.com/atlassian/atlassian-mcp-server
仓库路径:skills/triage-issue
安装命令:
npx skills add https://github.com/atlassian/atlassian-mcp-server --skill triage-issue
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/atlassian/atlassian-mcp-server --skill triage-issue

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

triage-issue 自动分析错误消息或 Bug 描述,在 Jira 中搜索相似历史问题并推荐处理动作。它能判断是否为重复 issue、建议分配负责人或创建新 ticket,减少人工排查时间。使用时需提供错误日志片段或问题描述,Agent 会返回匹配度最高的现有工单链接。

写入操作(如新建 Issue)需确认用户权限,避免创建无效或重复条目。适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

来源仓库内路径:skills/triage-issue

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/atlassian/atlassian-mcp-server --skill triage-…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

triage-issue 怎么安装?

在终端执行 npx skills add https://github.com/atlassian/atlassian-mcp-server --skill triage-issue。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

triage-issue 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

triage-issue 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

triage-issue 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

triage-issue 用的人多吗?

公开数据是累计安装 1,958 次,近一周安装 80 次,下载 634 次,GitHub 627 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

triage-issue 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
triage-issue

分类问题 · 本页

1,958627需要联网未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Triage Issue

Keywords

triage bug, check duplicate, is this a duplicate, search for similar issues, create bug ticket, file a bug, report this error, triage this error, bug report, error message, similar issues, duplicate bug, who fixed this, has this been reported, search bugs, find similar bugs, create issue, file issue

Overview

Automatically triage bug reports and error messages by searching Jira for duplicates, identifying similar past issues, and helping create well-structured bug tickets or add context to existing issues. This skill eliminates manual duplicate checking and ensures bugs are properly documented with relevant historical context.

Use this skill when: Users need to triage error messages, bug reports, or issues to determine if they're duplicates and take appropriate action.


Workflow

Follow this 6-step process to effectively triage issues:

Step 1: Extract Key Information

Analyze the bug report or error message to identify search terms.

Extract These Elements:

Error signature:

  • Error type or exception name (e.g., "NullPointerException", "TimeoutError")
  • Error code or status (e.g., "500", "404", "ERR_CONNECTION_REFUSED")
  • Specific error message text (key phrases, not full stack trace)

Context:

  • Component or system affected (e.g., "authentication", "payment gateway", "API")
  • Environment (e.g., "production", "staging", "mobile app")
  • User actions leading to error (e.g., "during login", "when uploading file")

Symptoms:

  • Observable behavior (e.g., "page blank", "infinite loading", "data not saving")
  • Impact (e.g., "users can't login", "payments failing")
Example Extractions:

Input: "Users getting 'Connection timeout' error when trying to login on mobile app" Extracted:

  • Error: "Connection timeout"
  • Component: "login", "mobile app"
  • Symptom: "can't login"

Input: "NullPointerException in PaymentProcessor.processRefund() line 245" Extracted:

  • Error: "NullPointerException"
  • Component: "PaymentProcessor", "refund"
  • Location: "processRefund line 245"

Step 2: Search for Duplicates

Search Jira using extracted keywords to find similar or duplicate issues.

Search Strategy:

Execute multiple targeted searches to catch duplicates that may use different wording:

Search 1: Error-focused

searchJiraIssuesUsingJql(
  cloudId="...",
  jql='project = "PROJ" AND (text ~ "error signature" OR summary ~ "error signature") AND type = Bug ORDER BY created DESC',
  fields=["summary", "description", "status", "resolution", "created", "updated", "assignee"],
  maxResults=20
)

Search 2: Component-focused

searchJiraIssuesUsingJql(
  cloudId="...",
  jql='project = "PROJ" AND text ~ "component keywords" AND type = Bug ORDER BY updated DESC',
  fields=["summary", "description", "status", "resolution", "created", "updated", "assignee"],
  maxResults=20
)

Search 3: Symptom-focused

searchJiraIssuesUsingJql(
  cloudId="...",
  jql='project = "PROJ" AND summary ~ "symptom keywords" AND type = Bug ORDER BY priority DESC, updated DESC',
  fields=["summary", "description", "status", "resolution", "created", "updated", "assignee"],
  maxResults=20
)
Search Tips:

Use key terms only:

  • ✅ "timeout login mobile"
  • ✅ "NullPointerException PaymentProcessor refund"
  • ❌ "Users are getting a connection timeout error when..." (too verbose)

Search recent first:

  • Order by created DESC or updated DESC to find recent similar issues
  • Recent bugs are more likely to be relevant duplicates

Don't over-filter:

  • Include resolved issues (might have been reopened or regression)
  • Search across all bug statuses to find fix history

Step 3: Analyze Search Results

Evaluate the search results to determine if this is a duplicate or a new issue.

Duplicate Detection:

High confidence duplicate (>90%):

  • Exact same error message in summary or description
  • Same component + same error type
  • Recent issue (< 30 days) with identical symptoms
  • Action: Strongly recommend adding comment to existing issue

Likely duplicate (70-90%):

  • Similar error with slight variations
  • Same component but different context
  • Resolved issue with same root cause
  • Action: Present as possible duplicate, let user decide

Possibly related (40-70%):

  • Similar symptoms but different error
  • Same component area but different specific error
  • Old issue (> 6 months) that might be unrelated
  • Action: Mention as potentially related

Likely new issue (<40%):

  • No similar issues found
  • Different error signature and component
  • Unique symptom or context
  • Action: Recommend creating new issue
Check Fix History:

If similar resolved issues are found:

Extract relevant information:

  • Who fixed it? (assignee on resolved issues)
  • How was it fixed? (resolution comment or linked PRs)
  • When was it fixed? (resolution date)
  • Has it regressed? (any reopened issues)

Present this context to help with triage decision.


Step 4: Present Findings to User

CRITICAL: Always present findings and wait for user decision before taking any action.

Format for Likely Duplicate:
🔍 **Triage Results: Likely Duplicate**

I found a very similar issue already reported:

**PROJ-456** - Connection timeout during mobile login
Status: Open | Priority: High | Created: 3 days ago
Assignee: @john.doe
https://yoursite.atlassian.net/browse/PROJ-456

**Similarity:**
- Same error: "Connection timeout"
- Same component: Mobile app login
- Same symptoms: Users unable to login

**Difference:**
- Original report mentioned iOS specifically, this report doesn't specify platform

**Recommendation:** Add your details as a comment to PROJ-456

Would you like me to:
1. Add a comment to PROJ-456 with your error details
2. Create a new issue anyway (if you think this is different)
3. Show me more details about PROJ-456 first
Format for Possibly Related:
🔍 **Triage Results: Possibly Related Issues Found**

I found 2 potentially related issues:

**1. PROJ-789** - Mobile app authentication failures
Status: Resolved | Fixed: 2 weeks ago | Fixed by: @jane.smith
https://yoursite.atlassian.net/browse/PROJ-789

**2. PROJ-234** - Login timeout on slow connections
Status: Open | Priority: Medium | Created: 1 month ago
https://yoursite.atlassian.net/browse/PROJ-234

**Assessment:** Your error seems related but has unique aspects

**Recommendation:** Create a new issue, but reference these related tickets

Would you like me to create a new bug ticket?
Format for No Duplicates:
🔍 **Triage Results: No Duplicates Found**

I searched Jira for:
- "Connection timeout" errors
- Mobile login issues
- Authentication failures

No similar open or recent issues found.

**Recommendation:** Create a new bug ticket

**Note:** I found 1 old resolved issue (PROJ-123 from 8 months ago) about login timeouts, but it was for web, not mobile, and was resolved as "configuration error."

Would you like me to create a new bug ticket for this issue?

Step 5: Execute User Decision

Based on user's choice, either add a comment or create a new issue.

Option A: Add Comment to Existing Issue

If user wants to add to existing issue:

Fetch the full issue first to understand context:

getJiraIssue(
  cloudId="...",
  issueIdOrKey="PROJ-456"
)

Then add the comment:

addCommentToJiraIssue(
  cloudId="...",
  issueIdOrKey="PROJ-456",
  commentBody="[formatted comment - see below]"
)

Comment Structure:

## Additional Instance Reported

**Reporter:** [User's name or context]
**Date:** [Current date]

**Error Details:**
[Paste relevant error message or stack trace]

**Context:**
- Environment: [e.g., Production, iOS 16.5]
- User Impact: [e.g., 50+ users affected in last hour]
- Steps to Reproduce: [if provided]

**Additional Notes:**
[Any unique aspects of this instance]

---
*Added via triage automation*
Option B: Create New Issue

If user wants to create new issue:

First, check available issue types:

getJiraProjectIssueTypesMetadata(
  cloudId="...",
  projectIdOrKey="PROJ"
)

Determine appropriate issue type:

  • For bugs/errors → Use "Bug" (if available)
  • For issues without errors → Use "Task" or "Issue"
  • Fallback → First available non-Epic, non-Subtask type

Create the issue:

createJiraIssue(
  cloudId="...",
  projectKey="PROJ",
  issueTypeName="Bug",
  summary="[Clear, specific summary - see below]",
  description="[Detailed description - see below]",
  additional_fields={
    "priority": {"name": "Medium"}  # Adjust based on user input severity assessment
  }
)

Summary Format: Use the pattern: [Component] [Error Type] - [Brief Symptom]

Examples:

  • ✅ "Mobile Login: Connection timeout during authentication"
  • ✅ "Payment API: NullPointerException in refund processing"
  • ✅ "Dashboard: Infinite loading on reports page"
  • ❌ "Error in production" (too vague)
  • ❌ "Users experiencing issues" (not specific)

Description Structure:

## Issue Description
[1-2 sentence summary of the problem]

## Error Details

[Error message or stack trace]

## Environment
- **Platform:** [e.g., Mobile iOS, Web, API]
- **Version:** [if known]
- **Environment:** [Production/Staging/etc]

## Steps to Reproduce
1. [Step 1]
2. [Step 2]
3. [Step 3]

## Expected Behavior
[What should happen]

## Actual Behavior
[What actually happens]

## User Impact
- **Frequency:** [e.g., Every time, Intermittent]
- **Affected Users:** [e.g., All users, Mobile users only]
- **Severity:** [e.g., Users cannot complete checkout]

## Additional Context
[Any other relevant information]

## Related Issues
[If applicable, reference similar issues found during triage]
- See also: PROJ-123 (similar but resolved)

---
*Created via automated triage*

Step 6: Provide Summary

After taking action, confirm what was done.

If Comment Added:
✅ **Comment Added Successfully**

Added details to existing issue: **PROJ-456**
https://yoursite.atlassian.net/browse/PROJ-456

**What I included:**
- Your error details
- Environment context
- User impact information

**Next Steps:**
- The assignee (@john.doe) will be notified
- Monitor PROJ-456 for updates
- If this turns out to be different, we can still create a separate ticket
If New Issue Created:
✅ **New Issue Created**

**PROJ-890** - Mobile Login: Connection timeout during authentication
https://yoursite.atlassian.net/browse/PROJ-890

Type: Bug | Priority: Medium | Status: Open

**What's Included:**
- Complete error details and stack trace
- Environment and reproduction steps
- User impact assessment
- References to related issues (PROJ-123, PROJ-789)

**Next Steps:**
- Issue will be reviewed during next triage meeting
- Consider setting priority based on user impact
- Assign to appropriate team member

Edge Cases & Troubleshooting

Multiple Potential Duplicates

If you find 3+ very similar issues:

🔍 **Triage Results: Multiple Possible Duplicates**

I found 3 issues that might be related:

**Most Likely Duplicate:**
**PROJ-456** - [summary] (Open, 2 days ago)
Match: 95% - Same error and component

**Also Possibly Related:**
**PROJ-234** - [summary] (Open, 1 month ago)
Match: 70% - Similar symptoms, different error

**PROJ-123** - [summary] (Resolved, 8 months ago)
Match: 60% - Related component, but was fixed

**Recommendation:**
1. Add to PROJ-456 (most similar)
2. Reference PROJ-234 in your comment (might be related)
3. Note PROJ-123 was previously fixed (possible regression)

Which issue should I add your details to? (Or create new)

Unclear Project Context

If user doesn't specify which project:

Which Jira project should I search for similar issues?

Available projects:
- BACKEND (Backend Services)
- MOBILE (Mobile Apps)
- WEB (Web Platform)
- INFRA (Infrastructure)

Or tell me the project key directly (e.g., BACKEND, MOBILE)

Insufficient Information

If the bug report lacks critical details:

I need more information to effectively triage this issue:

**What I have:**
- Error: "Something went wrong"

**What would help:**
- Specific error message or code
- Which part of the system (login, payment, etc.)
- What the user was trying to do
- Which environment (production, staging, mobile, web)

Can you provide any of these details?

Resolved Regression

If you find a resolved issue that matches:

🔍 **Triage Results: Possible Regression**

This looks like it might be a regression of a previously fixed issue:

**PROJ-567** - [Same issue description]
Status: Resolved (Fixed) | Fixed: 3 months ago | Fixed by: @jane.smith
Resolution: [Brief description of fix]
https://yoursite.atlassian.net/browse/PROJ-567

**This suggests:**
- The original fix may not have fully addressed the root cause
- OR there's been a regression in recent changes
- OR this is a different issue with similar symptoms

**Recommendation:** Create a new issue and link it to PROJ-567 as "may be related to" or "regression of"

Should I create a new issue with this context?

Custom Required Fields

If creating an issue fails due to required fields:

  1. Check what fields are required:
getJiraIssueTypeMetaWithFields(
  cloudId="...",
  projectIdOrKey="PROJ",
  issueTypeId="10001"
)
  1. Ask user for values:
This project requires additional fields to create a Bug:
- Severity: [High/Medium/Low]
- Affected Version: [Version number]

Please provide these values so I can create the issue.
  1. Retry with additional fields:
createJiraIssue(
  ...existing parameters...,
  additional_fields={
    "priority": {"name": "High"},
    "customfield_10001": {"value": "Production"}
  }
)

Tips for Effective Triage

For Search:

Do: ✅ Use multiple search queries with different angles ✅ Include both open and resolved issues in search ✅ Search for error signatures and symptoms separately ✅ Look at recent issues first (last 30-90 days) ✅ Check for patterns (multiple reports of same thing)

Don't: ❌ Search with entire error messages (too specific) ❌ Only search open issues (miss fix history) ❌ Ignore resolved issues (miss regressions) ❌ Use too many keywords (reduces matches)

For Issue Creation:

Do: ✅ Write clear, specific summaries with component names ✅ Include complete error messages in code blocks ✅ Add environment and impact details ✅ Reference related issues found during search ✅ Use "Bug" issue type for actual bugs

Don't: ❌ Create vague summaries like "Error in production" ❌ Paste entire stack traces in summary (use description) ❌ Skip reproduction steps ❌ Forget to mention user impact ❌ Hard-code issue type without checking availability

For Duplicate Assessment:

High Confidence Duplicates:

  • Exact same error + same component + recent (< 30 days)
  • Same root cause identified

Likely Different Issues:

  • Different error signatures
  • Different components/systems
  • Significantly different contexts

When Unsure:

  • Present both options to user
  • Lean toward creating new issue (can be closed as duplicate later)
  • Linking issues is better than hiding information

Examples

Example 1: Clear Duplicate Found

User Input:

Triage this error: "Connection timeout error when users try to login on iOS app"

Process:

  1. Extract: "Connection timeout", "login", "iOS"
  2. Search: Find PROJ-456 (open, 2 days ago) with exact same error
  3. Analyze: 95% match - same error, component, symptom
  4. Present: Show PROJ-456 as duplicate, recommend adding comment
  5. Execute: User confirms, add comment with iOS-specific details
  6. Confirm: Comment added to PROJ-456

Output:

✅ Comment added to PROJ-456

Your iOS-specific error details have been added to the existing issue.
The assignee will be notified.

Example 2: New Issue with Related Context

User Input:

Error: NullPointerException in PaymentProcessor.processRefund() at line 245
Stack trace: [full stack trace]

Process:

  1. Extract: "NullPointerException", "PaymentProcessor", "processRefund", "line 245"
  2. Search: Find PROJ-789 (resolved, 3 weeks ago) about payment errors, but different line
  3. Analyze: Related component but different specific error
  4. Present: No duplicates, found related issue, recommend new ticket
  5. Execute: User confirms, create new Bug with context
  6. Confirm: PROJ-890 created

Output:

✅ New Issue Created

PROJ-890 - Payment API: NullPointerException in refund processing
https://yoursite.atlassian.net/browse/PROJ-890

References related issue PROJ-789 for context.

Example 3: Possible Regression

User Input:

Users can't upload files larger than 5MB, getting "Upload failed" error

Process:

  1. Extract: "Upload failed", "5MB", "file upload"
  2. Search: Find PROJ-234 (resolved 2 months ago) - exact same issue
  3. Analyze: Was fixed but now happening again
  4. Present: Possible regression, recommend new issue linked to old one
  5. Execute: Create new issue, link to PROJ-234 as "may be caused by"
  6. Confirm: PROJ-891 created with regression context

Output:

✅ New Issue Created (Possible Regression)

PROJ-891 - File Upload: Upload failed for files >5MB (Regression?)
https://yoursite.atlassian.net/browse/PROJ-891

This may be a regression of PROJ-234, which was resolved 2 months ago.
Issue includes reference to original fix for investigation.

When NOT to Use This Skill

This skill is for triaging bugs and errors only. Do NOT use for:

❌ Feature requests (use spec-to-backlog) ❌ General task creation (use capture-tasks-from-meeting-notes) ❌ Searching for information (use search-company-knowledge) ❌ Generating status reports (use generate-status-report)

Use this skill specifically for: ✅ "Is this a duplicate bug?" ✅ "Triage this error message" ✅ "Has this been reported before?" ✅ "Create a bug ticket for this"


Quick Reference

Primary workflow: Extract → Search → Analyze → Present → Execute → Confirm

Search tool: searchJiraIssuesUsingJql(cloudId, jql, fields, maxResults)

Action tools:

  • addCommentToJiraIssue(cloudId, issueIdOrKey, commentBody) - Add to existing
  • createJiraIssue(cloudId, projectKey, issueTypeName, summary, description) - Create new

Issue type: Always prefer "Bug" for error reports, check with getJiraProjectIssueTypesMetadata

Remember:

  • Multiple searches catch more duplicates
  • Present findings before acting
  • Include error details and context
  • Reference related issues
  • Use "Bug" issue type when available

平台分布

Codex

32.31%
按下载量换算205

Claude

28.56%
按下载量换算181

Cursor

19.49%
按下载量换算124

Gemini CLI

9.69%
按下载量换算61

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills