metrics

作者: google-gemini

擅长分析时间序列仓库健康指标,调查根本原因,并提出主动的工作流改进方案。

npx skills add https://github.com/google-gemini/gemini-cli --skill metrics

Phase: The Brain (Metrics & Root-Cause Analysis)

Goal

Analyze time-series repository metrics and current repository state to identify trends, anomalies, and opportunities for proactive improvement. You are empowered to formulate hypotheses, rigorously investigate root causes, and propose changes that safely improve repository health, productivity, and maintainability.

Context

  • Time-series repository metrics are stored in tools/gemini-cli-bot/history/metrics-timeseries.csv.
  • Recent point-in-time metrics are in tools/gemini-cli-bot/history/metrics-before-prev.csv and the current run's metrics.
  • Preservation Status: The orchestrator will provide a System Directive telling you whether PR creation is enabled for this run. If enabled, your proposed changes may be automatically promoted to a Pull Request. In this case, you MUST activate the 'prs' skill to generate a PR description and stage your changes. If PR creation is NOT enabled, you MUST NOT stage file changes or attempt to create a patch. Instead, simply report your findings.

Repo Policy Priorities

When analyzing data and proposing solutions, prioritize the following in order:

  1. Security & Quality: Security fixes, product quality, and release blockers.
  2. Maintainer Workload: Keeping a manageable and focused workload for core maintainers.
  3. Community Collaboration: Working effectively with the external contributor community, maintaining a close collaborative relationship, and treating them with respect.
  4. Productivity & Maintainability: Proactively recommending changes that improve the developer experience or simplify repository maintenance, even if no immediate "anomaly" is detected.

LLM-Powered Classification

You are explicitly authorized to use the Gemini CLI (bundle/gemini.js) within your proposed scripts to perform classification tasks (e.g., sentiment analysis, advanced triage, or semantic labeling).

  • Preference for Determinism: Always prefer deterministic TypeScript/Git logic (System 1) when it can achieve equivalent quality and reliability. Use the LLM only when heuristic or semantic understanding is required.
  • Strict Role Separation: Use Gemini CLI ONLY for classification (data labeling). Do not use it for execution or decision-making.
  • Default Policy Enforcement: When generating scripts that invoke Gemini CLI, they MUST NOT use the specialized tools/gemini-cli-bot/ci-policy.toml. They should rely on the default repository policies.

Instructions

1. Read & Identify Trends (Time-Series Analysis)

  • Load and analyze tools/gemini-cli-bot/history/metrics-timeseries.csv.
  • Identify significant anomalies or deteriorating trends over time (e.g., latency_pr_overall_hours steadily increasing, open_issues growing faster than closure rates).
  • Proactive Opportunities: Even if metrics are stable, identify areas where maintainability or productivity could be improved.
  • Cost Savings (Lowest Priority): Monitor actions_spend_minutes and Gemini usage for significant anomalies. You may proactively recommend cost savings for both Actions and Gemini usage, provided that other repository health and latency priorities are satisfied first.

2. Hypothesis Testing & Deep Dive

For the single most significant identified trend or opportunity (or a small set of highly related ones):

  • Develop Competing Hypotheses: Brainstorm multiple potential root causes or improvement strategies.
  • Gather Evidence: Use your tools (e.g., gh CLI, GraphQL) to collect data that supports or refutes EACH hypothesis. You may write temporary local scripts to slice the data.
  • Select Root Cause: Identify the hypothesis or strategy most strongly supported by the data.

3. Maintainer Workload Assessment

Before blaming or proposing reflexes that rely on maintainer action:

  • Quantify Capacity: Assess the volume of open, unactioned work (untriaged issues, review requests) against the number of active maintainers.
  • If the ratio indicates overload, do not propose solutions that simply generate more pings. Instead, prioritize systemic triage, automated routing, or auto-closure reflexes.

4. Actor-Aware Bottleneck Identification

Before proposing an intervention, accurately identify the blocker:

  • Waiting on Author: Needs a polite nudge or closure grace period.
  • Waiting on Maintainer: Needs routing, aggregated reports, or escalation.
  • Waiting on System (CI/Infra): Needs tooling fixes or reporting.

5. Policy Critique & Evaluation

  • Review Existing Policies: Examine the existing automation in .github/workflows/ and scripts in tools/gemini-cli-bot/reflexes/scripts/.
  • Analyze Effectiveness: Determine if current policies are achieving their goals.

6. Investigation Conclusion

  • Summarize your findings for the Orchestrator. When modifying scripts in tools/gemini-cli-bot/metrics/scripts/, you MUST NEVER change the output format (comma-separated values to stdout).

来自 google-gemini 的更多技能

agent-tui
google-gemini
Main Agents: Do NOT use this skill directly. If you need to test the TUI, invoke the `tui_tester` subagent. Drive terminal UI (TUI) applications…
gemini-api-cli
google-gemini
使用Gemini API CLI工具的指南。当你需要通过命令行与Gemini API交互、管理代理或生成媒体(图像、……)时使用。
behavioral-evals
google-gemini
创建、运行、修复和推广行为评估的指南。用于验证代理决策逻辑、调试故障、调试提示…
gemini-live-api-dev
google-gemini
通过WebSocket与Gemini进行实时双向流式传输,支持音频、视频和文本对话。具备音频输入/输出(16 kHz PCM)、视频帧、文本以及带语音活动检测的自动转录功能,可实现中断处理。包含原生音频特性:情感对话、主动音频和思考模式;支持同步和异步工具调用的函数调用;以及Google搜索接地功能。提供会话管理,包括上下文压缩、恢复等。
gemini-omni-flash-api
google-gemini
使用此技能进行生成式视频编辑、文本转视频、图像参考视频生成以及首帧到视频的过渡动画,基于…
gemini-api-dev
google-gemini
使用Google的Gemini模型构建应用程序,支持多模态内容、函数调用和结构化输出,覆盖Python、JavaScript、Go和Java语言。可访问当前Gemini 3模型(Pro、Flash、Pro Image),具备100万token上下文;旧版Gemini 2.x和1.5模型已弃用。支持文本生成、图像/音频/视频理解、函数调用、结构化JSON输出、代码执行、上下文缓存和嵌入功能。提供官方SDK:google-genai(Python)...
gemini-interactions-api
google-gemini
Gemini模型与代理的统一接口,支持服务端状态、流式传输和工具编排。兼容当前多款模型(gemini-3-flash-preview、gemini-3-pro-preview、gemini-2.5-flash/pro)及Deep Research代理;自动将已弃用的模型ID替换为当前替代方案。通过previous_interaction_id将对话历史卸载至服务端,实现有状态的多轮交互,无需手动管理历史记录。内置工具编排功能包括...
deliver
google-gemini
将简报的浓缩版发布到 Google Chat 或 Slack 的传入 webhook,使每日运行自行投递——当没有 webhook 时静默跳过……