Kitesurf ↗ は、Cloudflare のステートレスでスケーラブルなブラウザーです。Workers 上で完結して動作し、AI エージェント向けに設計されています。Chromium のようなフル機能のデスクトップブラウザーエンジンを載せるのではなく、エージェントにとって重要な要素 — トークン数、コンテキストウィンドウ、スケーラビリティ、パフォーマンス、コスト — に焦点を当てます。タブ、テーマ、拡張機能、ピクセルパーフェクトな描画など、人が使う機能はトレードオフとして削っています。
スクリーンショットや HTML 抽出など、よくあるエージェント向けの作業では、Kitesurf は Chromium より CPU とメモリを大幅に少なく使います。そのため、より多くのセッションを動かせ、バーストする AI ワークロードにもスケールしやすくなります。
Kitesurf は次の用途に向いています。
- ページのレンダリングは必要だが、フル機能でピクセルパーフェクトな Chromium ブラウザーを使わないトレードオフを受け入れられる AI エージェント。
- ページからのコンテンツ抽出や、対応サイト向けの PDF・スクリーンショット生成など、ワンショットの Quick Actions に依存する自動化やアプリケーション。
- タスクの間だけ存在する、短命で完全に分離されたステートレスエンジンが向いている、バーストする AI ワークロード。
Kitesurf は、TodoMVC ↗(vanilla、React、Vue、Angular、Preact)、Wikipedia、Hacker News、Cloudflare Blog、Cloudflare ダッシュボードの多くなどを正しく描画します。
次が必要な場合、Kitesurf はまだ適していません。
- 動画の再生や WebGL の描画。
- 実際の TLS フィンガープリントでボットチャレンジのハンドシェイクを行うこと。
- 永続状態が必要な、長時間の認証済みセッションを開始すること。
これらの用途では、Chromium を使う Browser Run のデフォルトブラウザーを使ってください。
特定のサイトが Kitesurf と互換かどうかは、実際に試すのがいちばん確実です。CDP エンドポイント と Quick Actions、または 公開プレイグラウンド ↗ で確認できます。
Browser Run の Quick Actions でも Kitesurf を使えます。任意の Quick Action エンドポイントに browser=kitesurf を追加します。
たとえば、Kitesurf でスクリーンショットを撮る場合は次のとおりです。
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"Browser Run の CDP エンドポイント は Kitesurf をオプションとしてサポートしています。既存の Puppeteer、Playwright、chrome-remote-interface ↗ の構成はそのまま使えます。オプトインするには、エンドポイント URL に browser=kitesurf を追加します。
wss://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/browser-run/devtools/browser?browser=kitesurfMCP と CDP を話す任意の AI エージェントが Kitesurf を使えます。MCP クライアント の設定に、次を追加します。
{
"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
}
}
}<ACCOUNT_ID> を Cloudflare のアカウント ID に、<API_TOKEN> を Browser Run の API トークンに置き換えます。
コードを書かずに Kitesurf を試すには、公開プレイグラウンド ↗ を使います。任意の URL を入力すると、Kitesurf がそのページをどう描画するか確認し、操作できます。
プレイグラウンドは UI に Chrome DevTools を注入します。展開した DOM 要素の検査、コンソールメッセージの確認、Kitesurf がページを描画しているあいだのネットワーク活動の監視ができます。Memory パネル ↗ は、フレームを含む各 isolate の WebAssembly フットプリントを報告し、ページごとのリソース消費を確認できます。
Kitesurf は、W3C ↗ 標準への適合を測る共通スイート Web Platform Tests(WPT) ↗ に対してテストされています。最新の実行では、Kitesurf は 235,000 を超えるサブテストに合格しており、カバレッジは急速に広がっています。
エージェントにとって重要なブラウザーの部分は、高いカバレッジです。
| 領域 | サブテストのカバレッジ |
|---|---|
| DOM | 97% |
| HTML | 96% |
| Selection | 99% |
| SVG | 97% |
| Encoding | 99% |
| CORS | 95% |
| XHR | 95% |
| URL | 83% |
Kitesurf は軽量で効率的になるよう設計されています。よくあるエージェント向けの作業では Chromium より CPU とメモリが少なく、その代わり実時間はわずかに遅く、描画はピクセルパーフェクトではありません。
次の表は、14 URL のコーパス ↗ に対する Browser Run Quick Action を 5 回実行した中央値です。Chromium(ウォームプール)と Kitesurf を比較しています。
| 指標 | Kitesurf | Chromium(ウォームプール) | Kitesurf(相対値) |
|---|---|---|---|
| CPU:スクリーンショット | 380 ms | 1,173 ms | Chromium より CPU が 3.1 倍少ない |
| CPU:HTML 抽出 | 229 ms | 877 ms | Chromium より 3.8 倍少ない |
| メモリ:スクリーンショット | 57.8 MiB | 271.0 MiB | Chromium より 4.7 倍少ない |
| メモリ:HTML 抽出 | 39.4 MiB | 273.7 MiB | Chromium より 7.0 倍少ない |
| 実時間:スクリーンショット | 1,148 ms | 637 ms | Chromium より 1.8 倍遅い |
| 実時間:HTML 抽出 | 820 ms | 472 ms | Chromium より 1.7 倍遅い |
請求に効くメモリと CPU では Kitesurf が有利です(3〜7 倍)。実時間では、ウォームな JIT コンパイラーがコールドなソフトウェアレンダラーに勝つため、Chromium が有利です。