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 中运行,并由专门的
SandboxOutboundworker 处理所有网络流量。 - 任何组件都无法直接访问网络,从而强制执行 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
- 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 } } } - 快速操作示例 – 截图
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 - 游乐场 (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
- 项目
- 项目
- 项目