关于 triage
triage 是用于 GitHub 仓库问题分类的技能,依据问题内容为 issue 添加标签。它会先读取仓库当前标签体系,并可处理未标记问题、全部开放问题、指定编号或编号范围。
主要功能
- 01按范围选择待分类 issue
- 02获取标签和问题详情
- 03按类型、工作量、优先级及领域分类
- 04保留已有标签并补齐缺项
- 05汇总分类结果与理由
适用场景
- 01为新出现的未标记问题分类
- 02批量整理开放 issue
- 03检查并补全指定问题的标签
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ coleam00/ archon --skill triage安装后在 Claude Code 中输入/triage确认已加载。
附带文件workshop-guide.md
详细介绍
为 GitHub Issue 分类
为此代码库中的 Issue 应用合适的标签进行分类。
代码库上下文
- 当前仓库:!
gh repo view --json nameWithOwner -q .nameWithOwner 2>/dev/null || echo "unknown" - 未关闭的 Issue:!
gh issue list --state open --json number --jq 'length' 2>/dev/null || echo "?" - 现有标签:!
gh label list --json name -q '.[].name' 2>/dev/null | head -20 || echo "none found"
范围
根据参数确定要分类的 Issue:$ARGUMENTS
| 参数 | 行为 |
|---|---|
| (空) | 仅处理未添加标签的 Issue(默认) |
unlabeled | 仅处理没有任何标签的 Issue |
all | 处理所有未关闭的 Issue |
N | 指定 Issue(例如 67) |
N-M | 指定 Issue 范围,包含首尾(例如 60-67) |
流程
-
获取可用标签 — 运行
gh label list --json name,description,了解 标签分类体系。标签分为类型、工作量、优先级和领域类别。 -
获取目标 Issue — 根据上述范围获取。对每个 Issue,获取完整正文:
gh issue view {number} --json number,title,body,labels -
处理每个 Issue:
- 仔细阅读标题和完整正文
- 如有需要,探索代码库(
Glob、Grep、Read),以了解受影响的代码 - 分类:一个类型、一个工作量、一个优先级,以及一个或多个领域
- 跟踪与其他 Issue 的关系(重复、相关、阻塞)
- 应用标签:
gh issue edit {number} --add-label "type,effort/level,P#,area.domain" - 跳过已完整添加标签的 Issue(类型 + 工作量 + 优先级 + 领域)
- 对于标签不完整的 Issue,仅添加缺失类别的标签
-
输出分类摘要:
## Triage Summary | Issue | Title | Labels Applied | Reasoning | |-------|-------|----------------|-----------| | #67 | ... | bug, effort/low, P1, core.config | ... | **Totals:** - Issues triaged: X - Already labeled (skipped): Y - By priority: P0(n), P1(n), P2(n), P3(n) ## Relationships Discovered | Issues | Relationship | Notes | |--------|--------------|-------| | #61, #62 | Related | Both involve config/logging UX |
规则
- 不要硬编码标签 — 始终先获取当前标签,它们可能会变化
- 尊重现有标签 — 不要删除标签,只添加缺失的标签
- 检查 Issue 正文 — 仅凭标题无法了解足够的上下文
- 使用代码库 — 如果要了解某种关系需要查看模块如何连接,请进行检查
- 不确定时请注明 — 在摘要中标记有歧义的 Issue,而不是猜测
评论
支持 Markdown