| name | caching-strategies-gha |
| description | GitHub Actions のキャッシュ戦略を設計し、キー設計、パス選定、ヒット率改善、10GB制限管理を行うスキル。 actions/cache の最適化、依存キャッシュの分割、Dockerレイヤー連携などを体系化する。 Anchors: • The Pragmatic Programmer / 適用: 実践的改善 / 目的: 反復的な最適化 • Continuous Delivery / 適用: パイプライン最適化 / 目的: 実行時間の短縮 • Site Reliability Engineering / 適用: キャパシティ管理 / 目的: キャッシュ制限の管理 Trigger: Use when optimizing GitHub Actions cache performance, designing cache keys/paths, reducing CI build time, or managing cache size limits. |
| allowed-tools | bash, node |
GitHub Actions Caching Strategies
概要
GitHub Actions のキャッシュ戦略を設計し、ヒット率とサイズを最適化する。
詳細は references/ に外部化し、必要時に参照する。
- キャッシュ例:
assets/cache-examples.yaml
ワークフロー
Phase 1: キャッシュ対象の整理
目的: キャッシュ対象と制約を整理する
アクション:
references/Level1_basics.mdで基本概念を確認references/cache-action.mdで actions/cache を確認- キャッシュ対象/頻度/制限を整理
Task: agents/analyze-cache-requirements.md
Phase 2: キー設計
目的: キーとパスを設計する
アクション:
references/cache-patterns.mdを参照- キーに含める入力を整理
- restore-keys の戦略を決定
Task: agents/design-cache-keys.md
Phase 3: 最適化と分割
目的: ヒット率とサイズを最適化する
アクション:
references/cache-optimization.mdを参照scripts/estimate-cache-size.mjsでサイズを見積もる- 分割/除外/レイヤー化方針を決定
Task: agents/optimize-cache-strategy.md
Phase 4: 検証と記録
目的: 効果を検証し記録する
アクション:
references/Level4_expert.mdで監査観点を確認- ヒット率/速度改善を確認
scripts/validate-skill.mjsで構造検証scripts/log_usage.mjsで記録
Task: agents/validate-cache-impact.md
Task仕様ナビ
| Task | 役割 | 入力 | 出力 | 参照先 | 実行タイミング |
|---|---|---|---|---|---|
| 対象整理 | キャッシュ対象整理 | ワークフロー | 対象メモ | references/cache-action.md |
Phase 1 |
| キー設計 | キー/パス設計 | 対象メモ | キー設計メモ | references/cache-patterns.md |
Phase 2 |
| 最適化 | 分割/除外方針 | キー設計メモ | 最適化メモ | references/cache-optimization.md |
Phase 3 |
| 検証 | 効果確認 | 最適化メモ | 検証メモ | references/Level4_expert.md |
Phase 4 |
ベストプラクティス
すべきこと
- キーの粒度を明確にする
- restore-keys を設定する
- 10GB制限を意識する
- 大きなキャッシュは分割する
避けるべきこと
- 変更頻度の高い入力をキーに含めすぎる
- ヒット率を測定しない
- キャッシュ肥大を放置する
リソース参照
参照資料
references/Level1_basics.md: 基礎概念references/Level2_intermediate.md: 設計ガイドreferences/Level3_advanced.md: 最適化references/Level4_expert.md: 監査/計測references/cache-action.md: actions/cache 仕様references/cache-patterns.md: 言語別パターンreferences/cache-optimization.md: 最適化戦略references/legacy-skill.md: 旧版要約(移行時のみ)
スクリプト
scripts/estimate-cache-size.mjs: サイズ見積りscripts/validate-skill.mjs: スキル構造検証scripts/log_usage.mjs: 実行ログ記録
テンプレート
assets/cache-examples.yaml: キャッシュ設定例
変更履歴
| Version | Date | Changes |
|---|---|---|
| 2.1.0 | 2025-12-31 | 18-skills準拠、Task仕様追加、scripts整備 |
| 2.0.0 | 2025-12-31 | 18-skills.md仕様に完全準拠 |
| 1.0.0 | 2025-12-24 | 初版作成 |