Home AI Cloudflare Kitesurf Agent Browser Runs on Workers

Cloudflare Kitesurf Agent Browser Runs on Workers

A free-beta, Workers-native browser built for agent screenshots and HTML extraction

0
Image: Cloudflare

Cloudflare Kitesurf is a new agent-first browser that runs entirely on Workers. The company built it for AI agents that need screenshots, HTML extraction, and cheap automation. It avoids the cost of a full Chromium session. Kitesurf is free in beta through Browser Run. A public playground is live at kitesurf.cloudflare.app.

Human browsers pack tabs, themes, extensions, and pixel-perfect chrome. Agents care about tokens, context windows, isolation, and billable CPU. Therefore Cloudflare stripped those human-only extras. It rebuilt the stack around V8 isolates, Rust compiled to WebAssembly, and a stateless request path.

Why agents need a different browser

Browser Run already grew as agents started automating the open web. However Chromium still burns memory and CPU that models never use. Cloudflare argues that giving every agent a full desktop engine gets prohibitively expensive at scale. Moreover that cost can lock out smaller agent apps. Only the best-funded stacks keep browsing.

Kitesurf flips the priority list. Structured content matters more than 60-fps scrolling. Meanwhile prompt injection and tool safety replace classic laptop-browser threat models. In addition each session starts fresh. A failed isolate can die without reconstructing heavy local state.

How Cloudflare Kitesurf is built

Cloudflare shipped the first useful version in about 12 weeks after an internal debate finally tipped yes. The team leaned on mature Workers Wasm, dynamic workers, Durable Objects, worker-to-worker RPC, and higher Node compatibility. They also started from inspiration in the open-source obscura headless engine. Then they ported and rebuilt the idea on Workers.

Cloudflare Kitesurf request lifecycle architecture diagram
Image: Cloudflare

Three pieces drive a request. The Engine owns the public CDP WebSocket and REST surface. It also holds session state. PageScript uses dynamic workers so each page or iframe gets a clean isolate. HTML and CSS parsing come from Blitz and Firefox’s Stylo. PageRenderer then rasterizes the scene into JPEG, PNG, or PDF through blitz-paint and Parley text layout.

Network access funnels through a single SandboxOutbound worker. That component enforces CORS, injects browser-shaped headers, filters responses, and keeps cookie jars separate. Consequently every other piece stays cut off from raw outbound access. Furthermore Cloudflare designed failures to degrade to a blank frame or missing element. It does not kill the whole session.

Benchmarks, limits, and how to try it

On a 14-URL Browser Run quick-action corpus, Kitesurf used about 3.1x less CPU for screenshots than warm-pool Chromium. HTML extraction used about 3.8x less CPU. Memory dropped further: roughly 4.7x less for screenshots and 7.0x less for HTML extraction. Wall time still favors Chromium by about 1.7-1.8x. A warm JIT beats a cold software renderer. Cloudflare says it will keep optimizing rasterization and encoding.

Image: Cloudflare

Conformance tests already pass more than 215,000 Web Platform Tests. Docs later cite over 235,000 subtests as coverage expands. DOM, HTML, selection, SVG, encoding, CORS, and XHR coverage sit in the mid-90s percent range on the latest snapshot. That said WPT measures standards conformance, not every real site.

Cloudflare lists working examples such as TodoMVC frameworks, Wikipedia, Hacker News, its own blog, and much of the dashboard. It still cannot play video, render WebGL, complete real-TLS bot challenges, or hold long authenticated sessions with persistent state. For those jobs, Browser Run keeps Chromium as the default engine. Developers opt into Kitesurf with browser=kitesurf on CDP and Quick Action endpoints. MCP clients can point chrome-devtools-mcp at the same WebSocket.

Image: Cloudflare

The public playground injects Chrome DevTools so you can inspect the DOM, console, network, and WebAssembly memory footprint per isolate. Cloudflare also plans to open-source Kitesurf. Customers will be able to deploy their own copy on their accounts when the project is ready.

What this means for agent stacks

Kitesurf sits next to other agent-tooling moves. One is Cloudflare’s own AI crawler rules that pay publishers per use. Another is consumer-side browsing inside products like Gemini Spark in Chrome. Likewise secure credential handoff for agents still matters. Tools such as 1Password for Claude help when a task needs a login that Kitesurf cannot hold for ten minutes yet.

For now the honest frame is beta infrastructure, not a universal Chromium replacement. Still, a Workers-native browser that spends 3-7x less memory and CPU on the tasks agents actually run is a concrete step. It points toward cheaper, more isolated agent browsing. Try the playground first. Then wire browser=kitesurf into an existing Puppeteer or Playwright path if the site renders cleanly.

NO COMMENTS

Exit mobile version