中文精炼导读
核心观点
- Lilian Weng 综述"harness 工程"及其与递归自我改进(RSI)的关系:harness 是围绕基座模型的系统——编排执行、决定模型如何思考与规划、调用工具与行动、感知与管理上下文、存储制品、评估结果;成功的编码 agent 产品(Claude Code、Codex)证明 harness 是 AI 部署的关键组件,"原始模型与真实世界环境之间的这层与模型原始智能一样重要"。
- RSI 的近路径预言:短期内不会以"模型直接重写自己的权重"开始,而会走向"元方法论"——改进获得更好答案的机制(而非只改进答案本身);harness 系统本身成为优化目标,少启发式规则、多通用机制;许多 harness 改进最终会被内化进核心模型行为,但与外部上下文和工具的接口应保留(提示工程的历史即是先例:手工 prompt 技巧随指令微调与模型推理改进而不再核心,但指定目标、约束、上下文与评估的需求没有消失)。
- 三大 harness 设计模式:工作流自动化(定义模型可操作、测试、迭代的工作流,Karpathy 的 autoresearch 是干净例子);文件系统作为持久记忆(长视界 agent 的制品与日志远超上下文窗口,用简单文件形式管理持久状态能自然受益于核心模型能力的进步);子代理与后台任务(并行执行、父代理做进程管理,关键是让并行显式且可检查)。
- 上下文工程的核心思想是"把上下文当作演进的 playbook 而非越来越长的 prompt":ACE 用 bullet points(带标识符与描述)维护一份上下文剧本,由 Generator 生成轨迹、Reflector 提炼洞察、Memory Manager 演化剧本,避免简单地无限追加工具响应与生成。
- 自我改进 harness 的代表性工作:AHE 围绕"可观测性"建立闭环(组件/经验/决策三层可观测性,每个编辑都是可证伪的、受证据驱动的文件级声明,且 runs/tracer/verifier/LLM 配置只读以禁掉一批奖励黑客);进化搜索(AlphaEvolve、ShinkaEvolve、Darwin Gödel Machine 等)把 harness 代码库当进化对象,在 Terminal-Bench-2/SWE-bench 上发现的可进化 harness 能持平或超过人类手工设计的 agent。

内容精讲
文章从递归自我改进(RSI)的历史概念出发:I. J. Good(1965)定义了"超智能机器"——能在所有智力活动上超越人类并设计出更好机器来改进自身的系统;Yudkowsky(2008)用"递归自我改进"指代特定反馈回路:AI 用当前智能改进产生其智能的认知机制。在现代 AI 中,这个反馈回路可能体现为模型直接重写自己的权重,更广泛地则体现为"模型改进训练流水线与部署系统,进而催生在经济价值任务上表现更好的后继模型"。作者特意提到"部署系统",因为"原始模型与真实世界上下文之间的这层与模型原始智能(即预训练后的 evals)一样重要"。harness 就是围绕基座模型的系统,负责编排执行、决定思考与规划、调用工具与行动、感知与管理上下文、存储制品、评估结果。近期关于自动研究、自我改进 agent 与进化程序搜索的工作都可以围绕这个问题组织。
Harness 设计模式部分提出三点。模式一"工作流自动化":定义一个模型可以操作、测试、迭代的工作流是关键设计;Karpathy 的 autoresearch 仓库是一个干净的例子——常见工作流是"规划 → 执行 → 观察/测试 → 改进 → 再执行直到目标达成"的目标导向循环,可能主动向用户请求澄清;工作流图强调模型分析自己的轨迹与失败案例、通过"agent 运行时"迭代,而非静态 prompt 模板。模式二"文件系统作为持久记忆":长视界 agent 系统里反复出现的模式是"对丰富状态与制品的简单控制"——harness 不应把整个工作流与所有日志都扛在上下文里,而应把持久状态存在文件里;长视界 rollout 的制品(实验日志、代码 diff、论文摘要、错误轨迹、过去的 rollout 轨迹)往往远超模型训练的上下文窗口;学会用 bash 命令读写编辑文件系统是 LLM 的基础技能,因此"用简单文件形式管理持久记忆"自然受益于核心模型能力的进步。模式三"子代理与后台任务":harness 可以并行派生多个子代理并监控后台作业——当主 agent 需要搜索多个假设、并发跑实验或委派隔离子任务(不污染主上下文)时很有用;父 agent 需要一个小的进程管理器(启动作业、检查日志、取消失败运行、把结果合并回主线程);关键设计是让并行显式且可检查——如果子代理输出只活在临时聊天上下文里,很快就会过时和隐藏;如果存成文件、日志与状态记录,模型就能在中断后恢复并推理自己的执行历史。
编码 agent harness 的案例分析展示了接口已经趋稳:Claude Code、Codex、OpenCode、Cursor 式 agent 普遍用类似循环——在工具集帮助下在给定仓库里开发与调试(文件系统工具:glob/grep/ls、read、write/edit/apply_patch;shell 执行;lsp 与 git 工具;MCP 工具与技能;web 搜索;制品;后台进程;agent 委派)。
"Harness 层 vs 核心智能?"给出未来展望:很难预测 RSI 未来多大程度依赖 harness 工程,但短期路径不会从"模型直接重写权重"开始。他预测:harness 工程将朝"元方法论"演进——改进获得更好答案的机制,harness 系统本身成为优化目标(更少启发式、更多通用机制);成熟的 harness 使自动研究驱动的自我改进循环成为可能,而更聪明的模型防止 harness 过度工程化、保持系统可持续;最终许多 harness 改进会被内化进核心模型行为,但与外部上下文与工具的接口应保留。提示工程的历史是软性先例:手工 prompt 技巧随指令微调与推理改进而不再核心,但指定目标、约束、上下文与评估的需求没有消失。

"Harness 优化"的演进脉络是"指令 prompt → 结构化上下文 → 工作流 → harness 代码 → 优化器代码"——模型越强越智能,就越走向更复杂的目标与更通用的方法。上下文工程(Context Engineering)解决"简单地把所有工具响应与模型生成追加进上下文会失控"的问题:它是一层为 LLM 构建更结构化、更简洁上下文并管理持久状态的层;长上下文研究无疑会持续进步,但当下"长上下文智能"与"上下文工程"常交织。ACE(Agentic Context Engineering;Zhang et al. 2025)把上下文当作演进的 playbook 而非越来越长的 prompt:用 bullet points(每条有标识符与描述)维护一份上下文剧本,Generator 参考剧本生成任务轨迹、Reflector 从轨迹提炼洞察、Memory Manager 演化剧本。
"自我改进 harness"部分:Self-Harness 在 Terminal-Bench-2 上展示为不同基座模型学习模型特定的 harness 指令(针对不同弱点)并提升保留 pass 率;作者同时提出担忧——如果程序被允许编辑操作系统,抽象边界就被打破,可编辑表面需要精心设计、权限控制与安全层需在循环之外,奖励黑客的挑战依旧。AHE(Agentic Harness Engineering;Lin et al. 2026)认为 harness 演进的瓶颈在可观测性——rollout 失败时需要知道哪个组件负责、每次编辑都应有证据支撑,框架用三层可观测性建立闭环:组件可观测性(每个可编辑 harness 组件在文件系统里有表示、动作空间显式可追踪;7 个组件:系统 prompt、工具描述、工具实现、中间件、技能、子代理配置、长期记忆;每种失败模式映射到一个组件让编辑更精准)、经验可观测性(把大量原始轨迹分析归纳为证据与失败模式的层次结构——k 条轨迹各存一个文件,用"agent debugger"逐任务生成根因分析报告、聚合成基准概览,分层访问更省 token)、决策可观测性(每次编辑配一个对下一轮的预测以验证——"Evolve agent"读仓库决定编辑哪个组件并产出编辑与推理;每个编辑都是文件级的可证伪声明、下一轮可验证;两条约束:编辑只作用于 harness 工作区、runs/tracer/verifier/LLM 配置只读(禁用一组奖励黑客,如禁用 verifier、换模型、提高推理预算),且编辑受证据驱动带"宣言条目")。AHE 在 Terminal-Bench-2 上超过人类设计的 harness(OpenCode、Terminus-2、Codex)除 Hard 档外,且同样的冻结 harness 无进一步演化可迁移到 SWE-bench-verified——说明演化出的 harness 把工程经验编码进组件而非做基准特定优化。
"进化搜索"部分:进化搜索适用于搜索空间大或形状怪异、难以直接梯度优化但容易评估解的场合,harness 搜索正合适。Promptbreeder(Fernando et al. 2023)用丰富变异操作优化任务特定 prompt、且变异 prompt 本身也随进化改进;GEPA 结合反思式提示与进化搜索;AlphaEvolve(Novikov et al. 2025)是编码 agent 进化搜索系统——维护候选程序池、用冻结 LLM 生成改进 diff,反复评估子程序、保留成功者;细节包括 prompt 含父程序/结果/指令/元信息、用 # EVOLVE-BLOCK-START/END 标记改进区、元 prompt 协同进化;ShinkaEvolve 改进采样效率(平衡性能排名与后代数的父采样、基于嵌入余弦相似度的代码新颖性拒绝采样、在 meta-scratchpad 里识别成功模式引导未来变异)。Darwin Gödel Machine(DGM;Zhang et al. 2025)显式瞄准"用 LLM 编码 agent 进化可编辑的 harness 代码仓库"——agent 被允许修改自己的 harness;在 Claude 3.5 Sonnet 基座上,DGM 发现的 agent 在 SWE-bench Verified(20%→50%)与 Polyglot(14.2%→30.7%)上相当或优于手工 agent。这类方法在候选解可自动评估、适应度易量化时效果很好(矩阵乘法、GPU kernel 优化、算法竞赛、数据中心调度),在评估慢、模糊或大多启发式的领域则吃力,计算效率与有效性也是顾虑。
"与模型权重的联合优化"部分:SIA(Hebbar et al. 2026)是早期把 harness 改进与模型参数更新放进同一优化循环的尝试——Meta-Agent 提出初始 harness、Task-Specific Agent 执行任务、Feedback-Agent 基于最近轨迹决定更新 harness 还是模型权重;作者指出其实验有几个混淆点(任务特定 agent 比 Meta/Feedback 用的模型弱得多、基线太弱难以干净对照),方向有趣但证据是初步的,训练稳定性等挑战依然存在。
阅读价值
适合 agent 平台开发者、LLM 应用架构师与关注"自我改进 AI 系统"的研究者:这篇文章系统梳理了 harness 工程的设计模式(工作流/文件系统记忆/子代理)、上下文工程、自我改进 harness(Self-Harness、AHE 的三层可观测性)与进化搜索(AlphaEvolve、DGM),并给出"harness 是 RSI 近路径"的清晰判断;对想构建可演化、可审计的 agent 系统的人有很强的指导价值。
本文为中文精炼导读,由 AI 基于原文整理,内容与图片版权归原作者所有。原文: https://lilianweng.github.io/posts/2026-07-04-harness/