Chain-of-Thought Monitoring & Interruption
Nikola Balic (@nibzard)· emerging
问题
AI Agent在生成最终输出前,可能会沿着错误的推理路径长时间推进。等到开发者意识到方法存在问题时,大量时间和tokens已被浪费在这一从根本上就有缺陷的方向上。传统的“启动即不管(fire and forget)”式Agent执行模式,无法提供早期路线修正的机会。
方案
实现对Agent中间推理步骤的主动监控,具备在完整执行序列完成前进行中断和重定向的能力。实时监控思维链输出、工具调用及中间结果,始终保持“严阵以待”的状态,尽早捕捉错误导向。
核心机制:
实时推理可视化:
- 实时展示Agent的思维演化过程
- 呈现工具调用决策及中间结果
- 在代码执行前展示规划步骤
低摩擦中断机制:
- 支持快速终止能力(如键盘快捷键、UI控件)
- 中断时保留已完成的部分工作
- 允许在执行过程中注入上下文
早期检测信号:
- 文件选择错误
- 初始工具调用中的假设存在漏洞
- 首次推理步骤中显露出对需求的误解
sequenceDiagram
participant Dev as 开发者
participant Agent as AI Agent
participant Tools as 工具执行模块
Agent->>Dev: 展示推理过程:"我将修改auth.ts文件……"
Agent->>Tools: 开始读取文件
Dev->>Agent: 中断!(文件选择错误)
Dev->>Agent: "请改用oauth.ts文件"
Agent->>Tools: 读取oauth.ts文件
Agent->>Dev: 展示更新后的推理过程
Note over Dev,Agent: 在首次工具调用环节<br/>就完成了错误修正
如何使用
适用场景:
- 错误选择文件会造成高昂代价的复杂重构场景
- 需要深入理解代码库的任务
- 高风险操作(如数据库迁移、API变更)
- Agent可能误解模糊需求的情况
- 迭代速度至关重要的开发工作流
实现方案:
UI层面实现:
- 实时流式展示Agent的推理过程
- 提供醒目的中断/停止控制选项
- 尽可能在执行前展示工具调用计划
- 支持无需重启的内联修正
CLI层面实现:
- 流式输出包含推理过程的详细日志
- 支持通过Ctrl+C中断操作并保留上下文
- 可结合额外上下文重新引导任务
- 修正后具备任务恢复执行的能力
最佳实践:
- 密切监控首次工具调用 —— 首次操作能直观反映Agent对任务的理解程度
- 留意假设声明 —— 关注诸如“基于X,我将执行Y”这类表述
- 尽早中断 —— 不要等到错误执行序列完成后再进行干预
- 给出具体修正意见 —— 帮助Agent明确问题根源
- 使用澄清性问题 —— 有时暂停并澄清需求,比直接重新引导任务更合适
权衡
优点:
- 避免在从根本上错误的方案上浪费时间
- 最大化昂贵模型调用的价值
- 支持人机协同解决问题
- 减少因可避免的错误产生的挫败感
- 发现初始工具调用环节中的误解
缺点:
- 需要人类主动关注(无法完全自主运行)
- 若触发时机过早,可能打断富有成效的探索进程
- 可能导致处理常规任务时依赖人工监督
- 增加了监控Agent推理过程的认知负荷
- 存在过度纠正、阻碍合理创新方案的风险
参考文献
关键词:
核心内容为Vulcan的Tanner Jones就借助Claude Code创建公司提出的“随时准备干预不良行为”的实操建议,以及与之相关的“控制范围/混合主动性”“详尽推理透明度”两类技术模式。
- 《借助Claude Code创建公司》 - Vulcan的坦纳·琼斯(Tanner Jones)建议:“做好随时抽身并干预任何不良行为的准备。”
- 相关模式:《控制范围/混合主动性》、《详尽推理透明度》
来源摘要
正在获取来源并生成中文摘要…
来源: https://claude.com/blog/building-companies-with-claude-code