SuperAPI AI 工具集

agent-introspection-debugging

智能体与模型

查看项目

更新于 10-15 08:33

技能介绍

用途

Agent Introspection Debugging 是一个工作流技能,用于在 AI 智能体运行失败时进行结构化自我调试。它适用于智能体反复失败、消耗 token 却无进展、在同一工具上循环调用,或逐渐偏离既定任务的场景。该技能不是隐藏的运行时,而是教会智能体在升级给人类之前,系统性地调试自身。

何时启用

  • 达到最大工具调用次数或循环限制而失败
  • 反复重试但没有向前推进
  • 上下文增长或提示漂移开始降低输出质量
  • 文件系统或环境状态与预期不符
  • 工具失败但很可能通过诊断和更小的纠正动作恢复

范围边界

该技能适用于:在盲目重试前捕获失败状态、诊断常见的智能体特有失败模式、应用受控的恢复动作、生成结构化的人类可读调试报告。

不应用作以下情况的主要来源:代码变更后的功能验证(应使用 verification-loop)、已有更窄 ECC 技能覆盖的框架特定调试、当前运行环境无法自动强制执行的运行时承诺。

四阶段循环

第一阶段:失败捕获

在尝试恢复之前,精确记录失败。需要捕获:错误类型、消息和堆栈跟踪(如有);最后一次有意义的工具调用序列;智能体当时试图做什么;当前上下文压力(重复提示、过大的粘贴日志、重复计划或失控笔记);当前环境假设(工作目录、分支、相关服务状态、预期文件)。

最小捕获模板:

## Failure Capture
- Session / task:
- Goal in progress:
- Error:
- Last successful step:
- Last failed tool / command:
- Repeated pattern seen:
- Environment assumptions to verify:

第二阶段:根因诊断

在改变任何东西之前,将失败匹配到已知模式。

模式 可能原因 检查
最大工具调用 / 重复相同命令 循环或无退出观察路径 检查最后 N 次工具调用是否重复
上下文溢出 / 推理退化 无界笔记、重复计划、过大日志 检查近期上下文是否有重复和低信号内容
ECONNREFUSED / 超时 服务不可用或端口错误 验证服务健康、URL 和端口假设
429 / 配额耗尽 重试风暴或缺少退避 统计重复调用并检查重试间隔
写入后文件缺失 / 差异过期 竞态、错误工作目录或分支漂移 重新检查路径、工作目录、git 状态和实际文件是否存在
“修复”后测试仍失败 假设错误 隔离确切的失败测试并重新推导 bug

诊断问题:这是逻辑失败、状态失败、环境失败还是策略失败?智能体是否丢失了真实目标并开始优化错误的子任务?失败是确定性的还是暂时性的?验证诊断的最小可逆动作是什么?

第三阶段:受控恢复

用能改变诊断表面的最小动作进行恢复。安全恢复动作包括:停止重复重试并重述假设;裁剪低信号上下文,只保留活跃目标、阻塞项和证据;重新检查实际文件系统 / 分支 / 进程状态;将任务缩小到一个失败命令、一个文件或一个测试;从推测性推理切换到直接观察;当失败高风险或受外部阻塞时升级给人类。

不要声称支持“重置智能体状态”或“更新运行配置”等未经实际工具执行的自动修复动作。

受控恢复检查清单:

## Recovery Action
- Diagnosis chosen:
- Smallest action taken:
- Why this is safe:
- What evidence would prove the fix worked:

第四阶段:自省报告

以一份报告结束,使恢复过程对下一个智能体或人类可读。

## Agent Self-Debug Report
- Session / task:
- Failure:
- Root cause:
- Recovery action:
- Result: success | partial | blocked
- Token / time burn risk:
- Follow-up needed:
- Preventive change to encode later:

恢复启发式

按顺序优先采用以下干预:用一句话重述真实目标;验证世界状态而非信任记忆;缩小失败范围;运行一次有区分度的检查;然后才重试。

坏模式:用略有不同的措辞重试同一动作三次。

好模式:捕获失败、分类模式、运行一次直接检查、仅当检查支持时才改变计划。

与 ECC 的集成

如果代码被更改,恢复后使用 verification-loop。当失败模式值得转化为本能或后续技能时,使用 continuous-learning-v2。当问题不是技术失败而是决策模糊时,使用 council。如果失败来自冲突的本地状态或仓库漂移,使用 workspace-surface-audit。

输出标准

当此技能激活时,不要仅以“我修好了”结束。始终提供:失败模式、根因假设、恢复动作、情况现已改善或仍被阻塞的证据。