Harness 工程:编码智能体的解剖学、架构与演化——十一个系统的源码研究
摘要
智能体 = 模型 + Harness:所谓 Harness,是通过循环、工具、上下文管理、安全控制、编排与扩展接口把 LLM 与现实世界耦合起来的运行时。 Harness 工程(harness engineering)于 2026 年初被命名为一门学科,研究的就是这个运行时的设计与演化。 本文为这门年轻的学科提供了迄今最全面的实证基础。 论文对 11 个生产级编码 Harness 做了源码解剖:Claude Code(Anthropic)、Codex CLI(OpenAI)、Gemini CLI(Google)、Mistral Vibe(Mistral)、OpenHands、Aider、Mini-SWE-Agent、Hermes(Nous Research)、Pi、OpenCode 与 OpenClaw,外加 Omnigent(Databricks)——据我们所知是第一个元 Harness——作为对照点加以分析。 论文定义了什么是 Harness,绘制了它的七个标准子系统及每个子系统的最小实现与最大实现,并沿这些子系统逐一解剖全部 11 个系统。 论文不做基准测试,也不做排名;它描述并比较这些系统是如何构建的。
审计得到 13 条跨领域的观察和一份收录 29 个复现设计模式的目录。 两个“缺席”在语料库扩大三倍后依然成立:在约 400 万行 Python、TypeScript 和 Rust 代码中,没有任何智能体运行时引入通用智能体框架(LangChain、LangGraph、AutoGen 等十余个框架,连 Gemini CLI 也不用 Google 自家的),也没有任何运行时用向量嵌入检索代码;这个领域靠手写的异步循环和确定性检索(ripgrep、tree-sitter、glob、自动发现的 Markdown 上下文文件)运转。 可扩展性标准已成定局:SKILL.md 技能在采用率上领先 MCP(9/11 对 8/11),并出现了注册表、信任分级和本语料库中首批由智能体编写的技能;ACP 随 6 个系统交付,并获得了第三种角色——Harness 托管(harness hosting),OpenHands 把 Claude Code、Codex 或 Gemini CLI 作为可互换的后端运行。
由于原有 8 个系统是被重新固定版本而非替换,本研究还包含一个受控的纵向样本:同一批 Harness、跨一个季度的源码 diff。 diff 显示趋同变成了模仿(Codex 逐字采用了 Claude Code 的 Hook 词汇表,并发布了对其会话与设置的导入器;OpenHands 读取 Claude Code 的插件格式),行为策略从提示词散文迁移到配置文件,而 4 月版的三条观察被迫原地做出实质修订。
这些线索汇聚成论文的论点:在 2026 年上半年,编码 Harness 完成了从工具到平台的转向。 Harness 变成了可引入的 SDK,而框架厂商也开始发布自己的 Harness;市场、切换成本工具与企业治理层相继出现;智能体作为一个 OpenAI 兼容端点背后的模型变得可寻址;一个元 Harness 如今在一个 API 之后编排 11 个厂商 Harness(本语料库一半在其中),重新实现其中昂贵的部分,套利其中专有的部分。 论文以 18 条锚定在观察到的代码上的设计建议,以及一个实现其中十条的 90 行最小可用 Harness 脚手架收尾。