Kitesurf 以 Agent 为先的浏览器在 Cloudflare Workers 上发布

Kitesurf 提供了一个完全运行在 Cloudflare Workers 上的以 Agent 为先的浏览器

核心要点: Cloudflare 新推出的 Kitesurf 浏览器在 Workers 的 V8 isolates 中运行,在处理常见的 AI Agent 任务时,与 Chromium 相比,CPU 使用率降低了 3–8 倍,内存使用率降低了 5–7 倍,同时保持了对 Puppeteer 等 CDP 工具的兼容性。


为什么需要一款新浏览器

  • 面向 Agent,而非人类: AI Agent 需要低 Token 消耗、快速的上下文窗口和廉价的计算资源。传统的浏览器(如 Chromium)带有沉重的 UI 相关开销——标签页、扩展程序、高保真渲染——而这些是 Agent 从不使用的。
  • 成本障碍: 为每个 Agent 运行一个完整的 Chromium 实例成本极高,这限制了复杂的 AI 模型只能执行有限的 Web 任务。
  • 不同的威胁模型: Agent 驱动的浏览引入了诸如提示词注入(prompt injection)和工具安全性等问题,而这些并不是以人为中心的浏览器的主要考虑因素。

这些观察结果促使 Cloudflare 对那个长期存在的内部问题给出了肯定的回答:“我们应该构建自己的浏览器吗?”并开始在 Browser Run 平台上推出 Kitesurf Beta 版。


核心设计原则

1. 测试驱动开发

  • 集成了 Web Platform Tests (WPT) 套件,为 AI 辅助代码生成提供具体的成功标准。
  • 添加了集成测试和视觉回归测试,将 Kitesurf 的输出与真实网站上的 Chromium 进行对比,从而及早发现渲染差异。

"使用 CDP 的优势在于客户端兼容性:Puppeteer、Playwright、chrome-remote-interface 以及实际的 Chrome DevTools 前端。只要将它们指向 Kitesurf,它们都能直接工作。" – Cloudflare blog

2. Rust 优先,编译为 WebAssembly

  • 原生 Rust 组件避免了 Emscripten 生成的二进制文件的臃肿。
  • 使用 wasm-bindgen 直接编译为 Wasm,使执行过程接近底层,并利用 Cloudflare 成熟的 Wasm 运行时。

3. 强大的异常处理

  • 任何失败都会降级为空白帧或缺失元素,而不是终止会话。
  • 故障在每个边界处都会被捕获并记录,随后会话将安全继续。

4. 严格的单页隔离

  • 每个页面加载都在其独立的沙箱 isolate 中运行,并由专门的 SandboxOutbound worker 处理所有网络流量。
  • 任何组件都无法直接访问网络,从而强制执行 CORS、标头注入和单页 Cookie 隔离。

5. 尽可能实现无状态化

  • 无状态组件可以立即被销毁并重建,从而实现大规模并行处理和 Agent 工作负载的爆发式扩展。
  • 只有 Engine 保留会话状态;所有其他 worker 都是可丢弃的。

架构概览

The Engine

  • 通过 WebSocket 和 HTTP 暴露 Chrome DevTools Protocol (CDP)。
  • 存储会话状态;所有其他组件都是无状态的。
  • 与现有的 CDP 客户端(Puppeteer、Playwright 等)兼容。

PageScript

  • 在每个页面或 OOPIF 的动态 Worker isolate 中运行。
  • 使用 Rust 库 Blitz (HTML) 和 Stylo (CSS) 解析 HTML 和 CSS。
  • 在进程内执行 JavaScript 和 WebAssembly;在原生 eval 进入 Workers 之前,eval 由 Boa JS 引擎处理。

PageRenderer

  • 使用 blitz-paint 和 Parley 文本塑形库将 DOM 树光栅化为 PNG/JPEG/PDF。
  • 作为一个独立的 isolate 运行,通过 Cloudflare Workers 的内置 RPC 系统调用,使每次渲染请求都是可重试且廉价的。

网络沙箱 – SandboxOutbound

  • 唯一允许执行出站网络请求的组件。
  • 强制执行 CORS,注入类浏览器标头,过滤响应,并实现单页 Cookie 隔离。

性能与兼容性

指标 Kitesurf Chromium (warm pool) 相对提升
CPU: screenshot 380 ms 1,173 ms 降低 3.1×
CPU: HTML extraction 229 ms 877 ms 降低 3.8×
Memory: screenshot 57.8 MiB 271 MiB 降低 4.7×
Memory: HTML extraction 39.4 MiB 273.7 MiB 降低 7.0×
Wall‑time: screenshot 1,148 ms 637 ms 慢 1.8×
Wall‑time: HTML extraction 820 ms 472 ms 慢 1.7×

CPU 和内存的节省直接转化为 Cloudflare 及其客户更低的账单费用。

Kitesurf 已经通过了 215,000+ 项 WPT 测试,并且每周都在持续增加。覆盖范围包括 HTML、CSS、DOM、SVG、XHR 和 streams——这些都是与 AI Agent 最相关的特性。


来自 Hacker News 的社区见解

  • 实现基础: 该引擎构建在开源的 Blitz 渲染引擎 (Dioxus Labs) 之上——这是一个正在积极开发的模块化浏览器核心。

    "这是构建在 Blitz 之上的……一个我过去 2.5 年一直在构建的新型模块化(开源)浏览器引擎。" – @nicoburns

  • 潜在担忧: 一些评论者对 Cloudflare 作为 CDN 和 AI Agent 平台的双重角色表示担忧,担心可能绕过反爬虫保护。

    "在 Cloudflare workers 中的 Kitesurf 是否会获得绕过 Cloudflare CDN 保护内容的特殊权限?" – @QuantumNomad_

  • 用例好奇: 用户询问 Agent 利用浏览器的具体示例。

    "谁能给我举几个在浏览器中使用 Agent 的例子吗?" – @cautiouscat

  • 开源期望: 几位参与者表示希望代码开源,并指出如果实现保持封闭,可能会存在指纹识别风险。

    "希望它是开源的,这样就可以在本地运行……" – @zuzululu


开始使用 Kitesurf

  1. Browser Run CDP 端点 – 在任何 Browser Run API 调用中添加 browser=kitesurf
    {
      "mcp": {
        "kitesurf": {
          "type": "local",
          "command": [
            "npx",
            "-y",
            "chrome-devtools-mcp@latest",
            "--wsEndpoint=wss://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/browser-run/devtools/browser?browser=kitesurf",
            "--wsHeaders={"Authorization":"Bearer <API_TOKEN>"}"
          ],
          "enabled": true
        }
      }
    }
    
  2. 快速操作示例 – 截图
    curl -X POST 'https://api.cloudflare.com/client/v4/accounts/<accountId>/browser-run/screenshot?browser=kitesurf' \
      -H 'Authorization: Bearer <apiToken>' \
      -H 'Content-Type: application/json' \
      -d '{"url": "https://example.com"}' \
      --output screenshot.png
    
  3. 游乐场 (Playground) – 访问 https://kitesurf.cloudflare.app/ 来输入任何 URL、检查 DOM、查看网络活动并查看每个 isolate 的内存占用情况。

何时选择 Kitesurf 而非 Chromium

  • 非常适合 AI Agent,这些 Agent 需要进行 HTML 提取、截图或 PDF 生成,且不需要像素级的完美渲染。
  • 最适合爆发式、无状态的工作负载,在这种情况下,成本效率和隔离性至关重要。
  • 不适用于 视频播放、WebGL、长期的身份验证会话,或依赖复杂 TLS 指纹识别的网站。

路线图与未来工作

  • 将 CDP 覆盖范围扩展到当前的子集之外。
  • 提高高质量截图和 PDF 的渲染保真度。
  • 增加 WPT 覆盖范围,以接近完整的 Web 平台兼容性。
  • 继续与其他 Cloudflare 平台团队合作,优化 CPU、内存和 Wall-time 基准测试。

Kitesurf 代表了迈向 以 Agent 为先的 Web 平台 的大胆一步,提供了一个运行在边缘的轻量级、隔离且具有成本效益的浏览器。立即通过 Browser Run 或公共游乐场进行尝试,并见证随着 AI Agent 成为一等公民时生态系统的演进。

SUMMARY: Cloudflare 推出了 Kitesurf,这是一款以 Agent 为先的无头浏览器,运行在 Workers 的 V8 isolates 中,在处理 AI 驱动的任务时,其 CPU 和内存使用率比 Chromium 低至 7 倍。

Sources

相关

  • 项目
  • Dispatch
  • 项目
  • 项目
  • 项目