一个领域快速发展时,词汇的演变往往比共同理解形成得更快。术语开始模糊,在不同语境里被重复使用,或成为从未充分解释的概念的简称。AI 智能体领域正在发生这样的情况:概念被混用,有些被重新命名,还有些流行了几个月,随后悄然消失。
这让初学者不知所措,也让试图跟上最新进展的从业者感到困惑。ICLR 2026 之后,我们中的一位作者(@ariG23498)提出了一个很能说明问题的问题:
“在智能体的语境下,harness 和 scaffold 到底是什么意思?参加 ICLR 时我听到了很多解释,但不理解为什么这些解释无法统一。”
这份术语表试图为那些反复出现、却缺少清晰一致解释的术语建立共同基础。它不打算穷尽这个领域的每一个词,而是聚焦于经常被混淆、被以不同方式使用,或者被误以为不言自明的概念。
无论你在构建、部署智能体,还是仅仅使用 Claude Code、Codex、Hermes Agent 这样的工具,大多数术语都会出现。最后一节介绍模型训练特有的概念,对从事训练工作的读者更有意义。
现在开始。
目录
模型(Model)
模型就是大语言模型(LLM):输入文本,输出文本,例如 Claude、Qwen、GPT、Kimi、DeepSeek。单独的模型在调用之间没有记忆,也没有循环。模型可以表达调用工具的意图,但真正执行调用需要 harness。它回答一次提示,然后停止。把模型放进 scaffolding 和 harness 中,才成为智能体。
Scaffolding:定义行为的外围层
这是围绕模型、定义其行为的一层:系统提示、工具描述、模型响应的解析方式,以及步骤之间保留哪些记忆(上下文管理)。无论训练还是推理,它都塑造模型看待世界及采取行动的方式。
Claude Code、Codex、Antigravity CLI 等产品把这一整套东西统称为 harness。Claude Code 的官方文档直接说明:“Claude Code 是围绕 Claude 的智能体 harness。”这是广义用法:所有不是模型的东西都是 harness。只有需要分别分析 scaffold 和 harness 时,例如在训练流水线中,区分两者才最有意义。你也会听到更宽泛的 scaffold 用法,涵盖 harness 依赖的基础设施,包括 hooks、运行时配置,甚至目录结构。
一些产品,例如 Claude Code 和 Codex,与供应商的模型紧密耦合;另一些,例如 Antigravity CLI 和 Hermes Agent,允许接入任意模型。
Harness:执行层
这是智能体内部的执行层:调用模型,处理工具调用,并决定何时停止。Harness 让智能体真正运行。上面定义的 scaffolding 则是模型据以工作的材料:指令、工具和格式。
Harness 工程是把这一层设计好的工程实践:决定智能体什么时候应该停止、如何处理错误,以及用什么护栏让它保持在正确轨道上。这同时适用于训练和推理。Addy Osmani 的文章与 OpenAI 使用 Codex 构建产品的实践记录都从推理角度讨论了这一点。
评估阶段也有相同模式,称为评估 harness(eval harness):它在某个模型检查点上运行固定场景集并记录指标,而不是收集训练数据或更新权重。
一些框架用编排器(orchestrator)指协调多个智能体的上层控制器。Harness 驱动一个模型完成执行循环;编排器则把智能体作为单元进行管理,每个智能体运行自己的 harness,参见下文子智能体。
智能体(Agent)
这个词来自强化学习。在那里,智能体就是接受观测并返回动作的函数。环境接受动作,返回新的观测,然后循环重复。这一循环仍然是 LLM 智能体工作的核心。
在 LLM 领域,这个词的含义扩展了。智能体是模型,加上让它能够行动而不只是回应的外围系统。它把原始文本生成变成能够在循环中接收信息、决定下一步并依据结果行动的系统。
以编码智能体为例:系统提示、工具描述、模型遵循的输出格式组成 scaffolding;调用模型、处理工具调用并决定何时停止的循环是 harness。训练时,harness 还并行运行许多这样的循环,把结果反馈回去以更新模型。

社区通常将其写作 Agent = Model + Harness,可参见 @Vtrivedy10 与 Will Brown 的帖子。不是模型的部分,都是 harness。最容易引起混淆的 harness 与 scaffold 的细微区别,正是上面两节讨论的内容。
人们谈到 Claude Code、Codex、Cursor 等产品时,指的是建立在特定模型之上、与模型共同设计优化的特定 harness。两款产品即使用同一个底层模型,也可能因为 harness 的选择不同而体验迥异。同一个 harness 换用更强的模型,体验也会变化。模型、harness、产品是三个不同的事物。
上下文工程(Context Engineering)
这是设计智能体上下文窗口内容的工作:模型在每一步看到什么、系统提示、工具描述、对话历史与检索到的知识。它不是一次性决定:运行过程中,先前轮次影响后续调用的内容,harness 会持续主动管理这些内容。训练与推理都需要它,但出错的代价很不一样。训练时,模型看到什么决定它学到什么;弄错了就需要重新训练。推理时,它只是文本,修改提示后重新部署即可。HF 上下文工程课程对此有深入介绍。
记忆也是其中一部分。短期记忆是在单次运行中保留在上下文窗口里的内容,包括对话历史、工具结果和先前推理。长期记忆跨会话保留,存放在外部,按需检索,并在相关时重新注入上下文。
策略(Policy)
策略是智能体遵循的行为:给定某种情境,它定义选择各个可能动作的概率。在 LLM 系统里,策略的一部分由模型权重学得,行为也受外围 scaffolding 和 harness 影响。同一个模型可能因为提示、工具、记忆及执行循环不同而表现截然不同。
策略不是智能体。策略定义行为;智能体是在环境中行动的完整系统。给模型检查点加上 scaffolding 和 harness,再进行部署,得到的就是行为由策略决定的智能体。
工具使用(Tool Use)
工具让智能体接触自身以外的世界:API、代码解释器、数据库、网页搜索和文件系统。模型用结构化格式表达使用工具的意图。现代推理 API 将其作为一等对象提供:harness 直接接收调用,并路由到对应函数。结果反馈到上下文中,循环继续。
技能(Skills)
技能是可复用、结构化的知识包,支持完成多步骤任务。工具对应一个动作(“运行这条命令”);技能则封装完成一个目标需要的所有知识(“调查这个缺陷,提出假设,编写修复”)。技能可在不同智能体间移植,并按需加载。不同框架对工具、技能和子智能体的边界划分不同。HF 上下文工程课程深入介绍了技能。
子智能体(Sub-agents)
子智能体由另一个智能体调用,处理特定子任务。它有自己的模型和 scaffold,独立推理,并返回结果。调用方无需知道它内部怎么工作。与工具(函数调用)及技能(封装的知识)相比,子智能体能够自己推理、使用工具,并继续调用其他子智能体。调用它的智能体有时被称为编排器。
训练(Training)
前面的术语同时适用于训练和部署。下面四个概念专用于训练:智能体运行任务、接受评分,随后其模型权重被更新。所有 LLM 强化学习训练系统都围绕同一条流水线构建:

强化学习环境(RL Environment)
环境可以是任何能够与之交互的对象:它有状态,接收动作,更新内部状态,再返回观测。在 LLM 语境下,动作通常是工具调用。文件系统是一个简单例子:动作 touch foo.txt 通过创建文件更新状态,观测可能是更新后的文件列表。具体定义因框架而异。
我们最近发布了专门的指南,因此这里不做压缩介绍。类型、框架及示例的完整说明请参阅强化学习环境终极指南。
训练器(Trainer)
训练器让智能体变得更好:运行大量智能体回合,为结果打分,再用这些结果更新内部模型的权重。TRL 的 GRPOTrainer是一个具体例子:一个类同时处理回合生成、奖励评分和权重更新。
Rollout
一次 rollout 是智能体从开始到结束的完整运行,记录它在每一步看到什么、做了什么、得到什么奖励。根据语境,也叫轨迹(trajectory)或跟踪记录(trace)。这就是强化学习算法从中学习的原始数据。
奖励(Reward)
奖励是告诉训练算法模型是否变得更好的评分。它可以是可验证的(测试通过或失败、答案匹配),也可以是学习得到的(人类偏好、由 LLM 担任评判);可以是稀疏的(回合末尾一个分数),也可以是稠密的(每一步一个分数)。训练器用它实际更新内部模型权重。各类奖励的详细说明见 Adithya 指南中的奖励架构章节。
评分规程(Rubrics)把奖励拆分为有明确权重的多个维度,而不是仅给出一个数字。OpenEnv 和 Verifiers把评分规程实现为可组合对象,例如 WeightedSum、Sequential、Gate。
延伸阅读
- @Vtrivedy10:智能体 Harness 的构成:详细拆解各组件及其存在原因。
- Agent Harness Engineering:以编码智能体为例,讨论 Agent = Model + Harness 的共同认识。
- Harness Engineering:在智能体优先的世界中使用 Codex:完全由 Codex 智能体构建产品的实践,包括推理阶段的 scaffolding、反馈循环和上下文管理。
- Tool Schema Rendering Atlas(evalstate):不同模型中工具 schema 如何转成提示文本,以及供应商模板应用后模型实际看到什么。
- Simon Willison:编码智能体如何工作:编码智能体作为 harness 的工作方式。
- AI Engineer 演讲:Harnesses in AI: A Deep Dive:什么是 harness,以及如何构建它。
- 强化学习环境终极指南:逐框架比较与术语转换。
- 持续改进我们的 Agent Harness:Cursor 如何迭代作为产品的 harness。
- lm-evaluation-harness:典型的评估 harness。
如果你觉得某个定义不够准确,或者遇到了我们遗漏的术语,欢迎反馈。
感谢 Pedro Cuenca、Quentin Gallouédec、Shaun Smith、Adithya S Kolavi 审阅原文。











暂无评论内容