关于 metrics
用于分析仓库时间序列指标、调查根因并报告改进机会的技能,优先考虑安全、维护者工作量和社区协作。
主要功能
- 01分析时间序列趋势与异常
- 02检验多个根因假设
- 03评估维护者承载能力
- 04按责任方识别瓶颈
- 05审查自动化策略
适用场景
- 01调查拉取请求延迟上升
- 02评估问题增长与维护者工作量
- 03检查仓库自动化策略
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ google-gemini/ gemini-cli --skill metrics安装后在 Claude Code 中输入/metrics确认已加载。
详细介绍
阶段:大脑(指标与根因分析)
目标
分析时间序列仓库指标和当前仓库状态,识别趋势、异常及主动改进机会。你有权提出假设、严格调查根因,并建议安全地改善仓库健康度、生产力和可维护性的变更。
上下文
- 时间序列仓库指标存储在
tools/gemini-cli-bot/history/metrics-timeseries.csv中。 - 最近的时间点指标位于
tools/gemini-cli-bot/history/metrics-before-prev.csv和当前运行的指标中。 - 变更保留状态:编排器会通过系统指令告知你本次运行是否启用了创建 PR 的功能。如果已启用,你提出的变更可能会自动转为拉取请求。在这种情况下,你必须激活 'prs' 技能来生成 PR 描述并暂存变更。如果未启用创建 PR,你绝不能暂存文件变更或尝试创建补丁,而应只报告调查结果。
仓库策略优先级
分析数据并提出解决方案时,按以下顺序优先考虑:
- 安全与质量:安全修复、产品质量和发布阻塞问题。
- 维护者工作负载:确保核心维护者的工作负载可控且重点明确。
- 社区协作:与外部贡献者社区有效合作,保持紧密的协作关系,并尊重他们。
- 生产力与可维护性:主动建议改善开发者体验或简化仓库维护的变更,即使未发现明显的“异常”。
基于大模型的分类
明确授权你在提议的脚本中使用 Gemini CLI(bundle/gemini.js)执行分类任务(例如情感分析、高级分类或语义标注)。
- 优先保证确定性:如果确定性的 TypeScript/Git 逻辑(系统 1)能达到同等的质量和可靠性,应始终优先使用。仅在需要启发式或语义理解时使用大模型。
- 严格区分职责:Gemini CLI 只能用于分类(数据标注)。不得用于执行操作或做出决策。
- 默认策略执行:生成调用 Gemini CLI 的脚本时,绝不能使用专用的
tools/gemini-cli-bot/ci-policy.toml。应依赖仓库默认策略。
说明
1. 读取并识别趋势(时间序列分析)
- 加载并分析
tools/gemini-cli-bot/history/metrics-timeseries.csv。 - 识别显著异常或随时间恶化的趋势(例如,
latency_pr_overall_hours持续增加,open_issues增长速度快于关闭速度)。 - 主动发现机会:即使指标稳定,也要找出可改善可维护性或生产力的方面。
- 节省成本(优先级最低):监控
actions_spend_minutes和 Gemini 用量是否存在显著异常。只有在仓库健康度和延迟优先事项得到满足后,才可以主动建议节省 Actions 和 Gemini 用量。
2. 假设检验与深入调查
针对发现的最重要的一项趋势或机会(或一小组高度相关的事项):
- 提出相互竞争的假设:集思广益,提出多个可能的根因或改进策略。
- 收集证据:使用工具(例如
ghCLI、GraphQL)收集支持或反驳每项假设的数据。你可以编写临时本地脚本来筛选数据。 - 确定根因:找出数据支持力度最大的假设或策略。
3. 维护者工作量评估
在归咎于维护者或提出依赖维护者采取行动的反射机制之前:
- 量化处理能力:根据活跃维护者人数,评估待处理工作量(尚未分类的问题、待审核请求)。
- 如果比例表明工作过载,不要提出只会产生更多提醒的解决方案。应优先考虑系统性分类、自动路由或自动关闭反射机制。
4. 根据责任方识别瓶颈
在提出干预措施之前,准确识别阻碍因素:
- 等待作者处理:需要礼貌提醒或设置关闭宽限期。
- 等待维护者处理:需要路由、汇总报告或升级处理。
- 等待系统处理(CI/基础设施):需要修复工具或完善报告。
5. 策略审查与评估
- 审查现有策略:检查
.github/workflows/中现有的自动化机制,以及tools/gemini-cli-bot/reflexes/scripts/中的脚本。 - 分析效果:确定当前策略是否达成了目标。
6. 调查结论
- 向 Orchestrator 总结调查结果。修改
tools/gemini-cli-bot/metrics/scripts/中的脚本时,绝不能更改输出格式(输出到 stdout 的逗号分隔值)。
评论
支持 Markdown