We introduced Kitesurf , our stateless browser for AI agents that runs entirely on top of Workers, in August and followed up in September with WebMCP support, new APIs, and improved compatibility. On every occasion, we mentioned our commitment to open sourcing it so that developers could run their own browser engine on their own Cloudflare accounts if they want to. That promise is now real. Kitesurf is open source on GitHub under the Apache 2. 0 license. You can read the code, run it locally, change it, and deploy your own instance to Cloudflare Workers. A browser built for agents
Kitesurf runs entirely on Cloudflare Workers. It parses HTML, applies CSS, executes page JavaScript, and renders screenshots without a browser container. It supports the Chrome DevTools Protocol (CDP), so you can connect clients such as Puppeteer. 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, and scaling on demand across Cloudflare’s global Workers network. Read more about why and how we built Kitesurf in our initial announcement and how to use it in Browser Run’s developer documentation. What is inside the repository? Kitesurf builds on Cloudflare’s Developer Platform and APIs, alongside an ecosystem of open-source Rust packages compiled to WebAssembly:
Blitz provides HTML parsing, the DOM, layout, and painting. Stylo provides CSS parsing, cascading, and computed styles. Boa runs JavaScript inside WebAssembly (as the last resort only when we can’t run JavaScript in Dynamic Workers). Linebender libraries provide text layout and 2D graphics, and Krilla generates PDF output. These projects made Kitesurf possible. They retain their respective licenses; the repository’s NOTICE documents third-party notices. Kitesurf has three main parts: the Engine manages browser sessions and client connections, PageScript runs the page and its JavaScript, and PageRenderer draws the result. All packages, the engine, its Rust core, DOM shims, renderer, and Kitesurf CLI live separately in folders under the repository’s packages directory where you can explore how all the pieces fit together…