Kitesurf: браузер Cloudflare для AI-агентов
6 августа 2026 года Cloudflare представила Kitesurf — веб-браузер, который не работает на десктопе, не рисует панель вкладок и не рассчитывает на то, что в него кто-то смотрит. Он целиком выполняется внутри V8-изолятов на Cloudflare Workers и создан для одной аудитории: агентов, читающих веб программно.
Проблема: Chromium не проектировали под флот
Автоматизация браузера сегодня — это, по сути, аренда десктопного браузера. Каждый агент, открывающий страницу, оплачивает полноценный процесс Chromium: renderer, compositor, GPU-конвейер и сотни мегабайт резидентной памяти — ради того, чтобы в большинстве случаев получить скриншот или блок извлечённого текста.
На одном агенте эти накладные расходы незаметны. На тысяче параллельных чтений страниц они и есть весь счёт. Архитектура оптимизирована под то, что агентам не нужно: попиксельная точность с интерактивной задержкой для человека, ждущего перед экраном.
Что изменилось: браузер, разложенный на Workers
Kitesurf разбивает браузер на компоненты, которые ложатся на платформу Workers, а не на операционную систему:
- Engine Worker — отдаёт Chrome DevTools Protocol поверх WebSocket и HTTP и хранит состояние сессии. Это единственная stateful-часть.
- PageScript — поднимает долгоживущий изолят на каждую страницу и каждый iframe через Dynamic Workers. HTML разбирается движком Blitz, CSS — движком Stylo из Firefox, а JavaScript и WebAssembly исполняются в том же изоляте. Поскольку Workers не разрешают
eval(), динамическое вычисление передаётся движку Boa. - PageRenderer — превращает вычисленную страницу в пиксели через
blitz-paintи возвращает JPEG, PNG или PDF. Вызывается без состояния через RPC-систему Workers. - SandboxOutbound — единственная сетевая граница, которая применяет CORS, браузерные заголовки, фильтрацию ответов и изоляцию cookies для каждой страницы.
По данным Cloudflare, движок проходит более 215 000 тестов Web Platform Tests.
Цифры, которые важны
Медианы пяти прогонов на наборе из 14 URL в сравнении с Chromium:
| Задача | Kitesurf | Chromium | | --- | --- | --- | | CPU, скриншот | 380 ms | 1 173 ms | | CPU, извлечение HTML | 229 ms | 877 ms | | Память, скриншот | 57,8 MiB | 271,0 MiB | | Память, извлечение HTML | 39,4 MiB | 273,7 MiB | | Общее время, скриншот | 1 148 ms | 637 ms |
Примерно в 3–7 раз меньше CPU и памяти — и в 1,7–1,8 раза больше времени по часам. Этот размен и есть весь замысел.
Как попробовать
Существующие эндпоинты Browser Run принимают параметр browser=kitesurf, поэтому клиент на Puppeteer, Playwright или чистом CDP меняет движок без переписывания:
curl -X POST 'https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/browser-run/screenshot?browser=kitesurf' \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{"url": "https://example.com"}' \
--output screenshot.pngТот же эндпоинт работает как браузерный инструмент MCP, если направить Chrome DevTools MCP server на CDP-сокет:
{
"mcp": {
"kitesurf": {
"type": "local",
"command": [
"npx", "-y", "chrome-devtools-mcp@latest",
"--wsEndpoint=wss://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/browser-run/devtools/browser?browser=kitesurf",
"--wsHeaders={\"Authorization\":\"Bearer <API_TOKEN>\"}"
],
"enabled": true
}
}
}Где он не подходит
Kitesurf не воспроизводит видео, не реализует WebGL и не проходит бот-проверки, построенные на отпечатке TLS, — а их используют как шлагбаум многие сайты. Он не рассчитан на длительные аутентифицированные сессии, и у него нет расширений, вкладок, тем и синхронизации устройств. Всё, что на это опирается, по-прежнему требует настоящего Chromium. Сейчас проект в бесплатной бета-стадии с лимитами на аккаунт, и Cloudflare заявила о намерении открыть исходный код движка после того, как он созреет.
Вывод
Полезный сдвиг здесь — в том, по какой метрике оптимизируют платформу для агентов. Когда ждёт человек, побеждает задержка. Когда веб читает целый флот, побеждает стоимость одной страницы — и браузер, который стоит одной седьмой памяти, меняет границы экономически возможного. Kitesurf встаёт рядом со второй половиной той же идеи: сделать сайты читаемыми для агентов изначально, о чём шла речь в посте WebMCP: сайт как набор инструментов для агентов.
Первоисточник: Introducing Kitesurf — Cloudflare Blog