深度综述:Effective Harnesses for Long-Running Agents

引言

AI Agent 在处理复杂长期任务时面临重大挑战。即使是当前最强大的语言模型,也常因上下文窗口受限、缺乏跨会话记忆而无法持续推进跨数小时或数天的工作。Anthropic 在 2025 年发布的技术文章《Effective Harnesses for Long-Running Agents》针对这一问题提出了一套工程级解决方案,为实现"长时间运行的智能体"提供了可实践的框架。本文将深入分析其设计原理、关键技术和工程实践,并总结相关社区案例与未来方向。

一、长时间运行智能体的核心问题

在多上下文窗口(context windows)工作时,智能体每次新会话都像没有记忆的工程师一样重新开始,这导致:

  • 未完成的功能缺乏历史背景;

  • 下一轮会话无法正确推断项目状态;

  • 重复工作或错误判断任务已完成。

这种"上下文失忆"(context amnesia)是阻碍智能体长期任务执行的根本问题,特别在软件工程项目这样的复杂流程中尤为突出。

二、Anthropic 的框架设计原则

Anthropic 提出的架构旨在让 AI Agent 在离散会话中保持连续性与渐进性,核心思想如下:

  1. 借鉴工程师工作流程

    人类软件工程师常通过版本控制、功能清单与逐步测试推进项目,而不是试图一次完成任务或跳过必要验证。Anthropic 将这一思路迁移到 Agent 设计中。

  2. 将复杂任务分解为可管理单元

    将任务拆分为多个功能,每次会话只专注于实现其中之一,并通过结构化文件记录状态。

三、双 Agent 架构:Initializer 与 Coding Agent

Anthropic 提出的长时间运行 Agent 框架由两个角色组成:

3.1 初始化 Agent(Initializer Agent)

首次运行时,初始化 Agent 的任务包括:

  • 创建项目 git 仓库;

  • 生成启动脚本(如 init.sh);

  • 输出详细的功能列表文件(feature_list.json);

  • 创建进度日志文件(如 claude-progress.txt);

  • 提交初始代码。

这样做的目的是为后续任务建立一个标准化的工作环境,使后续 Agent 能直接从文件中读取项目状态,而无需凭借先前对话的记忆。

3.2 增量 Coding Agent

所有后续会话由 Coding Agent 负责,它的行为准则包括:

  • 从文件和历史记录中恢复项目状态(如读取进度日志、Git 历史等);

  • 一次只实现一个未完成的功能

  • 每轮结束前执行端到端测试

  • 提交代码与更新进度日志

这种方式能够强制 Agent 不再尝试"一次性完成大任务",也避免了半途而废、遗漏功能等问题。

四、核心机制细节

4.1 功能清单与增量工作流

初始化 Agent 会创建包含大量详细功能的 JSON 文件,例如:

复制代码
{
  "category": "functional",
  "description": "New chat button creates a fresh conversation",
  "steps": [
    "Navigate to main interface",
    "Click the 'New Chat' button",
    "Verify a new conversation is created",
    "Check that chat area shows welcome state",
    "Verify conversation appears in sidebar"
  ],
  "passes": false
}

这个文件作为系统功能验收标准,控制每次 Coding Agent 的工作范围与验证条件,只允许通过修改 passes 字段来标记功能完成。

增量工作流确保了:

  • 每个功能被仔细实现与验证;

  • Agent 不会随意更改测试条件;

  • 功能推进清晰可追踪。

4.2 环境与状态管理

每次会话开始时,Coding Agent 执行一系列固定步骤:

  1. 检查当前目录;

  2. 读取 Git 提交日志;

  3. 阅读功能清单;

  4. 选择下一个待完成的优先功能;

  5. 启动开发服务器并进行基础测试;

  6. 开始实现该功能。

这一标准化步骤帮助 Agent 在有限上下文内快速恢复状态与任务意图。

4.3 强制测试与质量保证

Anthropic 强调,若不强制进行端到端测试,Agent 易于误判功能完成。通过引入自动化测试工具(如浏览器自动化),可以显著提升功能验证的准确性,并减少后续修复开销。

五、实践案例与社区探索

相关社区中出现了多个基于上述架构的实践尝试,例如:

  • 使用网格插件结合 GitHub 自动化管理进度任务;

  • 利用 JSON 进度记录与数据库存储方式持久化状态;

  • 通过命令行工具统一更新进度与任务选择。

这些实践侧面验证了 Anthropic 提出架构的可操作性与实用性。

六、系统优势与限制

6.1 系统优势

  • 跨会话一致性:Agent 能读取外部记录文件并恢复任务状态;

  • 工程规范化推进:采用增量实现、测试驱动与版本控制;

  • 可审计与可回退:Git 历史使功能推进透明且可回滚。

6.2 现阶段限制

尽管此方案有效应对软件工程类长期任务,但对于非代码密集领域(如科研写作、战略分析等)仍需探索更通用的长时间状态管理策略。还有多 Agent 协作 vs 单体 Agent 的性能对比尚未明确。

七、未来方向

未来的研究可能重点包括:

  • 探索多角色 Agent 协作(测试 Agent、质量保证 Agent 等);

  • 推广至科研任务、金融建模类长期任务;

  • 跨项目的数据检索与状态管理机制优化。

我们预期,这一方向将推动智能体从单次任务工具向持续协作助手转型,实现更全面的长期任务自治能力。

八、总结

Anthropic 在《Effective Harnesses for Long-Running Agents》中提出的架构突破了传统智能体对单次上下文窗口的依赖,通过结构化环境、增量开发与持久化状态管理,使 Agent 能有效执行长期任务。该方案虽最初应用于软件开发,但其核心原则对广泛复杂长期任务也具有借鉴意义,为 AI Agent 在真实场景的持续执行能力奠定了基础。

如需进一步补充实践代码示例、架构模板或对比分析,请继续提出具体需求。

相关推荐
只是甲4 小时前
Text2SQL 系列博客 02:技术原理深度剖析 - 从自然语言到 SQL 的完整链路
人工智能·text2sql·nl2sql·ai agent·自助数据分析·data agent·agentic 数据洞察
懷淰メ5 小时前
【AI赋能】基于PyQt+YOLO+DeepSeek水上漂浮物检测系统(详细介绍)
人工智能·yolo·目标检测·计算机视觉·pyqt·漂浮物·水上漂浮物
EQUINOX15 小时前
【论文精读】| CLIP精读
大数据·人工智能
PC2005-cloud5 小时前
博文已索引但不展示:一次 Bing SEO 问题排查记录
服务器·人工智能
weixin_408099675 小时前
2026 图片去文字 API 实战:AI一键去除图片文字(附 Python / Java / PHP / JS 完整代码)
人工智能·api接口·图片去水印·石榴智能·ai图像修复·图片去文字
greenbbLV5 小时前
2026节日慰问品政策解读:合规标准升级与福利行业新趋势
人工智能·节日
奈斯先生Vector6 小时前
告别工具碎片化:基于 Nano Banana 全模态 AI 聚合架构搭建“文本-图像-视频”自动化协同生产线
运维·数据库·人工智能·架构·自动化·aigc·音视频
领麦微红外6 小时前
国产MEMS红外测温传感器:传感器+算法+产品级出厂标定一站式交付模式深度解读
人工智能·硬件工程·产品经理
mingo_敏6 小时前
DeepAgents : 检索(Retrieval)
人工智能·深度学习·langchain
微三云 - 廖会灵 (私域系统开发)6 小时前
消费即资产:积分增值异业联盟商业模式完整拆解(附落地逻辑、合规方案与盈利模型)
大数据·人工智能