Cloudflare macht Kitesurf quelloffen, eine zustandslose Browser-Engine für KI-Agenten

Published · AI Daily — AI-assisted deep research, methodology & disclosure

Cloudflare hat Kitesurf auf GitHub unter Apache 2.0 quelloffen gemacht. Es ist ein zustandsloser Browser für KI-Agenten, der vollständig auf Workers läuft. Er parst HTML, wendet CSS an, führt JavaScript aus und rendert Screenshots ohne Browser-Container und unterstützt CDP für Puppeteer.

Cloudflare macht Kitesurf quelloffen, eine zustandslose Browser-Engine für KI-Agenten

Cloudflare hat in seinem Blog angekündigt, dass Kitesurf nun auf GitHub unter der Apache-2.0-Lizenz quelloffen verfügbar ist. Kitesurf ist ein zustandsloser Browser für KI-Agenten, der vollständig auf Cloudflare Workers läuft. Der Beitrag stammt von Celso Martinho, Rui Figueira, Bernardo Pereira und Luís Duarte. Der Beitrag ordnet es als schlanke Browser-Engine für Agenten ein, nicht als bewiesenes, vollständiges Framework für isolierte Multi-Tenant-Sandboxes.

Ein eingelöstes Versprechen

Cloudflare stellte Kitesurf im August vor und legte im September mit WebMCP-Unterstützung, neuen Schnittstellen und besserer Kompatibilität nach. Beide Male sagte das Team zu, das Projekt quelloffen zu machen, damit Entwickler ihre eigene Browser-Engine auf ihrem eigenen Cloudflare-Konto betreiben können. Diese Veröffentlichung löst das Versprechen ein. Man kann den Code lesen, lokal ausführen, ändern und die eigene Instanz auf Cloudflare Workers bereitstellen.

Was Kitesurf ist

Die offizielle Beschreibung ist konkret. Kitesurf läuft vollständig auf Cloudflare Workers. Es parst HTML, wendet CSS an, führt das JavaScript der Seiten aus und rendert Screenshots, alles ohne Browser-Container. Es unterstützt das Chrome DevTools Protocol, kurz CDP, sodass Clients wie Puppeteer sich verbinden können.

Das Hauptziel ist, KI-Agenten einen leichten und effizienten Browser zu geben. Er soll Websites laden, JavaScript ausführen und mit Seiten interagieren und dabei weniger Prozessor und Arbeitsspeicher brauchen als ein vollständiger Browser wie Chromium. Zudem soll er sich auf Abruf über das weltweite Workers-Netz von Cloudflare skalieren lassen.

Was im Repository steckt

Kitesurf baut auf Cloudflares Entwicklerplattform und deren Schnittstellen auf, dazu auf quelloffene Rust-Pakete, die zu WebAssembly kompiliert werden. Blitz liefert HTML-Parsing, das DOM, das Layout und das Zeichnen. Stylo liefert CSS-Parsing, die Kaskade und die berechneten Stile. Boa führt JavaScript in WebAssembly aus, aber nur als letzter Ausweg, wenn der Code nicht in Dynamic Workers laufen kann. Die Linebender-Bibliotheken übernehmen Textlayout und 2D-Grafik, und Krilla erzeugt PDF-Ausgaben. Diese Projekte behalten ihre eigenen Lizenzen, und die Datei NOTICE im Repository hält die Hinweise zu Drittanbietern fest.

Der Aufbau hat drei Hauptteile. Die Engine verwaltet Browsersitzungen und Clientverbindungen, PageScript führt die Seite und ihr JavaScript aus, und PageRenderer zeichnet das Ergebnis. Die Pakete, darunter die Engine, der Rust-Kern, die DOM-Shims, der Renderer und das Kommandozeilenwerkzeug von Kitesurf, liegen in getrennten Ordnern im Verzeichnis packages des Repositorys, sodass man sehen kann, wie die Teile zusammenpassen.

Lokal ausführen

Zuerst prüft man die Build-Voraussetzungen im Repository, klont es dann, installiert die Abhängigkeiten mit pnpm und startet die Engine mit pnpm run dev. Der erste Build kompiliert den Rust-Kern samt Abhängigkeiten, man muss also etwas warten. Spätere Builds nutzen den Cache. Wrangler startet danach einen lokalen Entwicklungsserver unter 127.0.0.1:8787. Diese Adresse lässt sich in Chrome DevTools öffnen, um eine Seite auszuprobieren, oder per Programm nutzen. Der Beitrag zeigt ein Node.js-Skript, das puppeteer-core mit dem lokalen WebSocket-Endpunkt devtools/browser verbindet, eine Seite öffnet und einen Screenshot speichert. Außerdem wird vorgeschlagen, das eigene Agenten-Gerüst auf den lokalen CDP-Port zu richten und den Agenten die volle Kontrolle über Kitesurf übernehmen zu lassen.

Auf dem eigenen Konto bereitstellen

Sind lokale Änderungen und Tests abgeschlossen, kann man die Engine auf dem eigenen Cloudflare-Konto bereitstellen und anstelle der verwalteten Browser-Run-Schnittstellen von Cloudflare nutzen. Ein kostenpflichtiger Workers-Tarif ist nötig, weil Kitesurf Dynamic Workers verwendet, um isolierte Workers für Seiten zu erzeugen. Im Wurzelverzeichnis des Repositorys genügt pnpm run deploy.

Mitarbeit und aktueller Stand

Wie bei anderen quelloffenen Projekten von Cloudflare sind Forks und Beiträge willkommen. Das Team stellt klar, dass Kitesurf in intensiver Entwicklung ist. Der Schwerpunkt liegt derzeit auf besserer Kompatibilität, die man an den Ergebnissen der Web Platform Tests verfolgen kann, sowie auf Zuverlässigkeit und Effizienz. Wer beitragen will, liest zuerst die Richtlinien, eröffnet ein Issue mit einem minimalen Beispiel oder einem Lösungsvorschlag und lässt sich von einem Maintainer bestätigen, bevor er einen Pull Request öffnet. Gezielte Korrekturen mit Tests, klaren Belegen und einem begrenzten Umfang lassen sich leichter prüfen als große Umschreibungen. Ein Beitrag muss kein Code sein. Eine kleine Seite, die einen Darstellungsfehler reproduziert, ein fehlschlagender Automatisierungsablauf oder eine Korrektur der Dokumentation helfen ebenfalls.

Worauf man achten sollte

Apache 2.0 ist eine freizügige Lizenz, doch die Komponenten, von denen Kitesurf abhängt, etwa Blitz, Stylo und Boa, behalten ihre eigenen Lizenzen. Unternehmen sollten vor dem Einsatz die Datei NOTICE prüfen. Die Bereitstellung erfordert einen kostenpflichtigen Workers-Tarif, Einzelentwickler sollten die Kosten also vor Experimenten klären. Da sich das Projekt schnell bewegt, können sich Schnittstellen und Verhalten ändern, und kritische Abläufe brauchen Regressionstests. Kitesurf führt das JavaScript von Seiten bevorzugt in Dynamic Workers aus und weicht nur bei Bedarf auf Boa in WebAssembly aus. Die Ausführungswege können sich daher von Seite zu Seite unterscheiden, was bei der Fehlersuche wichtig ist.

Wie es weitergeht

Das Team verweist auf den Cloudflare-Blog und das Änderungsprotokoll sowie auf die offizielle Startseite des Projekts, auf der die Ergebnisse der Web Platform Tests zur Standardkompatibilität und Benchmarks veröffentlicht werden. Außerdem lädt es zum Austausch auf Discord ein. Die Autoren schließen mit dem Satz, sie bauten einen Browser für Agenten und wünschten sich Hilfe bei der Verbesserung.

Sources

FAQ

Was ist Kitesurf?

Kitesurf ist ein zustandsloser Browser für KI-Agenten von Cloudflare, der vollständig auf Cloudflare Workers läuft. Er parst HTML, wendet CSS an, führt das JavaScript von Seiten aus und rendert Screenshots ohne Browser-Container und unterstützt das Chrome DevTools Protocol.

Wie führe ich Kitesurf aus oder stelle es bereit?

Man klont das GitHub-Repository, installiert die Abhängigkeiten mit pnpm und startet mit pnpm run dev einen lokalen Server unter 127.0.0.1:8787, mit dem sich Puppeteer verbinden kann. Für das eigene Konto dient pnpm run deploy. Wegen der Dynamic Workers ist ein bezahlter Workers-Tarif nötig.

Ist Kitesurf bereit für den Produktivbetrieb?

Cloudflare sagt, das Projekt sei in intensiver Entwicklung und konzentriere sich auf Kompatibilität, Zuverlässigkeit und Effizienz, mit Fortschritten in den Web Platform Tests. Man sollte es auf den eigenen Zielseiten testen, Regressionstests für kritische Abläufe einrichten und die Lizenzhinweise der Drittkomponenten prüfen.