Reflexion Debug Loop
精选按需触发代码质量最多 8 轮
关于 Reflexion Debug Loop
这是一个手动触发的调试循环,以失败的测试或复现用例为目标。每一轮先运行指定测试,记录失败原因的简短反思,再修改代码并重新验证,最多进行 8 轮。
主要功能
- 01通过 --testNamePattern 只运行目标测试
- 02最多 8 轮,避免无限重试
- 03每轮的反思记录会指导下一次修复
- 04支持 Claude Code 和 Cursor
适用场景
- 01最近的改动导致某个测试失败
- 02已将缺陷报告写成复现测试
- 03用单个可复现测试缩小回归范围
- 目标
- 运行 npm test -- --testNamePattern=<failing-test> 时,原先失败的测试或复现用例能够通过。
- 退出条件
- 复现测试以退出码 0 结束时停止;若 8 轮后仍失败,也到此为止。
- 每轮之间运行
- npm test -- --testNamePattern=<failing-test>
启动提示词
在 Claude Code / Cursor 中粘贴运行,Agent 会按下面的步骤循环执行,直到满足退出条件。
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
修改代码
针对假设做最小范围的修改,然后进入下一轮,由重新运行的测试结果来判断修复是否有效。
未通过 → 下一轮满足条件即退出
支持的 Agent
可以直接运行这个 Loop 的编码 Agent。
Claude Code
Cursor
评论
支持 Markdown