Cloudflare 开源智能体浏览器 Kitesurf

Cloudflare 把给 AI 智能体用的浏览器 Kitesurf 开源了,协议是 Apache 2.0,代码放在 GitHub,项目主页是 kitesurf.dev。这款浏览器跑在 Cloudflare Workers 上,不需要浏览器容器,就能解析 HTML、处理 CSS、执行 JavaScript。

Cloudflare 给出的目标很直接:

“Our main goal is to give AI agents a lightweight, efficient browser — one that can load websites, execute JavaScript, and interact with pages while using less CPU and memory than a full browser like Chromium.”

意思是:给智能体一个轻量浏览器,能打开网页、跑脚本、和页面交互,CPU 和内存占用都比 Chromium 这类完整浏览器低。

从移植实验到开源,三个节点

Kitesurf 的起点是一个开源的 Rust 无头引擎 obscura,它主打“不要 Chrome、不要 Node.js、没有依赖”。Cloudflare 团队先让一个 AI 智能体把它往 Workers 上移植,起初效果很差;给智能体写了详细的计划和成功标准后,原型才勉强跑起来。

据 Cloudflare 博客,从决定动手到正式发布用了 12 周。首次亮相时,Kitesurf 以免费测试版的形式放进 Browser Run,也就是 Cloudflare 的无头浏览器自动化服务,开发者在接口里加一个 browser=kitesurf 参数就能切换。当时 Cloudflare 承诺“准备好后开源”,有报道指出发布文没有给出时间表。这次 Phoronix 报道的开源,算是把这句话兑现了。

开发方式上,团队拿 Web Platform Tests(W3C 标准一致性测试集)给 AI 智能体当验收标准,人负责架构和审查。博客发布时 Kitesurf 已通过约 21.5 万项测试,每周还在增加几百项。为了弥补标准测试和真实网站之间的差距,他们又用 Puppeteer 在真实网站上同时跑 Chromium 和 Kitesurf,逐步比对断言和渲染截图。

示意图:重型货车与轻巧帆车对比,象征Cloudflare轻量AI浏览器

内部怎么拆

Kitesurf 拆成三块:

  • Engine:唯一对外的组件,处理 Chrome DevTools 协议(CDP),保存会话状态。Puppeteer、Playwright 这类客户端指过来就能用。
  • PageScript:每个页面单独起一个 Workers 隔离环境,HTML 和 CSS 解析用了 Rust 写的 Blitz 渲染引擎模块和 Firefox 的 Stylo;遇到 eval,因为 Workers 原生不支持,就转给 Rust 写的 Boa JS 引擎去跑。
  • PageRenderer:把页面对象画成像素,输出 JPEG、PNG 或 PDF,不保存页面状态,卡住就直接杀掉重起。

所有外网请求只走一个 SandboxOutbound 组件,每个页面的 cookie 各装一罐。Cloudflare 的设计假设是每次加载都当成不可信输入,每个会话都从空白开始,针对的是提示词注入和工具调用安全这类智能体特有的风险。

按内存粗算,一台机器能多开几个会话

Cloudflare 在 14 个网址上各跑 5 轮取中位数。HTML 提取任务里,Kitesurf 占 39.4 MiB 内存,Chromium 热池占 273.7 MiB,差 7 倍;截图任务差 4.7 倍。

照截图任务的数字粗算,1 GiB 内存能同时放下约 17 个 Kitesurf 会话,换成 Chromium 只有 3 到 4 个。实际部署还要算上调度开销和峰值,这个比例只能当上限看。Cloudflare 自己的说法是,内存和 CPU 才决定账单,挂钟时间上 Chromium 快 1.7 到 1.8 倍,差距主要出在光栅化和图片编码,后面会继续优化。

短板也写得很清楚:Kitesurf 目前不能播放视频,不能渲染 WebGL,也不会用真实 TLS 指纹去过反爬验证。官方列出能正确渲染的页面包括 Wikipedia、Hacker News 和多个框架版本的 TodoMVC。对国内开发者来说,开源后可以自己部署到 Workers 账户里,不必经过 Browser Run 的配额,但复杂站点的兼容性要自己测。

参考来源:Cloudflare 官方博客、Phoronix、CocoLoop、H2S Media;Cloudflare 博客核验 14 个网址测试集的 CPU、内存与耗时中位数及 WPT 通过数。