ci について
GitHub Actionsを監視し、CIの失敗をローカルで再現するスキルです。ブランチのワークフローを調査するエージェント向けに、提案されたテストやlintコマンドの実行と、構造化された失敗レポートを支援します。
主な機能
- 01失敗の自動ローカル再現
- 02並行ワークフローの状態監視
- 03迅速な構造化レポート
- 04ログノイズのフィルタリング
活用シーン
- 01CIテスト失敗のローカル再現
- 02変更プッシュ後の状態確認
- 03ビルドやジョブの失敗調査
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ google-gemini/ gemini-cli --skill ciインストール後、Claude Code で/ciを入力して読み込まれたか確認します。
同梱ファイルscripts/ci.mjs
詳細
CI の再現とステータス
このスキルを使うと、エージェントは GitHub Actions を効率的に監視し、失敗をトリアージして、リモートの CI エラーをローカル開発環境に反映できます。修正サイクルを効率化するため、失敗を自動的に再現する設定がデフォルトです。
主な機能
- 自動再現:CI を自動的に監視し、失敗時には提案されたテストコマンドや lint コマンドをローカルで直ちに実行します。
- リアルタイム監視:現在のブランチで並行して実行中のすべてのワークフローのステータスを集約して表示します。
- 即時トリアージ:最初のジョブ失敗時に直ちに停止し、構造化されたレポートを提示します。
ワークフロー
1. CI の再現(replicate) - デフォルト
CI を監視し、失敗をローカルで自動的に再現して、すぐにトリアージと修正を行うための主要な手順として使用します。
- 動作:このワークフローが開始されると、エージェントは CI を監視し、失敗を検出するとすぐに、提案されたすべてのテストコマンドや lint コマンド(🚀マーク付き)を直ちに自動実行します。
- ツール:
node .gemini/skills/ci/scripts/ci.mjs [branch] - 検出:スクリプトはブランチの最新の実行中または最近の実行を自動的に検出します。実行 ID を手動で検索しないでください。
- 目標:手動操作なしでローカルに失敗を再現し、その後コードの分析と修正に進みます。
1. CI のステータス(status)
変更をプッシュした後に CI を監視し、失敗があればローカルで再現する必要がある場合に使用します。
- ツール:
node .gemini/skills/ci/scripts/ci.mjs [branch] [run_id] - 検出:スクリプトはブランチの最新の実行中または最近の実行を自動的に検出します。特定の過去の実行が必要な場合を除き、`gh run list` を使って `run_id` を手動で検索しないでください。ブランチ名を指定するだけでかまいません。
- ステップ 1(監視):ブランチ名を指定してツールを実行します。
- ステップ 2(抽出):出力から提案された `npm test` または `npm run lint` コマンド(🚀マーク付き)を抽出します。
- ステップ 3(再現):それらのコマンドをローカルで実行し、失敗を確認します。
- 動作:15 秒ごとにポーリングします。失敗を検出すると、構造化されたレポートを出力して終了し、ローカルで実行する正確なコマンドを提示します。
失敗のカテゴリと対応
- テストの失敗:エージェントは提案された特定の
npm test -w <pkg> -- <path>コマンドを実行します。 - Lint エラー:エージェントは
npm run lint:allまたは対象パッケージの lint コマンドを実行します。 - ビルドエラー:エージェントはコンパイルの問題を解決するため、
tscの出力またはビルドログを確認します。 - ジョブエラー:インフラストラクチャやセットアップの失敗について、
gh run view --job <job_id> --logを調査します。
ノイズのフィルタリング
基盤となるスクリプトは、ノイズ(Git のログ、NPM の警告、スタックトレースの余分な情報)を自動的にフィルタリングします。エージェントは、ツールが提示する「構造化された失敗レポート」に注目してください。
コメント
Markdown 対応