mcpField
F
finops-workflows

finops-workflows

github.com/laurigates云与 DevOps5959 次安装1 天前更新
代码仓库

关于 finops-workflows

用于分析单个仓库或整个组织中 GitHub Actions 工作流运行情况的 FinOps Skill。它汇总运行频率、耗时、成功率、触发类型分布和效率指标。

主要功能

  1. 01分析运行频率与耗时
  2. 02查看工作流成功率
  3. 03按触发类型统计运行
  4. 04分析仓库或整个组织
  5. 05按创建日期筛选运行

适用场景

  1. 01调查工作流失败率偏高的原因
  2. 02找出运行耗时较长的工作流
  3. 03检查仓库中的触发模式
  4. 04汇总组织范围的工作流活动

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/laurigates/claude-plugins --skill finops-workflows

安装后在 Claude Code 中输入/finops-workflows确认已加载。

附带文件scripts/workflow-runs-org.shscripts/workflow-runs.sh

详细介绍

/finops:workflows

分析仓库的 GitHub Actions 工作流运行情况,包括频率、时长、成功率和效率指标。

使用场景

场景使用此技能替代方案
分析工作流运行频率和时长/finops:workflows-
调查高失败率/finops:workflows-
了解触发类型分布/finops:workflows-
组织范围的工作流分析/finops:workflows org <name>-
快速查看整体健康状况/finops:overview使用 overview 获取高层级摘要
修复工作流配置问题/finops:waste使用 waste 获取可执行的配置修复建议
比较不同仓库的工作流指标/finops:compare使用 compare 查看多个仓库

上下文

  • 当前仓库 URL:!git remote get-url origin

参数

参数描述默认值
repo按 owner/name 格式指定的仓库当前仓库
--created日期范围筛选(例如,>=2026-03-01)无(最近 100 次运行)
org <name>组织范围的分析(代替 repo)-

执行

按仓库分析(默认)
bash "${SKILL_DIR}/scripts/workflow-runs.sh" $ARGS
组织范围的分析

当用户请求组织范围的分析时,使用组织脚本:

bash "${SKILL_DIR}/scripts/workflow-runs-org.sh" $ARGS

输出格式

Analyzing workflows for: org/repo

=== Active Workflows ===
  CI (id: 12345)
  Deploy (id: 12346)
  CodeQL (id: 12347)

=== Run Summary ===
CI:
  Total: 156 | Success: 140 | Failure: 10 | Cancelled: 4 | Skipped: 2
  Success rate: 89%
Deploy:
  Total: 45 | Success: 44 | Failure: 1 | Cancelled: 0 | Skipped: 0
  Success rate: 97%

=== Duration Analysis ===
CI:
  Runs: 50 | Avg: 4m32s | Max: 12m15s | Total: 226min
Deploy:
  Runs: 20 | Avg: 2m10s | Max: 3m45s | Total: 43min

=== Trigger Types ===
  push: 89 runs
  pull_request: 67 runs
  schedule: 30 runs
  workflow_dispatch: 5 runs

=== Recent Failures (last 10) ===
  #234 CI - 2025-01-28 - https://github.com/org/repo/actions/runs/...
  #231 CI - 2025-01-27 - https://github.com/org/repo/actions/runs/...

=== High Frequency Workflows ===
  CI: 156 runs (~5.2/day) - consider path filters

Agent 优化

上下文命令
工作流列表(JSON)gh workflow list --json name,id,state
最近的运行(精简)gh run list --workflow <name> --limit 20 --json status,conclusion,createdAt
仅失败的运行gh run list --status failure --limit 10 --json name,createdAt,url
运行耗时(JSON)`gh api "/repos/{owner}/{repo}/actions/runs?per_page=50" --jq '.workflow_runs[]
精简的按仓库分析bash "${SKILL_DIR}/scripts/workflow-runs.sh" $ARGS
组织范围的分析bash "${SKILL_DIR}/scripts/workflow-runs-org.sh" $ARGS

后续操作

根据发现提出建议:

  • 失败率高 -> 调查近期失败,使用 gh run view --log-failed 查看日志
  • 运行频率高 -> 检查触发条件,添加路径筛选器
  • 时长过长 -> 检查缓存、并行化和步骤优化
  • 大量跳过 -> 运行 /finops:waste 进行详细分析

评论

支持 Markdown