文章摘要
Cloudflare内部长期讨论自建浏览器,但一直未实施。如今,随着其开发者平台技术成熟(如WebAssembly在Workers中运行)以及AI代理对新型浏览器的需求增长,他们推出了Kitesurf——一款在Cloudflare Workers的V8隔离环境中运行的、以代理为先的浏览器。
文章总结
好的,这是根据您的要求,对原文进行的中文重述:
标题: 介绍 Kitesurf:一款为AI代理打造的、运行在Cloudflare Workers V8隔离环境中的浏览器
核心内容:
Cloudflare内部多年来一直在讨论是否要自建浏览器。浏览器作为最重要的互联网软件,其构建挑战巨大,但公司也一直在寻找能解决独特问题的平衡点。如今,随着其开发者平台在WebAssembly运行、动态Worker、SQLite Durable Objects等技术上的成熟,以及AI代理对新型浏览器需求的激增,这个想法终于落地。
现有的浏览器引擎(如Chromium)是为人类设计的,对AI代理而言过于臃肿和昂贵。AI代理不需要标签页、主题、扩展或流畅的滚动,它们更关注令牌数、上下文窗口、可扩展性、性能和成本。因此,Cloudflare决定构建一个专为AI代理优化的浏览器——Kitesurf。
Kitesurf完全运行在Cloudflare Workers之上,目前已在Browser Run产品中免费提供Beta版。与Chromium相比,在执行截图和HTML提取等常见代理任务时,Kitesurf的CPU和内存消耗显著降低(CPU节省3-4倍,内存节省4-7倍)。
构建历程与技术细节:
- 灵感来源: 项目灵感来自一个用Rust编写的无头引擎“obscura”,并借助AI代理将其移植到了Workers上。
- 设计原则:
- 测试驱动: 大量使用Web平台测试(WPT)和集成测试来确保代码质量和功能符合标准。
- 优先使用Rust: 利用Rust编译为WebAssembly,以获得高性能并避免不必要的模拟层。
- 异常处理: 确保任何错误都不会导致会话崩溃,而是优雅地降级为空白帧或缺失元素。
- 隔离性: 基于Workers的隔离模型,每个页面加载都被视为不受信任的输入,各组件仅能访问其必需资源。
- 无状态优先: 尽可能让组件无状态,以便于故障恢复和并行扩展。
- 核心组件:
- 引擎(Engine): 唯一面向外部的组件,处理Chrome DevTools协议(CDP)和REST API,并存储会话状态。这使得Puppeteer、Playwright等现有工具可以直接使用。
- 页面脚本(PageScript): 利用动态Worker为每个页面创建隔离环境,负责解析HTML/CSS(使用Blitz和Stylo引擎)并执行JavaScript。对于Workers不原生支持的
eval,则使用Rust编写的Boa JS引擎来处理。 - 页面渲染器(PageRenderer): 负责将页面对象(场景)光栅化为图像(JPEG/PNG/PDF),通过Workers的内置RPC系统与引擎通信,实现可重试和可丢弃的渲染请求。
当前状态与未来展望:
- Kitesurf已通过超过21.5万个WPT测试,且每周都在增加。在CSS、DOM、HTML等对代理重要的领域覆盖率良好。
- 虽然渲染速度(挂钟时间)目前比Chromium慢约1.7倍,但在CPU和内存消耗上优势巨大,能有效降低成本。
- 目前Kitesurf能正确渲染TodoMVC、维基百科、Hacker News等网站,但不支持视频、WebGL、需要持久化状态的复杂会话等。
- 团队正在积极改进CDP协议覆盖、渲染保真度、WPT测试覆盖率和运行效率。
- Cloudflare计划在时机成熟时开源Kitesurf,让客户能自行部署。
如何试用:
用户可以通过Browser Run的CDP端点或Quick Actions API,添加browser=kitesurf参数来使用。此外,还有一个公开的Playground(kitesurf.cloudflare.app)可供体验,并集成了Chrome DevTools用于调试和查看内存占用。
评论总结
根据评论内容,总结如下:
主要观点与论据:
对Cloudflare反爬机制的质疑(评论1,评分None):用户担心Cloudflare的浏览器实例能否绕过自身反机器人机制,或是否享有特殊权限。关键引用:"Does Cloudflare the CDN allow these browser instances to bypass their own anti-bot mechanisms?" 和 "Will Kitesurf in Cloudflare workers get special bypass privileges to content protected by Cloudflare the CDN?"
技术基础与开源前景(评论2,评分None):该项目基于Blitz浏览器引擎构建,计划开源并向上游提交补丁。关键引用:"This is built on top of Blitz... a new modular (open source) browser engine" 和 "they intend to open source and upstream their patches."
开源与指纹识别担忧(评论3,评分None):希望项目开源以便本地运行,但担心网站容易通过指纹识别进行封锁。关键引用:"wish it was open source so it can be run locally" 和 "it'd be very easy for websites to fingerprint and block."
浏览器代理实际用例(评论4,评分None):用户询问浏览器代理的实际应用场景,质疑高管宣称的“代理购物”是否真实存在。关键引用:"Can someone give me examples of where you use agents in your browser?" 和 "I haven't actually seen that."
技术路线与验证(评论5-7,评分None):评论5调侃Cloudflare只写Rust;评论6肯定wpt.fyi用于验证新浏览器;评论7对比OpenAI放弃的Atlas架构,认为该技术路线更易推广。关键引用:"Seems like Cloudflare only writes Rust these days" 和 "let's see if this more obvious technical route... would gain traction."
平衡性总结: 评论呈现了技术可行性(开源、验证)、潜在风险(反爬、指纹识别)与实用价值(代理用例)的多角度讨论,既有对项目技术细节的肯定,也有对实际应用和公平性的质疑。