Lilian Weng 最新万字长文揭示:Agent = Model + Harness。你的Agent不行,可能不是模型太弱,而是Harness太糙。这是2026下半年AI Agent赛道最重要的技术方向。
前言
如果你是 AI 创业者、Agent 开发者,或者正在用 Hermes Agent / OpenClaw / Claude Code 搭建自动化工作流——这篇文章值得你花 10 分钟细读。
OpenAI 前安全系统负责人 Lilian Weng(翁丽莲)于 2026 年 7 月 4 日发布了一篇重磅技术长文《Harness Engineering for Self-Improvement》,在 HN 上获得 117 points。这篇文章首次系统性地阐述了 Agent = Model + Harness 的架构范式,并指出:决定 Agent 最终能力上限的,不是底层模型,而是包裹在模型外面的那层"Harness"(挽具/外壳)。
什么是 Harness?
Weng 给出了一个精确定义:
Harness 是围绕基础模型的系统,负责编排执行、决定模型如何思考与规划、调用工具与执行动作、感知与管理上下文、存储工件、评估结果。
换句话说,Harness 就是 Agent 的"操作系统"。正如 OS 管理 CPU 和内存,Harness 管理模型的推理能力和上下文窗口。
这个概念不是空穴来风。Claude Code、OpenAI Codex、Hermes Agent——这些成功的 Agent 产品之所以有效,不是因为它们用了最强的模型,而是因为它们围绕模型构建了一套精密的 Harness 体系。
三大核心设计模式
Weng 总结了 Harness 工程中已经验证的三大设计模式:
模式一:Workflow Automation(工作流自动化)
定义一个目标导向的循环:Plan → Execute → Observe/Test → Improve → Execute Again,直到目标达成。
这不是简单的 prompt template。这是一个 Agent Runtime——模型在预定义的流程骨架中运行,每一步都能检查自己的输出、分析失败案例、迭代改进。
Codex 和 Claude Code 都采用了这种设计。
模式二:File System as Persistent Memory(文件系统即持久记忆)
不要在上下文里塞所有东西。
这是 Harness 设计的核心教训之一。在长周期 Agent 任务中,实验日志、代码 diff、论文摘要、错误追踪——这些工件很快就会超出上下文窗口。
解决方案:让文件系统承担持久记忆的职责。模型读写文件,通过 grep/cat 检索,而不是把 10 万行日志塞进一个 prompt。
Hermes Agent 的 Skills 系统正是这个模式的实践——每个 Skill 是一个独立文件,按需加载,而非全量塞入上下文。
模式三:Sub-agent and Backend Jobs(子代理与后台任务)
一个 Harness 应该能并行启动多个子代理,让它们独立执行任务,父代理只需汇总结果。
关键设计选择:子代理的输出应该以文件、日志、状态记录的形式持久化,而非仅存于临时对话上下文中。这样模型可以在中断后恢复,也可以推理自己的执行历史。
这正好解释了为什么 Hermes Agent 的 delegate_task 和 OpenClaw 的 sub-agent 系统是 Agent 架构的核心组件,而非附属功能。
Harness 的自我进化:最凶猛的技术趋势
Weng 文章中最让人兴奋的部分,是关于Harness 的自我优化。
Meta-Harness:让 Harness 优化 Harness
Lee et al. (2026) 的 Meta-Harness 工作提出了一个元层面的设计:优化对象不是 Agent 的行为,而是 Agent 的 Harness 代码本身。
流程是这样的:
1. 一个"Proposer" Agent 生成新的 Harness 候选方案
2. 方案在测试任务上运行评估
3. 只有表现更好的 Harness 被保留
4. 循环迭代
结果令人震惊:Meta-Harness 自动发现的 Harness 设计,在 TerminalBench-2 上超越了人类专家手工设计的方案。
这意味着什么?一旦 Harness 设计变成了代码搜索空间,一个强大的编程 Agent 就能自动找到比人类更好的解决方案。
STOP:自我改进的脚手架
Zelikman et al. (2023) 的 Self-Taught Optimizer (STOP) 更进一步:它不是优化某个具体任务的解法,而是优化"优化器"本身。
实验结果是惊人的:经过几轮自我改进,STOP 自动发现了遗传算法、模拟退火、beam search 等策略——这些策略不是人类预定义的,是模型自己"发明"的。
与 Hermes Agent 的深度关联
如果你在关注 Hermes Agent 的发展,Harness Engineering 这个概念解释了很多事情:
-
Skills 系统就是 Harness 的 Context Engineering 层。每个 Skill 不是简单的 prompt 模板,而是一个小型的上下文管理函数,按需加载、独立演化。
-
delegate_task 就是 Sub-agent 模式。Hermes 的多 Agent 协作不是花架子——它是 Harness 设计的核心组件。
-
Memory 系统就是 File System as Persistent Memory 的实现。Hermes 把记忆持久化到 SQLite,通过 FTS5 检索,而非全量注入上下文。
-
Self-learning loop(自我学习闭环)就是 Harness Optimization 的方向。Hermes 的核心愿景——"Agent 越用越懂你"——本质上就是在做 Harness 的在线优化。
行动建议
- 重新审视你的 Agent 工作流:不是在模型上砸更多钱,而是优化你的 Harness——提示词结构、上下文管理、工具组合、评估循环
- 把 Agent 设计当成软件工程来做:你的 Skills 应该有版本管理、测试用例、性能基准
- 关注 Meta-Harness 方向:2026下半年,让 Agent 自己优化自己的 Harness 将成为核心竞争壁垒
- 文件系统是你的朋友:不要把一切都塞进上下文。用文件存储中间结果,让模型按需检索
