GitLens 仓库 Issue 优先级评估实战:基于 `/prioritize` Skill 的信号驱动决策框架
开发工具版本控制【免费下载链接】vscode-gitlensSupercharge Git inside VS Code and unlock untapped knowledge within each repository — Visualize code authorship at a glance via Git blame annotations and CodeLens, seamlessly navigate and explore Git repositories, gain valuable insights via rich visualizations and powerful comparison commands, and so much more项目地址https://gitcode.com/gh_mirrors/vs/vscode-gitlens点击查看免费下载GitLens 是 VS Code 上最流行的 Git 增强扩展仓库名vscode-gitlens其开源仓库维护着数百个历史 Issue。为了让维护团队从凭感觉排期走向数据驱动决策仓库内置了一套由 Claude Agent Skill 驱动的 Issue 工作流管线其中/prioritize负责在/triage分类、/investigate根因分析之后对已评估的 Issue 给出Shortlist近期必做、Backlog待办池、Wont Fix不修复、Community Contribution欢迎社区贡献四类处置建议。本文以 .claude/skills/prioritize/SKILL.md 为骨架结合 scripts/issues 目录下的真实源码完整讲解该 Skill 的输入模式、七项优先级信号、决策框架、报告产物格式以及如何与上下游 Skill 串联成完整的 Issue 处理流水线。读完本文你将掌握一套可复用的、可审计的 Issue 优先级评估方法论并能在自己的开源项目中照搬这套证据包 信号表 分级处置的工程实践。Skill 定位与整体输入模式/prioritize的职责一句话概括对已经过 triage分类或 investigation调查的 Issue 进行评估推荐处置方案产出优先级信号摘要并在结论清晰时起草给用户的沟通草稿。它本身不做自动决策——只呈现信号、推荐与置信度最终由人类拍板这与整个工作流的Human-in-the-loop安全模型一致参见 docs/triage-dev-skills.md 的 Safety Model 一节。Skill 支持两种输入模式/prioritize number [number...] /prioritize --from-report [path]直接模式Issue 编号给定一个或多个 Issue 编号先通过single命令拉取证据包再做解析评估报告模式--from-report读取一份报告 JSON 文件并自动探测类型——包含verdicts数组的是 Triage 决策、包含investigations数组的是 Investigation 决策、包含resolutions数组的则是分辨率报告若省略路径则自动使用.work/triage/reports/下最新的报告 JSON。从源码结构看报告自动探测的约定贯穿整条管线下游的/update-issues也采用同样的按 JSON 内容而非文件名探测方式见 .claude/skills/update-issues/SKILL.md避免*-DECISIONS.json这类文件名歧义。Stage 0 — 数据准备证据包Evidence Pack无论哪种模式第一步都是获取证据包。直接模式下的标准命令是node --experimental-strip-types ./scripts/issues/triage.mts single numbers...该命令会将证据包 JSON 打印到 stdout。对应实现位于 scripts/issues/triage.mts它支持三个子命令子命令用途关键参数single按编号抓取指定 Issue总是拉取最新数据不查缓存number [number...]、--force-refreshrecent反应式 triage评估最近打开的 Issue--since duration默认7d、--force-refreshaudit回溯式审计历史积压 Issue--older-than duration默认180d、--batch-size n默认 50、--label、--type、--batch n命令执行后会调用 scripts/issues/build-pack.mts 中的buildPack()并行抓取团队成员列表、标签描述、CHANGELOG 索引和原始 Issue 数据然后对每条 Issue 做字段富化enrichment最后写入.work/triage/packs/runId.json并额外复制一份latest-single.json/latest-reactive.json/latest-audit-batch-N.json作为最新副本。证据包的核心结构定义见 scripts/issues/types.mtsinterface EvidencePack { meta: RunMetadata; // runId、时间戳、schemaVersion、workflow、查询参数、repo teamMembers: string[]; // 仓库组织成员登录名列表 issues: EnrichedIssue[]; // 富化后的 Issue 数组 }EnrichedIssue在原始 GitHub Issue 字段编号、标题、正文、状态、类型、标签、作者、assignee、milestone、时间戳、评论、关联 PR、表情反应分组之上由buildPack.mts的enrichIssue()计算出一批派生证据字段正是/prioritize后续评估依赖的数据基础isTeamMember— 作者是否为组织成员对照团队列表triage 阶段据此决定 spam 判定与信任策略changelogEntry— 从 CHANGELOG.md 解析出的对应条目version、changeType、entry解析逻辑在 scripts/issues/fetch-changelog.mts用于判断是否已被修复lastActivityAt— 由updatedAt与最新评论时间取最大值reactions— 将 GitHub 的reactionGroups映射为thumbsUp / thumbsDown / laugh / hooray / confused / heart / rocket / eyes各计数及totalduplicateCandidates— 重复候选列表通过正文/评论中#NNN交叉引用与标题关键词重叠 ≥3 个两轮扫描生成每轮上限由duplicateCandidateLimit控制默认 5supersessionIndicators— 仅在audit与single模式下扫描superseded by / replaced by / removed in / deprecated in favor / revert等模式用于陈旧性判断。**报告模式--from-report**下的数据准备略有不同先读取 JSON 并自动探测类型然后按类型过滤出可行动的 IssueTriage 决策过滤出Valid - Needs Triage、Valid - Already Triaged、Retype - Bug、Retype - Feature Request等可行动结论跳过已解决的 Close / Request-More-Info 类结论Investigation 决策将每条 Issue 的调查发现effort、risk、root cause、confidence与证据包数据合并评估。若对应证据包已存在于.work/triage/packs/直接复用否则运行single命令补抓。Stage 1 — 关联 Issue 计数与搜索预算对于每条待评估的 IssueSkill 要求用 GitHub CLI 搜索仓库内标题相关的其他 Issue以量化该问题是否是反复出现的热点gh search issues --repo gitkraken/vscode-gitlens significant keywords from title --state open --json number --limit 20执行要点从 Issue 标题提取35 个有意义的英文关键词跳过the、is、not、when、with、does、after等常见停用词仓库实现中维护了一份更完整的停用词表见 scripts/issues/build-pack.mts 顶部的stopWords集合计数时排除 Issue 自身搜索预算单次调用最多 25 次搜索请求。若待评估的 Issue 超过预算优先评估 reaction 数更高、或来自 investigation 报告的 Issue。这一预算约束与 GitHub Search API 每分钟 30 次的限流直接相关docs/triage-dev-skills.md 的 Limitations 一节对此有明确说明。Stage 2 — 七项优先级信号Priority Signals对每条 IssueSkill 定义了七项可量化的优先级信号评估来源与判定口径如下信号来源评估口径Reactions 数证据包reactions.thumbsUp0–2需求低3–10中等11高需求关联 Issue 数Stage 1 搜索结果 duplicateCandidates0孤立1–2有一定影响3反复出现严重程度SeverityIssue 内容分析数据丢失 崩溃 工作流被破坏 体验降级 外观问题预估工作量Investigation 报告或从描述推断Small数小时/ Medium1–3 天/ Large3 天Issue 年龄createdAt计算距创建的天数活跃度新鲜度lastActivityAt距最近一次活动的天数评论数量commentCount讨论热度这些信号与证据包的字段一一对应意味着评估过程完全可复现、可审计——任何一条为什么推荐 Shortlist的结论都能追溯到具体数字如45 个 、3 个关联 Issue、broken-workflow 级别严重度。Investigation 决策模式下effort 与 risk 直接来自 .claude/skills/investigate/SKILL.md 定义的产出estimatedEffort与riskLevel而不是由/prioritize凭描述推断这使优先级评估建立在根因分析之上。Stage 3 — 处置建议框架四类决策Skill 的决策框架按优先级从高到低排列Wont Fix不修复— Issue 超出 GitLens 范围或描述的行为按设计工作。必须要有明确证据Community Contribution欢迎社区贡献— 功能请求想法不错但对团队来说过于小众。信号特征reaction 数低、使用场景具体狭窄、effort SmallShortlist近期必做— 应尽快完成。信号特征高 reaction11、高严重度数据丢失、崩溃、工作流破坏、大量关联 Issue3、或经 investigation 确认且 effort 为 Small/Medium 的 BugBacklog待办池— 应该做但优先级较低或投入产出比不足。对于不满足 Shortlist 标准的有效 Issue 是默认选项。关键设计原则在文档中反复强调该 Skill 不会自动做决定。它只输出信号摘要、推荐与置信度High/Medium/Low最终由人类做最终判断。这条原则呼应了整个工作流的安全模型——所有关闭类操作Close - Fixed、Close - Duplicate、Close - Not a Bug等在 triage 阶段都被强制标记requiresHumanApproval: true见 .claude/skills/triage/SKILL.md。Stage 4 — 沟通草稿仅限结论明确时只有当结论清晰明确时才起草评论Wont Fix解释原因超出范围或按设计工作、感谢报告者、酌情建议替代方案Community Contribution说明该功能欢迎以贡献形式实现提供相关代码库区域的上下文文件路径、实现思路提示并链接贡献指南。Shortlist 与 Backlog 不写评论——它们是内部规划决策不需要对外沟通。输出产物一Markdown 报告评估完成后在.work/triage/reports/下生成两个文件文件名格式为YYYY-MM-DD-RESOLUTION-REPORT.md与YYYY-MM-DD-RESOLUTIONS.json对应目录约定见 docs/triage-dev-skills.md 的 Output Files 一节。单 Issue 报告模板# Resolution Report — YYYY-MM-DD Issues evaluated: 1 --- ### [#NNNN — Title] - **Author**: username (team) | username - **Recommendation**: Shortlist | Backlog | Wont Fix | Community Contribution - **Confidence**: High | Medium | Low #### Priority Signals | Signal | Value | Assessment | | --------------------- | ---------------------- | ----------------------------------- | | Reactions (thumbs-up) | N | Low / Moderate / High demand | | Related issues | N open, N closed | Isolated / Some impact / Recurring | | Severity | [level] | [assessment] | | Estimated effort | Small / Medium / Large | [source: investigation or inferred] | | Age | N days | [assessment] | | Last activity | N days ago | [assessment] | | Comments | N | [assessment] | #### Rationale [2-3 sentences explaining why this recommendation, citing specific signals] #### Draft Message (if applicable) [Draft comment for wont-fix or community-contribution verdicts]批量报告模板批量模式在顶部加入Summary 汇总表按推荐类别统计数量与 Issue 列表# Resolution Report — YYYY-MM-DD Issues evaluated: N Source: [direct | triage decisions | investigation decisions] ## Summary | Recommendation | Count | Issues | | ---------------------- | ----- | ------------ | | Shortlist | N | #NNNN, #NNNN | | Backlog | N | #NNNN, #NNNN | | Wont Fix | N | #NNNN | | Community Contribution | N | #NNNN |之后按## Shortlist→## Backlog→## Wont Fix→## Community Contribution分组展开每条的详情每组使用与单 Issue 相同的 Priority Signals 表格与 Rationale 格式Shortlist 按reaction 数 严重度排序。没有 Issue 的推荐分组可以省略——Summary 表已经展示了完整分布。输出产物二机器可读 JSON供下游消费与 Markdown 报告配套的YYYY-MM-DD-RESOLUTIONS.json是下游/update-issues的直接输入Schema 如下{ reportId: uuid, generatedAt: ISO timestamp, source: direct | triage | investigation, sourceFile: path to source file if from-triage or from-investigation, resolutions: [ { issueNumber: 1234, issueTitle: ..., recommendation: shortlist | backlog | wont-fix | community-contribution, confidence: High | Medium | Low, prioritySignals: { reactionsThumbsUp: 45, relatedIssueCount: 5, severity: broken-workflow | crash |>赞分享开发工具版本控制【免费下载链接】vscode-gitlensSupercharge Git inside VS Code and unlock untapped knowledge within each repository — Visualize code authorship at a glance via Git blame annotations and CodeLens, seamlessly navigate and explore Git repositories, gain valuable insights via rich visualizations and powerful comparison commands, and so much more项目地址https://gitcode.com/gh_mirrors/vs/vscode-gitlens点击查看免费下载相关推荐oh-my-claudecode Skill 审计实践基于 Issue 1445 的七个争议技能评估框架oh my claudecode Skill 审计实践基于 Issue 1445 的七个争议技能评估框架 本指南完整解析 docs/design/SKILL_人工智能AI Agent多智能体Agent 编排Agent 工作流AI 技能CLI开发工具覆盖率优先级刷新基于 lcov 实测数据驱动 Plate 仓库非 React 测试投资决策覆盖率优先级刷新基于 lcov 实测数据驱动 Plate 仓库非 React 测试投资决策 覆盖率优先级刷新Coverage Priority Refres前端富文本UI组件A2UI 仓库 GitHub Issue 智能分诊实战指南基于 a2ui-issue-triage Skill 的四步自动化工作流A2UI 仓库 GitHub Issue 智能分诊实战指南基于 a2ui issue triage Skill 的四步自动化工作流 本文以 A2UI 仓库内置人工智能AI AgentAI 应用前端UI组件上一篇掌握漫画下载神器Mangadex-Downloader从入门到精通下一篇NetSonar免费跨平台网络诊断工具终极指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考