All skills

agent-introspection-debugging

Official
by Api.AirforcePrepends a system promptAI & Agent Building000 uses202,700

キャプチャ、診断、封じ込め回復、内省レポートを使用した AI エージェント障害のための構造化された自己デバッグワークフロー。

open-sourceclaude-codeai-agent-buildingaffaan-m
Share

What this skill does

When applied, it prepends a system prompt before your request is sent — no extra calls and no change to how you are billed beyond the added tokens.

---
name: agent-introspection-debugging
description: キャプチャ、診断、封じ込め回復、内省レポートを使用した AI エージェント障害のための構造化された自己デバッグワークフロー。
origin: ECC
---

# エージェント内省デバッグ

エージェント実行が繰り返し失敗している、進展なくトークンを消費している、同じツールをループしている、または意図したタスクから逸脱している場合にこのスキルを使用します。

これはワークフロースキルであり、隠れたランタイムではありません。エージェントが人間にエスカレーションする前に体系的に自己デバッグするよう教えます。

## 起動タイミング

- ツール呼び出しの最大数 / ループ制限の失敗
- 前進なしの繰り返しリトライ
- 出力品質の低下を招くコンテキストの増大またはプロンプトのドリフト
- 期待と現実の間でのファイルシステムや環境状態の不一致
- 診断とより小さな修正アクションで回復可能なツールの失敗

## スコープ境界

このスキルを起動するのは以下の場合:
- 盲目的にリトライする前に障害状態をキャプチャする
- エージェント固有の一般的な障害パターンを診断する
- 封じ込め回復アクションを適用する
- 構造化された人間が読めるデバッグレポートを生成する

このスキルを主なソースとして使用しない場合:
- コード変更後の機能検証; `verification-loop` を使用
- より狭い ECC スキルが既に存在するフレームワーク固有のデバッグ
- 現在のハーネスが自動的に強制できないランタイムの約束

## 四フェーズループ

### フェーズ 1: 障害キャプチャ

回復を試みる前に、障害を正確に記録します。

キャプチャ内容:
- エラーの種類、メッセージ、スタックトレース(利用可能な場合)
- 最後の意味のあるツール呼び出しシーケンス
- エージェントが何をしようとしていたか
- 現在のコンテキスト圧力:繰り返されるプロンプト、過大なペーストされたログ、重複した計画、暴走するノート
- 現在の環境の前提:cwd、ブランチ、関連するサービス状態、期待されるファイル

最小キャプチャテンプレート:

```markdown
## 障害キャプチャ
- セッション / タスク:
- 進行中の目標:
- エラー:
- 最後に成功したステップ:
- 最後に失敗したツール / コマンド:
- 観察された繰り返しパターン:
- 検証すべき環境の前提:
```

### フェーズ 2: 根本原因診断

何も変更する前に、障害を既知のパターンに照合します。

| パターン | 考えられる原因 | チェック |
| --- | --- | --- |
| ツール呼び出しの最大数 / 同じコマンドの繰り返し | ループまたは出口なしのオブザーバーパス | 最後の N 回のツール呼び出しを繰り返しについて検査する |
| コンテキストオーバーフロー / 推論の低下 | 無制限のノート、繰り返される計画、過大なログ | 最近のコンテキストを重複と低シグナルのバルクについて検査する |
| `ECONNREFUSED` / タイムアウト | サービスが利用不可または間違ったポート | サービスの健全性、URL、ポートの前提を確認する |
| `429` / クォータ枯渇 | リトライストームまたはバックオフなし | 繰り返し呼び出しを数え、リトライ間隔を検査する |
| 書き込み後にファイルが見つからない / 古い差分 | レース、間違った cwd、またはブランチドリフト | パス、cwd、git ステータス、実際のファイル存在を再確認する |
| 「修正」後もテストが失敗し続ける | 間違った仮説 | 失敗している正確なテストを分離し、バグを再導出する |

診断の質問:
- これはロジックの失敗か、状態の失敗か、環境の失敗か、ポリシーの失敗か?
- エージェントは実際の目標を見失い、間違ったサブタスクを最適化し始めたか?
- 障害は決定論的か一時的か?
- 診断を検証する最小の可逆的アクションは何か?

### フェーズ 3: 封じ込め回復

診断の表面を変える最小のアクションで回復します。

安全な回復アクション:
- 繰り返しのリトライを停止し、仮説を再述べる
- 低シグナルのコンテキストを削除し、アクティブな目標、ブロッカー、エビデンスのみを保持する
- 実際のファイルシステム / ブランチ / プロセス状態を再確認する
- タスクを 1 つの失敗しているコマンド、1 つのファイル、または 1 つのテストに絞り込む
- 推測的な推論

Use this skill

Per request

Add a "skill" field with the skill’s ID to your chat completion request. It is applied server-side before your prompt is sent — no extra calls.

{
  "model": "gpt-4o-mini",
  "skill": "imp-0f7f004d-feb0-411f-82fc-2a7a4500f6cb",
  "messages": [{ "role": "user", "content": "…" }]
}
Always on — no field to send

Install the skill, enable it in your dashboard and (optionally) limit it to specific models. It then applies automatically to every matching request — with no "skill" field to send each time.

Set it up in your dashboard