Cloudflare выложила в открытый доступ Kitesurf — экспериментальный браузерный движок для ИИ-агентов, который работает на Cloudflare Workers без Chromium и браузерных контейнеров. Движок парсит HTML, применяет CSS, исполняет JavaScript и рендерит скриншоты, PDF и HTML, а общается с внешними инструментами по стандартному Chrome DevTools Protocol. Код распространяется под лицензией Apache 2.0, запустить движок можно локально, но для деплоя на Cloudflare потребуется платный тариф Workers.

image
image

Что произошло

Cloudflare опубликовала исходный код Kitesurf, своего экспериментального браузерного движка для ИИ-агентов, в репозитории github.com/cloudflare/kitesurf под лицензией Apache 2.0. Движок работает stateless на Cloudflare Workers: вместо Chromium и браузерных контейнеров он собирает рендер-стек из Rust- и Wasm-компонентов — Blitz отвечает за DOM и layout, Stylo за CSS, Boa исполняет JavaScript поверх Wasm, Linebender обрабатывает текст и 2D-графику, а Krilla отвечает за генерацию PDF. На этом стеке Kitesurf парсит HTML, применяет CSS, исполняет JavaScript и рендерит скриншоты, PDF и HTML. Движок говорит по протоколу Chrome DevTools Protocol, поэтому к нему без изменений подключаются Puppeteer, Chrome DevTools и ИИ-агенты через chrome-devtools-mcp. Локальный запуск описан командой pnpm run dev на порту 8787, а деплой на собственный аккаунт Cloudflare требует платного тарифа Workers из-за использования Dynamic Workers.

Контекст

Рутинная браузерная автоматизация для агентов обычно опирается на фермы headless-контейнеров Chromium, которые дороги по CPU и памяти и усложняют эксплуатацию. Kitesurf предлагает другой путь: рендер страницы как serverless-примитив, который запускается по запросу на инфраструктуре Cloudflare. Сама архитектура не новая наука, а интеграция готовых компонентов: Stylo проверен в Servo, а Blitz, Boa, Linebender и Krilla — существующие проекты, поэтому новизна здесь в их сборке вокруг сценария «браузер для ИИ-агентов» и в исполнении по запросу. Ключевое инженерное решение — совместимость с Chrome DevTools Protocol: это резко снижает стоимость проверки, потому что любой желающий может прогнать свой существующий пайплайн против движка, не меняя инструменты. Открытый код под Apache 2.0 делает систему воспроизводимой в принципе: репозиторий публичен, шаги локального запуска описаны, так что бенчмарки можно построить самостоятельно, не полагаясь на цифры вендора.

Почему это важно для индустрии

Для отрасли смысл в экономике рендеринга: вместо тяжёлых Chromium-контейнеров движок масштабируется по запросу на серверless-инфраструктуре Cloudflare с меньшим потреблением CPU и памяти, хотя это пока заявление вендора без опубликованных измерений. Открытый код позволяет компаниям развернуть собственный браузер для агентов и встроить его в пайплайны через стандартный CDP, а не через проприетарные API, а для стартапов это потенциальный сдвиг unit-экономики агентной инфраструктуры. По CDP уже сегодня можно собрать рендер-шаг в любой агентный пайплайн, а поверх движка продавать валидацию контента, скриншоты и PDF как отдельные функции. Если совместимость с реальным вебом дозреет, часть нагрузок «браузер как сервис для агентов» может сместиться с контейнерных ферм на серверless-движки, при этом CDP останется общим интерфейсом между агентами и рендером; вероятны точечные интеграции в агентские фреймворки и рост числа issues и PR в Blitz и Boa. Пока же проект экспериментальный, и эти сценарии зависят от независимых бенчмарков, которых еще нет.

Почему это важно для пользователей

Код открыт, поэтому первые эксперименты почти ничего не стоят: можно бесплатно клонировать github.com/cloudflare/kitesurf, поднять движок локально командой pnpm run dev на порту 8787 и подключить к нему Puppeteer, Chrome DevTools или своего ИИ-агента по CDP. Этого достаточно для прототипов: рендеринг страниц, снятие скриншотов и генерация PDF для агентских или RAG-пайплайнов, а также чтение страницы после исполнения JavaScript. Для внешнего контура это не готовый сервис: деплой на собственный аккаунт Cloudflare требует платного тарифа Workers, а публичный URL обязательно нужно закрыть через Cloudflare Access, поскольку сам движок аутентификации не имеет.

Что пока неизвестно / ограничения

В доступных материалах нет ни цифр по CPU и памяти, ни латентности, ни метрик веб-совместимости, ни результатов тестов, поэтому утверждение о снижении стоимости автоматизации пока остается гипотезой вендора, а не измеренным результатом. Формулировка «исполняет JavaScript» не означает, что Boa в Wasm корректно прогоняет скрипты реальных сайтов так же, как движки, на которых построен Chromium: доля корректно рендерящихся сайтов неизвестна, и именно Boa против V8 выглядит узким местом, тогда как Stylo уже зрел в части CSS. Движок помечен как experimental, деплой ограничен платным тарифом Workers, а независимые бенчмарки по веб-совместимости и стоимости на реальных нагрузках появятся только если сообщество начнет прогонять через движок реальные пайплайны.

Источники

Автор

Look at AI, редакция