finops-compare について
GitHub 組織内の複数リポジトリで、GitHub Actions の FinOps 指標を比較するスキルです。キャッシュ利用、ワークフローの実行頻度や失敗、効率の差を調べるチーム向けです。
主な機能
- 01リポジトリ間のキャッシュ利用状況を比較
- 02ワークフロー頻度と失敗率を比較
- 03組織内のリポジトリを検出
- 04検出数の制限またはリポジトリ指定
活用シーン
- 01キャッシュ利用量の多いリポジトリを特定
- 02組織全体のワークフロー失敗を監査
- 03指定したリポジトリの CI 指標を比較
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill finops-compareインストール後、Claude Code で/finops-compareを入力して読み込まれたか確認します。
同梱ファイルscripts/compare-repos.sh
詳細
/finops:compare
複数のリポジトリにわたって GitHub Actions の FinOps 指標(キャッシュ使用量、ワークフローの実行頻度、失敗率、効率性)を比較します。
使用するタイミング
| シナリオ | このスキルを使用 | 代替手段 |
|---|---|---|
| 組織内のリポジトリ間で CI 指標を比較する | /finops:compare | - |
| 組織内でパフォーマンスが最も低いリポジトリを特定する | /finops:compare | - |
| 組織全体のキャッシュまたは失敗を監査する | /finops:compare | - |
| 単一リポジトリのキャッシュを詳しく調査する | /finops:caches | 単一リポジトリの詳細には caches を使用 |
| 単一リポジトリのワークフローを詳しく調査する | /finops:workflows | リポジトリごとの分析には workflows を使用 |
| 現在のリポジトリのみを簡単に要約する | /finops:overview | 単一リポジトリのスナップショットには overview を使用 |
パラメーター
| パラメーター | 説明 | デフォルト |
|---|---|---|
org | GitHub 組織名(必須) | - |
repos... | リポジトリ名をスペース区切りで指定 | 組織内のすべてのリポジトリ |
--limit N | 自動検出するリポジトリ数を N に制限 | 30 |
使用例
# Compare specific repos
/finops:compare myorg repo1 repo2 repo3
# Compare all repos in org (up to 30)
/finops:compare myorg
# Compare more repos
/finops:compare myorg --limit 50
実行
bash "${SKILL_DIR}/scripts/compare-repos.sh" $ARGS
出力形式
=== FinOps Comparison: myorg ===
Discovering repos (limit: 30)...
Found 25 repos
=== Cache Usage ===
Repository Caches Size (MB)
---------- ------ ---------
frontend-app 45 2340
backend-api 32 1850
shared-libs 18 420
...
=== Workflow Activity (last 30 days) ===
Repository Runs Success Failed Skip Rate
---------- ---- ------- ------ ---------
frontend-app 156 140 10 3%
backend-api 89 85 2 2%
...
=== Failure Rates (top 15) ===
Repository Total Failed Rate
---------- ----- ------ ----
legacy-service 45 12 26%
experimental-repo 20 5 25%
...
=== Active Workflows ===
Repository Workflows
---------- ---------
frontend-app 8
backend-api 5
...
=== Summary ===
Total cache usage: 8450MB across 25 repos
Repos exceeding 1GB cache:
frontend-app: 2340MB
backend-api: 1850MB
Repos with >20% failure rate:
legacy-service: 26%
experimental-repo: 25%
エージェント向けの最適化
| コンテキスト | コマンド |
|---|---|
| 組織内のリポジトリを一覧表示(JSON) | gh api "/orgs/{org}/repos?per_page=100&sort=pushed" --jq '.[].full_name' |
| リポジトリごとのキャッシュ数 | gh api "/repos/{owner}/{repo}/actions/caches" --jq '.total_count' |
| ワークフロー実行(JSON) | gh api "/repos/{owner}/{repo}/actions/runs?per_page=100" --jq '.workflow_runs' |
| 複数リポジトリの比較を簡潔に実行 | bash "${SKILL_DIR}/scripts/compare-repos.sh" $ARGS |
実行後のアクション
比較結果に基づいて、次の操作を行います。
- キャッシュが多いリポジトリ:詳細な分析を行うには
/finops:caches <repo>を実行します - 失敗が多いリポジトリ:原因を調査するには
/finops:workflows <repo>を実行します - アクティビティが多いリポジトリ:最適化の余地を見つけるには
/finops:waste <repo>を実行します - レポートを作成する:調査結果をまとめた GitHub イシューの作成を検討します
コメント
Markdown 対応