宇宙纪事COSMIC CHRONICLES

文章 · 2026.04.09

【AI操作系统】Anthropic把AI Agent的大脑和双手分开了 — 这意味着什么

Kocher周 · 2026.04.09 · 原载微信公众号「可荐」

ANTHROPIC · MANAGED AGENTS 深度解读

#ManagedAgents #Anthropic #AI架构 #Agent #开发者

操作系统解决了一个古老的问题:如何为「尚未被想到的程序」设计系统。几十年前,操作系统把硬件虚拟化成抽象层——进程、文件——这些抽象足够通用,让1970年代的read()命令和今天的SSD读取都能兼容。抽象层撑过了硬件的更迭。

Anthropic在Managed Agents里重复了这个思路——只不过虚拟化的对象不是硬件,而是AI Agent的组成部件。

一、问题的根源:Harness里编码了假设

要理解Managed Agents解决了什么,先要理解什么叫「Harness编码了假设」。

Harness是驱动AI Agent运行的外层调度框架——它决定Claude什么时候被调用、工具调用如何路由、上下文如何管理。每一个Harness背后,都隐含着一套对「Claude做不到什么」的假设。


一个典型的过时假设

Anthropic发现,Claude Sonnet 4.5在感知到上下文窗口接近上限时会提前收尾任务——他们管这个叫「上下文焦虑」。为此在Harness里加入了上下文重置机制。

然后他们把同一套Harness用到Claude Opus 4.5上,发现这个行为消失了——重置机制变成了死重量。

模型进步了,但Harness没跟上。

这就是核心矛盾:Harness为了弥补模型的局限而设计,但模型在持续改进。每一次模型升级,都可能让Harness里的某些假设失效,甚至变成性能负担。

二、宠物与牲口:从耦合到解耦

早期版本里,Managed Agents把所有Agent组件——Session日志、Harness、沙箱执行环境——都塞进同一个容器。这带来了一个经典的基础设施问题:它变成了一只「宠物」。


宠物 vs 牲口


宠物是有名字的、精心照料的个体,你输不起它。
牲口是可互换的,死一头换一头。

单容器架构让这台服务器成了宠物——容器崩了,Session丢失;容器无响应,工程师得钻进去手动排查;但容器里还有用户数据,进去调试本身就是安全风险。

这不是一个可以规模化的系统。

解决方案是把大脑和双手彻底解耦。Harness不再住在容器里,它通过一个极简接口调用沙箱:execute(name, input) → string。容器变成了牲口——死了就重新起一个,用provision({resources})初始化,用wake(sessionId)恢复。Harness本身也变成了牲口,崩了就重启,通过getSession(id)拿回事件日志,从上次中断处继续。

三、三层解耦:Session、Harness、Sandbox

Session

追加写入的事件日志,持久存储在外部

Harness

调度大脑,无状态,崩了可重启

Sandbox

执行环境,工具调用的双手,按需创建

这三层解耦带来的直接收益是性能数字。之前每个Session都要先等容器启动,即便这个Session根本不需要沙箱。解耦后,容器只在需要的时候才通过工具调用触发创建。结果:p50首Token延迟下降了约60%,p95下降了超过90%。

安全边界也因此得到了结构性修复。原来Claude生成的代码和认证凭证在同一个容器里运行——提示注入只需要说服Claude读取自己的环境变量,就能拿到token,然后用这个token开启新的无限制Session。解耦后,沙箱里永远看不到凭证——Git token在初始化时就注入到本地remote里,MCP工具的OAuth token存在外部Vault,通过专用代理转发,Harness从来不接触任何凭证。

四、Session不是Claude的上下文窗口

长时间任务最大的挑战是上下文窗口溢出。传统做法——压缩、摘要、裁剪——都是不可逆操作,你很难提前知道未来的步骤需要哪些历史信息。

Managed Agents的Session设计参考了一个更优雅的思路:把上下文存储为一个活在上下文窗口外部的对象。Session是追加写入的事件日志,通过getEvents()接口可以按位置切片、可以倒带回某个特定时刻之前、可以随时重读特定动作前的上下文。


关键区分

Session保证的是:上下文可持久化,可以随时被检索。

Harness负责的是:具体怎么把这些上下文塞进Claude的窗口。

两件事被刻意分开,因为未来模型需要什么样的上下文工程,现在没人知道。这个设计让变化可以发生在Harness层,而不影响Session层。

五、多大脑、多双手

解耦之前,每个Agent需要一个容器。多个Agent就是多个容器,每个都要等待完整的容器启动流程。解耦之后,启动多个Agent只需要启动多个无状态的Harness,沙箱按需创建。

多双手的意义同样深远。现在的接口是execute(name, input) → string——任何工具、任何MCP服务器、Anthropic自己的工具,全部统一成这个接口。Harness不知道沙箱背后是容器、手机还是——Anthropic在博客里真的写了——宝可梦模拟器。而且大脑之间可以把双手互相传递:一个Agent可以把自己的沙箱交给另一个Agent来操作。

六、对开发者意味着什么

Managed Agents是一个「元Harness」——它不规定你用什么具体的Harness,而是提供稳定的接口让任何Harness都能接入。Claude Code是一个Harness,任务特定的定制Harness也是,将来出现的新Harness也可以。接口设计的目标是让它们都能用,并且能安全、可靠地运行在长时间任务上。

值得关注的信号

基础设施化:Managed Agents是Anthropic把Agent从「实验性功能」变成「托管基础设施」的信号。稳定接口意味着开发者可以在上面建东西,不用每次模型升级都重写Harness。

安全架构:凭证隔离、Sandbox与Harness分离、Session持久化——这些设计说明Anthropic在认真对待生产环境的安全和可靠性,而不只是Benchmark表现。

A股映射:这套架构对Agent基础设施有更大的需求:更多的沙箱计算、更多的Session存储、更多的工具调用路由。算力基础设施和企业AI部署仍然是受益方向。

◆

四十年前,操作系统用进程和文件这两个抽象,撑住了从大型机到个人电脑再到云计算的全部变迁。Managed Agents在尝试做同样的事——用Session、Harness、Sandbox这三个抽象,为「尚未被想到的Agent」预留空间。

这是一个工程架构的决策,但背后是一个判断:AI Agent不会停止进化,所以托管它的系统必须为进化而设计。


本文基于Anthropic Engineering博客《Scaling Managed Agents: Decoupling the brain from the hands》整理分析 https://www.anthropic.com/engineering/managed-agents

转载请注明:《宇宙纪事 · AI投资研究》,投资观点仅供参考,不构成投资建议。