ARTICLE · 人工智能

长时运行智能体的高效框架

作者:Anthropic Engineering 来源:Anthropic Engineering 2026-08-22 03:42 9 分钟 2102 字
AI 智能体LLMAI 编程智能体 SDK多上下文窗口
一语总结

Anthropic 工程团队详细介绍了一种双智能体框架模式——一个初始化智能体负责搭建功能列表、进度日志和初始化脚本,另有一个编码智能体以增量方式工作,配合 Git 提交和基于浏览器的端到端测试——使 Claude Agent SDK 能够在多个上下文窗口之间取得可靠进展。

AI 总结

文章介绍了 Anthropic 对长时运行智能体问题的解决方案:这类 AI 智能体必须在多个离散的上下文窗口会话中运行,且没有持久记忆。核心失败模式有两种:(1) 智能体试图一次性完成整个项目而耗尽上下文;(2) 智能体在部分进展后过早宣布胜利。解决方案在同一框架上使用两个专用提示词:一个初始化智能体,运行一次以创建结构化的功能列表(JSON,含通过/失败状态)、一个用于启动开发服务器的 init.sh 脚本、一份进度日志,以及一个初始 Git 提交;还有一个编码智能体,在每个后续会话中运行,读取进度日志和 Git 历史,选择单个未通过的功能,实现它,并使用浏览器自动化(Puppeteer MCP)进行端到端验证,然后提交更改并更新进度日志。会话启动例程(pwd、读取进度、读取功能列表、git log、运行 init.sh、冒烟测试)可确保每个智能体快速恢复情境意识。文章包含一张失败模式/解决方案表,承认了剩余限制(浏览器自动化的视觉盲区、单智能体与多智能体架构的开放问题),并提供了快速入门代码仓库。这些模式基于日常软件工程实践,可直接迁移到其他长周期智能体任务。

核心要点
  1. 长时运行智能体需要显式的环境搭建来跨越上下文窗口边界。

    初始化智能体会创建功能列表(JSON)、init.sh、进度日志和初始 Git 提交,使每个后续编码智能体在开始时都清楚剩余工作,并拥有可运行的环境。

  2. 增量式、单功能工作加上强制端到端测试,可以避免一次性完成和虚假完成。

    编码智能体会选择一个未通过的功能,实现它,通过浏览器自动化(Puppeteer MCP)验证,然后提交并更新进度日志——确保每个会话结束时都处于干净、可合并的状态。

  3. 会话启动例程(读取进度、git log、运行 init.sh、冒烟测试)能高效恢复情境意识。

    固定的工具调用序列让每个全新的智能体实例能在几秒内恢复项目状态,尽早发现回归问题,并避免浪费 token 去重新摸索如何运行或测试应用。

  4. 结构化的 JSON 功能列表比 Markdown 更能抵抗模型漂移。

    模型不太可能不适当地编辑或删除 JSON 文件;措辞强硬的指令要求只切换通过/失败字段,从而进一步保护功能清单。

  5. 仍存在开放问题:单一通用智能体与专业化多智能体团队之间的取舍;以及是否可推广到全栈 Web 应用之外。

    作者指出,专门的测试、QA 或清理智能体可能会提高子任务质量,而且同样的原则也可能适用于科学研究或金融建模工作流。

长时运行智能体的高效框架

文章介绍了 Anthropic 对长时运行智能体问题的解决方案:这类 AI 智能体必须在多个离散的上下文窗口会话中运行,且没有持久记忆。核心失败模式有两种:(1) 智能体试图一次性完成整个项目而耗尽上下文;(2) 智能体在部分进展后过早宣布胜利。解决方案在同一框架上使用两个专用提示词:一个初始化智能体,运行一次以创建结构化的功能列表(JSON,含通过/失败状态)、一个用于启动开发服务器的 init.sh 脚本、一份进度日志,以及一个初始 Git 提交;还有一个编码智能体,在每个后续会话中运行,读取进度日志和 Git 历史,选择单个未通过的功能,实现它,并使用浏览器自动化(Puppeteer MCP)进行端到端验证,然后提交更改并更新进度日志。会话启动例程(pwd、读取进度、读取功能列表、git log、运行 init.sh、冒烟测试)可确保每个智能体快速恢复情境意识。文章包含一张失败模式/解决方案表,承认了剩余限制(浏览器自动化的视觉盲区、单智能体与多智能体架构的开放问题),并提供了快速入门代码仓库。这些模式基于日常软件工程实践,可直接迁移到其他长周期智能体任务。

文章金句

"

想象一个由轮班工程师参与的软件项目,每个新来的工程师都不记得上一个班次发生了什么。

"

我们所说的“干净状态”是指适合合并到主分支的代码:没有重大 bug,代码有序且文档完善,总体来说,开发人员可以轻松开始新功能的开发,而不必先清理无关的混乱。

"

删除或编辑测试是不可接受的,因为这可能导致功能缺失或出现 bug。

"

一旦被明确提示使用浏览器自动化工具,并像人类用户一样进行所有测试,Claude 在端到端验证功能方面大多表现得很好。