一篇很好的文,和朋友 @KingJing001 做的精读 Skill 一起做了阅读和整理,分享如下: 「你的 agent 不好用,别急着换模型。看看模型外面那层壳子。」 LangChain 做了一个实验:同一个模型,同样的权重,一行模型代码都没改,只重新设计了模型外面那层基础设施。结果在 TerminalBench 2.0 排行榜上从 30 名开外直接跳到第 5。另一个独立研究团队让 LLM 自己优化这层基础设施,达到了 76.4% 的通过率,超过所有人工设计的系统。 这层东西现在有了正式名字:Agent Harness。 Akshay Pachaar(AI 工程师,@dailydoseofds 联合创始人,26 万粉丝)写了一篇近万字的长文拆解这个概念,综合了 Anthropic、OpenAI、LangChain、CrewAI 等主流框架的实践。这篇精读提取其中最有价值的判断和数据。 1️⃣先把概念理清楚 Agent Harness 这个术语在 2026 年初正式确立,但它描述的东西早就存在。它指的是包裹 LLM 的全套软件基础设施:编排循环(orchestration loop)、工具调用、记忆系统、上下文管理、状态持久化、错误处理、安全护栏。Anthropic 的 Claude Code 文档里直接说:SDK 就是那个「powers Claude Code」的 agent harness。OpenAI 的 Codex 团队用同样的说法,把「agent」和「harness」等同于非模型的那层基础设施。 一个容易混淆的点:「agent」是涌现出来的行为(有目标、会用工具、能自我修正的实体),harness 是产生这个行为的机器。当有人说「我做了一个 agent」,他做的其实是一个 harness,然后把它指向了一个模型。 Beren Millidge 在 2023 年的文章「Scaffolded LLMs as Natural Language Computers」里给了一个我觉得最清晰的类比。一个裸的 LLM 就像一块 CPU:没有内存、没有硬盘、没有输入输出接口。上下文窗口是 RAM(读写快,但容量有限),外部数据库是硬盘(大但慢),工具集成是设备驱动,而 harness 就是操作系统。他的结论:「我们重新发明了冯·诺依曼架构」——因为这是任何计算系统的自然抽象。 理解了这个类比,后面的所有讨论就有了锚点。 2️⃣编排循环:harness 的心跳 整个 harness 的核心是一个编排循环,也叫 ReAct loop(Thought-Action-Observation 循环)。机械上看就是一个 while 循环:组装 prompt → 调 LLM → 解析输出 → 执行工具调用 → 把结果喂回去 → 重复。 Anthropic 把他们的运行时描述为一个「dumb loop」——所有智能都在模型里,harness 只管轮次。这个说法点出了一个设计哲学:harness 要尽可能薄。循环本身的复杂度很低,真正难的是循环管理的那些东西。 3️⃣上下文管理:最容易无声死掉的环节 Akshay 在文中列了 12 个 harness 组件,但如果让我只挑一个最容易出问题的,是上下文管理。 Chroma 的研究发现了一个叫「context rot」(上下文腐烂)的现象:当关键信息落在上下文窗口的中间位置时,模型表现下降 30% 以上。斯坦福的「Lost in the Middle」论文验证了同一结论。这意味着哪怕你有百万 token 的窗口,把什么东西放在什么位置,比窗口有多大更重要。 生产环境的应对策略有四条路: 压缩(Compaction)——对话历史快到窗口上限时做摘要。Claude Code 的做法是保留架构决策和未解决的 bug,丢弃冗余的工具输出。 观测遮蔽(Observation Masking)——JetBrains 的 Junie 会隐藏旧的工具输出,但保留工具调用记录可见。模型知道自己做过什么,但不用重读所有结果。 按需检索(Just-in-time Retrieval)——Claude Code 用 grep、glob、head、tail 这些轻量命令按需查文件内容,而非把整个文件加载进上下文。 子 agent 代理(Sub-agent Delegation)——每个子 agent 可以大范围探索,但只返回 1000-2000 token 的浓缩摘要。 Anthropic 的上下文工程指南把目标说得很清楚:找到最小的高信号 token 集合,使期望输出的概率最大化。 4️⃣错误处理和验证:从 demo 到生产的分水岭 错误的复合效应是一个被低估的问题。Akshay 给了一个直觉化的数据:一个 10 步流程,每步成功率 99%,端到端成功率只有 90.4%。步骤越多,这个数字掉得越快。 LangGraph 把错误分成四类来处理:瞬时错误(指数退避重试)、LLM 可恢复的错误(把错误作为 ToolMessage 返回,让模型自己调整)、需要人介入的错误(中断等待输入)、未知错误(上报调试)。Stripe 的生产 harness 把重试上限定在两次——不是因为两次够了,是因为超过两次大概率是系统性问题而非偶发故障。 验证循环是另一个把 demo 和生产分开的关键。Claude Code 的创造者 Boris Cherny 说过一句很直接的话: 「给模型一个验证自身工作的方法,质量提升 2 到 3 倍。」 "Giving the model a way to verify its work improves quality by 2 to 3x." 验证有三种:基于规则的(跑测试、跑 linter、跑类型检查),基于视觉的(用 Playwright 截图检查 UI),基于 LLM 的(另一个 agent 做评审)。第一种提供确定性的 ground truth,第三种能抓住语义问题但增加延迟。生产环境通常组合使用。 5️⃣工具和安全:少就是多 一个反直觉的结论:工具越多,agent 表现可能越差。Vercel 在 v0 里删掉了 80% 的工具,结果变好了。Claude Code 通过 lazy loading 实现了 95% 的上下文缩减。原则是只暴露当前步骤需要的最小工具集。 安全层面,Anthropic 做了一个值得注意的架构选择:把权限判断和模型推理在架构上分开。模型决定想做什么,工具系统决定允许做什么。Claude Code 对大约 40 个离散的工具能力独立设置权限门控,分三个阶段:项目加载时建立信任、每次工具调用前检查权限、高风险操作要求用户手动确认。 6️⃣七个定义 harness 的决策 Akshay 在文末总结了七个每个 harness 架构师都要做的选择。其中三个我觉得最值得展开: 单 agent vs 多 agent——Anthropic 和 OpenAI 的建议一致:先把单 agent 做到极限。多 agent 系统增加额外开销(路由需要多一次 LLM 调用、handoff 时丢上下文)。只有当工具数量超过约 10 个且存在重叠,或者任务域明确分离时才拆分。 工具范围策略——工具越多性能越差的现象已经被多次验证。Claude Code 的做法是 lazy loading,Vercel 的做法是直接砍工具。核心判断标准:暴露当前步骤需要的最小工具集。 Harness 厚度——这是最有意思的一个分歧。Anthropic 押注薄 harness + 模型改进(模型越强,harness 就可以越薄)。Graph-based 框架(如 LangGraph)押注显式控制(把更多逻辑写进 harness)。Anthropic 的实际行为印证了他们的押注方向:每当新模型版本把某个能力内化了,他们就从 Claude Code 的 harness 里删掉对应的规划步骤。 Manus 的案例更极端:六个月内重建了五次,每次都在删复杂度。复杂的工具定义变成了通用 shell 执行,「管理 agent」变成了简单的结构化交接。 这里有一个值得记住的判断标准:换上更强的模型后,如果不需要加复杂度就能提升表现,说明 harness 设计是对的。如果需要加复杂度,说明 over-engineered 了。 7️⃣脚手架终将被拆除 Akshay 用了一个隐喻来收尾:harness 就是建筑工地上的脚手架——它本身不做建造,但没有它工人够不到高层。关键是:脚手架在建筑完工后是要拆掉的。 这个隐喻指向一个有趣的协同进化现象:模型现在是带着特定的 harness 一起做 post-training 的。Claude Code 的模型学会了使用它被训练时搭配的那套 harness。改变工具实现可能反而让表现退化,因为模型和 harness 之间存在紧耦合。 但长期来看,方向是清楚的——harness 会越来越薄。模型的上下文窗口会继续增长,推理能力会继续提升,越来越多原本需要 harness 管理的逻辑会被模型直接内化。harness 不会消失(即使最强的模型也需要工具执行、状态持久化和验证),但它的重心会从「补偿模型的不足」转向「管理模型与外部世界的接口」。 下次你的 agent 出了问题,别急着换模型。先看看模型外面那层壳子。 🚩太长不看版: 一句话总结:Agent 好不好用,瓶颈不在模型,在模型外面那层叫 harness 的基础设施——它才是产品。 核心观点: - 同一模型在不同 harness 下表现差距可达 20+ 排名位,harness 设计是真正的竞争壁垒 -上下文管理是 agent 最容易无声失败的环节,百万 token 窗口也救不了「Lost in the Middle」问题 - 生产级 agent 的关键不是更多工具,而是更少工具 + 验证循环 + 分层错误处理 - 好的 harness 应该随模型进步而变薄,而非变厚 关键引语: 「If you're not the model, you're the harness.」——Vivek Trivedy, LangChain 「We have reinvented the Von Neumann architecture.」——Beren Millidge 整理:嘉然 & Claude Opus 4.6
From X

Disclaimer: The above content reflects only the author's opinion and does not represent any stance of CoinNX, nor does it constitute any investment advice related to CoinNX.

4