
Cloudflare 这两天开了一场发布周,叫 Agents Week。第一天的头条产品,是一个给 AI agent 用的运行时,也就是 agent 的代码实际跑起来、干活的那套环境。
它博客标题写得像句宣言:你的 agent 需要的是一台电脑,不是一个容器。而真正值得停下来看的,是它给出的那个理由。

它到底给了什么
它给 agent 配了一套文件系统,存在一个数据库里(底下是 Cloudflare 自己的 Durable Object,一种带持久状态的小服务,能把数据和一段常驻逻辑绑在一块;数据本身用 SQLite 存,一种轻量数据库)。这套文件系统上面,挂着两三种可以随时切换的执行环境。
轻活,比如改改文件、提交一次 git,在一个便宜的隔离环境里跑就行(这种环境官方叫 isolate,本文统一叫「隔离环境」,你可以把它理解成一个极轻、启停极快的小盒子)。真要一整台 Linux 的重活,比如装 npm 包,才起一个容器(容器就是比虚拟机更轻的一个隔离小系统)。
两边看到的是同一份文件,谁改完都同步回那个数据库。
整套代码是 MIT 开源的(最宽松那种许可,随便你拿去看、去改),所以后面要讲的那些代价,都能翻到文档里逐条去对。
这一层「它是什么」,中文技术圈已经有人讲得很清楚。所以它只是背景,这篇想说的,是下面四件中文侧还没怎么被讲的事。

真正的理由:算力不够分了
按常理,把活从容器挪进隔离环境,图的是省钱。Cloudflare 给的理由比省钱狠得多。
它在博客里写下这么一句:
把所有云厂商、所有超大规模数据中心加起来,全世界的算力,也远远不够让每家公司给自己每个用户的每个 agent,都配一个容器化的运行环境。
原话里有个词值得单拎出来。它形容行业对 CPU 算力的需求,用的是「desperate, panicked」,绝望的、恐慌的。一家云厂商在自家博客上用「恐慌」形容整个行业的需求。这话得打点折看:把需求说得这么急的,正是那个靠「少起容器」方案受益的一方。

于是它定了个目标:让容器只承担一个 agent 不到一成的活,剩下九成,都塞进便宜的隔离环境里。
它敢这么押,是因为隔离环境正好是它的老本行。博客里说,隔离环境可以「无限横向扩展」,启停快得惊人,agent 一闲下来就能休眠。
博客里说,这个方向它已经赌了十年:差不多十年前推 Workers(它的边缘计算平台)走的就是这条路,六年前推 Durable Object 又是这条路。这次不过是把同一个赌注,下到了 agent 身上。

这套打法不是只在 Cloudflare 自己的博客里成立。还在官方这个包公开发布之前,就有一家叫 Construct 的公司写了自己在 Cloudflare 上跑 agent 的实践:把 agent 的思考循环(大脑)放在一个 Durable Object 里,只有某个工具真需要 Linux 的那一下,才临时唤起一个容器(手)干活,用完就散。
他们还算了笔账:这么跑,每一千轮大约花一美元(还不算主聊天模型那头的钱)。要说明的是,这篇写在那个包发布之前,讲的是同一个做法,不是对那个包的评测。但它至少说明,这条路在外面已经有人真跑起来,而且账算得清。
把问题的性质摆清楚:把 agent 关进容器这件事,技术上早就做得到。按 Cloudflare 的说法,真正卡住的是算力总量,不够分。而一旦接受这个判断,「你的 agent 能干什么」这个问题,就从一个模型能力问题,变成了一个配额问题。
同一个问题,两家给了相反的解法
这两家其实在同一条线上。而 computer 的公开仓库,六月五号就建好了,比下面这些公开动作、也比前面 Construct 那篇,都要早。
camelAI 七月底那篇(本号写过)发出来当天,Cloudflare 团队里的人就公开接了话,一个说「It's happening」,一个说「seeing the light」,六天后接话的那个人联名发了 computer。这是同一个方向上的几拨人在公开场合互相看见,不是谁看了谁才动手——那时候包早就在写了。
真正有意思的,是同一个「怎么少起容器」的问题,这两家给的答案几乎相反。
camelAI 的做法是把 bash 直接拿掉(bash 是命令行里那个最通用的工具,agent 靠它敲命令干活),换成一组写死的、边界清楚的方法。代价它自己认了:能力得提前替它想好,agent 碰到没做过的事,不能自己临时琢磨。
Cloudflare 反过来,把 bash 的样子留着。它底下用一个叫 just-bash 的东西,把 shell 命令翻译成 JavaScript,扔进隔离环境跑;真遇到隔离环境干不了的,才落到容器。对 agent 来说,它以为自己一直在用 bash。
两条路看着相反,付账的地方其实是同一处:你放弃的,都是「让 agent 自己想办法」那部分自由度。一个直接砍掉工具,一个把工具换成了替身。
代价,写在它自己的文档里
这套东西的代价,它自己一条条写在了文档里,不用外人替它挑。
第一条藏在「随时切换执行环境」这个卖点底下。文档原话是:换执行后端,可能意味着换一种源语言。同一段活,你把它从隔离环境挪到容器,写法可能就得跟着改。这个「切换」,并不无痛。
第二条,隔离环境里跑的那个 just-bash,是 shell 的一个替代实现,跟真 bash 不是一回事。文档说得明白:它把一次调用一口气跑完,不留过程事件,也不能中途按编号接回来。
它还默认关掉了对外的网络,连 git 拉取代码这种要联网的操作,也得单独开权限才放行。
第三条最实在,得把它文档里的两句话摆一起看。总的那份 README 说,docs 目录下的规格是「前瞻性的」,让你读它是看意图,别当成今天代码的样子。而那份规格文档自己又标着:不少功能写着 planned,代码里留了位置,但运行时还没接上。
这倒不是说它全是画饼。README 同一处也写了,三个执行后端今天就能用。只是你看那份规格的时候,得自己分清楚:哪些是能跑的,哪些还只是「想做」。
而且这还是个挂着 early preview(早期预览)标签的东西。把边界写到这个细度,任何人翻开文档都能一条条自己去对。

它把一个决策,交给了模型
回到那句「轻活走隔离环境、重活起容器」。那到底谁来判断,这活是轻是重?
Cloudflare 的答案是:让 agent 自己判断。官方原话是,今天的 agent「在为手头的任务挑选正确的运行环境这件事上,能力出乎意料地强」。
这话听着顺,可它等于把一个成本决策,交给了模型来拍板。选进便宜的隔离环境,还是选贵的容器,本质上是一笔账。这笔账,现在由模型每一次调用现算。
它算得准不准、万一把本该省下的容器选错了谁来买单,博客没给数据,也没多说一句。这里只把这件事原样摆出来。
那条画在算力上的天花板
「把大脑和手分开」这个说法,最近半年被三家独立用过:Anthropic 四月讲过,camelAI 七月讲过,Cloudflare 这次八月又讲了一遍。手是干活的沙箱,大脑是 agent 的思考循环,两边拆开摆。到这一步,很难再说这只是某一家的路线偏好,它更像一个正在成形的共识。
只是共识的另一面,是那个配额判断。当「给每个 agent 配一台电脑」被一家云厂商公开说成算力上办不到,agent 能干多少活,头顶上就多了一条它自己够不着的线。这条线画在哪、由谁来画,往后大概会比「模型又强了几分」,更值得盯着。