mcpField

Reflexion Debug Loop

おすすめ手動実行
コード品質最大 8 ラウンド

Reflexion Debug Loop について

失敗するテストや再現ケースを軸にした、手動起動のデバッグループです。各ラウンドで対象テストを実行し、失敗理由の短い振り返りを記録してからコードを修正し、再度確認します。最大 8 ラウンドまで実行します。

主な機能

  1. 01--testNamePattern で対象テストだけを実行
  2. 02最大 8 ラウンドで無限リトライを防止
  3. 03各ラウンドの振り返りメモが次の修正の手がかりに
  4. 04Claude Code と Cursor に対応

活用シーン

  1. 01最近の変更後に失敗し始めたテストの調査
  2. 02バグ報告を再現テストにした場合の修正
  3. 03再現可能な 1 つのテストによるリグレッションの絞り込み
目標
npm test -- --testNamePattern=<failing-test> を実行したとき、それまで失敗していたテストまたは再現ケースが通過します。
終了条件
再現テストが終了コード 0 で終わった時点、または 8 ラウンド後も失敗する場合はその時点で停止します。
各ラウンドの間に実行
npm test -- --testNamePattern=<failing-test>

起動プロンプト

Claude Code / Cursor に貼り付けて実行すると、終了条件を満たすまでエージェントが以下の手順を繰り返します。

prompt.md
「Reflexion Debug Loop」ループを開始します。
目標:npm test -- --testNamePattern=<failing-test> を実行したとき、それまで失敗していたテストまたは再現ケースが通過します。
最大ラウンド数:8。
ステップ 1:バグを再現する — 対象テストを実行して出力を確認します。終了コードが 0 ならループは完了で、そうでなければ失敗したアサーションとエラーメッセージを記録します。 `npm test -- --testNamePattern=<failing-test>`
ステップ 2:原因を振り返る — 今回の出力と過去のラウンドのメモをもとに失敗の仮説を書き出し、すでに効果がないと分かった案は除外します。
ステップ 3:コードを修正する — 仮説に対応する最小限の変更を加えて次のラウンドへ進みます。再実行したテストの結果で修正が有効かどうかを判断します。
各ラウンドの間に実行:`npm test -- --testNamePattern=<failing-test>`
終了条件:再現テストが終了コード 0 で終わった時点、または 8 ラウンド後も失敗する場合はその時点で停止します。

手順

各ラウンドは順番に実行され、終了条件を満たさなければ次のラウンドへ進みます(最大 8 ラウンド)。

01
バグを再現する

対象テストを実行して出力を確認します。終了コードが 0 ならループは完了で、そうでなければ失敗したアサーションとエラーメッセージを記録します。

$npm test -- --testNamePattern=<failing-test>
02
原因を振り返る

今回の出力と過去のラウンドのメモをもとに失敗の仮説を書き出し、すでに効果がないと分かった案は除外します。

03
コードを修正する

仮説に対応する最小限の変更を加えて次のラウンドへ進みます。再実行したテストの結果で修正が有効かどうかを判断します。

未達 → 次のラウンド条件を満たせば終了

対応エージェント

この Loop をそのまま実行できるコーディングエージェントです。

Claude Code
Cursor

コメント