Agent skill
retry-strategies
外部APIや分散システムの一時的障害に対して、リトライ・タイムアウト・サーキットブレーカーを組み合わせた回復戦略を設計し、実装まで導くスキル。 失敗特性の分類、指数バックオフとジッター、隔離(Bulkhead)などの適用判断を整理し、過剰リトライや雪崩障害を避ける。 Anchors: • Designing Data-Intensive Applications / 適用: 分散システムの障害特性と復旧設計 / 目的: 失敗モードに合わせた戦略選定 • Release It! (Michael T. Nygard) / 適用: Circuit Breaker・Bulkhead・Timeout / 目的: 耐障害パターンの適切な適用 • AWS Architecture Blog - Exponential Backoff and Jitter / 適用: リトライ待機とジッター / 目的: 負荷集中の回避 Trigger: Use when designing retry policies, tuning timeouts, introducing circuit breakers or bulkheads, or validating resilience for external API calls. retry, backoff, jitter, circuit breaker, bulkhead, timeout, transient failure, resilience
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/design/retry-strategies
SKILL.md
Retry Strategies
概要
外部APIや分散システムの一時的障害に対して、再試行の方針と耐障害パターンを設計し、実装・検証・運用設計までの判断材料を整理するスキルです。
ワークフロー
Phase 1: 障害特性アセスメント
目的: 依存関係と失敗モードを整理し、リトライ対象と制約を明確化する
アクション:
- 依存先、SLA、過去障害の情報を収集
- エラーを恒久/一時/部分失敗に分類
- 再試行可能性(べき等性、予算、上限)を整理
- 監視指標と制約条件を定義
Task: agents/assess-failure-profile.md を参照
Phase 2: リトライ/耐障害ポリシー設計
目的: 失敗特性に適合するリトライと保護パターンを設計する
アクション:
- バックオフ曲線とジッター方式を選定
- Circuit Breaker/Bulkhead/Timeoutの組み合わせを決定
- しきい値、リトライ予算、上限値を設計
- 設定パラメータと適用範囲を文書化
Task: agents/design-retry-policy.md を参照
Phase 3: 実装検証と運用設計
目的: 実装の妥当性を検証し、運用監視の設計を固める
アクション:
scripts/analyze-retry-config.mjsで設定を分析- テストシナリオと失敗注入条件を整理
- 監視指標、アラート、ロールバック手順を定義
Task: agents/validate-rollout.md を参照
Task仕様ナビ
| Task | 起動タイミング | 入力 | 出力 |
|---|---|---|---|
| assess-failure-profile | Phase 1開始時 | 依存関係と障害情報 | 障害特性プロファイル |
| design-retry-policy | Phase 2開始時 | 障害特性プロファイル | リトライ/耐障害ポリシー設計書 |
| validate-rollout | Phase 3開始時 | 実装コードと設定 | 検証レポート・運用設計ドラフト |
詳細仕様: 各Taskの詳細は agents/ ディレクトリを参照
ベストプラクティス
すべきこと
| 推奨事項 | 理由 |
|---|---|
| 失敗モードを恒久/一時で分類する | 不要な再試行を避け、成功率を上げる |
| リトライ予算と上限を明示する | 雪崩障害と過剰負荷を防ぐ |
| 指数バックオフにジッターを入れる | 同時リトライによる負荷集中を避ける |
| しきい値は計測値に基づいて設計する | 障害の検知精度と復旧速度を両立する |
| タイムアウトをSLAに合わせて設計する | 失敗検知の遅延と待ち過ぎを防ぐ |
避けるべきこと
| 禁止事項 | 問題点 |
|---|---|
| 無限リトライや過度な再試行 | 依存先の障害を拡大させる |
| 固定間隔リトライのみの設計 | サンダリングハードを誘発する |
| エラー種別を区別しない一律リトライ | 永続障害で無駄な負荷をかける |
| タイムアウトを未設定のまま運用 | 障害検知が遅れ、回復判断ができない |
| Circuit Breakerを導入せず外部依存を増やす | 障害の連鎖と復旧遅延を招く |
リソース参照
references/(詳細知識)
| リソース | パス | 読込条件 |
|---|---|---|
| 基礎知識 | references/Level1_basics.md | Phase 1の整理時 |
| 実務判断の整理 | references/Level2_intermediate.md | Phase 2の設計時 |
| 応用パターン | references/Level3_advanced.md | 複雑なケース検討時 |
| エッジケース | references/Level4_expert.md | 例外条件の調整時 |
| Exponential Backoff | references/exponential-backoff.md | バックオフ設計時 |
| Circuit Breaker | references/circuit-breaker.md | しきい値設計時 |
| Bulkhead Pattern | references/bulkhead-pattern.md | 隔離戦略検討時 |
| Timeout Strategies | references/timeout-strategies.md | タイムアウト設計時 |
scripts/(決定論的処理)
| スクリプト | 機能 |
|---|---|
scripts/analyze-retry-config.mjs |
リトライ/CB/タイムアウト設定の静的分析 |
scripts/validate-skill.mjs |
スキル構造と参照リンクの検証 |
scripts/log_usage.mjs |
スキル使用ログの記録 |
assets/(テンプレート)
| アセット | 用途 |
|---|---|
assets/circuit-breaker-template.ts |
Circuit Breaker実装の雛形 |
assets/retry-wrapper-template.ts |
リトライラッパーの再利用テンプレート |
変更履歴
| Version | Date | Changes |
|---|---|---|
| 2.0.0 | 2026-01-02 | 18-skills.md仕様に合わせて再設計、Task仕様書追加、構成を整理 |
| 1.1.0 | 2025-12-31 | 18-skills.md仕様に合わせてagents/とEVALSを追加 |
| 1.0.0 | 2025-12-24 | 仕様整合と必要成果物の追加 |
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?