24 ポイント 投稿者 GN⁺ 2025-08-01 | まだコメントはありません。 | WhatsAppで共有
  • Kernel は、開発者が ブラウザ自動化 コードを別途インフラを気にすることなくすぐにデプロイし、大規模にスケールできるようにする サーバーレスプラットフォーム
  • 設定やパイプライン構築なしで、ローカル開発とほぼ同じ速さ でコードをデプロイして実行可能
  • サンドボックス環境で利用できる Chrome ブラウザ を提供し、作成した エージェントを自動的に API に変換 して、どこからでも呼び出し可能
  • Playwright、Puppeteer など Chrome DevTools Protocol ベースのフレームワーク との連携をサポートし、リモート GUI(ライブビュー) でリアルタイム監視と制御が可能
  • Unikraft unikernel 環境をサポートし、超高速再起動、スナップショット復元、リソース最小化 など高性能に特化した機能を提供
  • Docker イメージUnikraft unikernel の 2 つのデプロイ方式をサポートし、さまざまなクラウド/コンテナ環境で活用可能
  • すべてのコードは 分離された仮想マシン で安全に実行され、リアルタイムの観察およびデバッグツールを提供

What's Kernel?

  • Kernel は、サンドボックス化された、すぐに使える Chrome ブラウザ環境 を提供し、このリポジトリは Kernel のホスティングサービス のための基盤コード
  • Playwright、Puppeteer など Chrome DevTools ベースのブラウザフレームワーク から簡単に接続可能

Why use Kernel?

  • ローカルから本番まで数秒でデプロイ
    • 別途設定や本番パイプラインなしで、bun run dev とほぼ同じ時間でコードをデプロイして実行可能
  • すべてのエージェントを API に変換
    • プラットフォームに載せたすべてのエージェントが自動的に API として公開され、外部から呼び出し可能
  • 並列スケーラビリティ
    • 必要に応じて数千のブラウザインスタンスを即座に起動・拡張可能
  • 分離性と可観測性の強化
    • コードは分離された VM で実行されるためセキュリティが高く、監視およびデバッグツールを提供
  • 予測可能でシンプルな料金体系
    • 事前のインフラ定義なしで、使用したリソース分だけ課金

主な機能

  • 統合ブラウザ環境 : クラウド上でブラウザを即時に生成・制御でき、ワークロード自動化に最適化
  • サンドボックス化された Chrome ブラウザ を DevTools ベースの自動化フレームワークから接続して利用可能
    • 9222 ポート を通じて Playwright、Puppeteer などと連携
    • CDP WebSocket エンドポイントを取得後、リモートクライアントから接続
    • 切断/再接続が可能
  • セッション状態の維持 : Cookie、認証トークン、履歴などのブラウザセッションを呼び出し間でも継続管理
  • 超高速再起動(standby mode) : ブラウザインスタンスを 20ms 以下で即座に再起動
  • リモート GUI(ライブビューストリーミング) により、ブラウザ画面をリアルタイムで確認・制御可能
    • noVNC: VNC ベース、読み書き対応、WebRTC の無効化が必要
    • WebRTC: リアルタイム、読み書き、ウィンドウサイズ変更、コピー/貼り付け、高速性能、ENABLE_WEBRTC=true が必要
    • オーディオストリーミングは未対応、読み取り専用モードは環境変数で設定可能
  • ブラウザセッションのビデオリプレイ : 過去のセッションを見返してデバッグや分析が可能(対応予定)

実装とデプロイ

  • Docker コンテナを使用

    • headful Chromium を Docker コンテナ で実行可能
    • cd images/chromium-headful の後、ビルドおよび実行スクリプトを提供
    • 環境変数で WebRTC の有効化およびその他の設定が可能
  • Unikraft Unikernel を使用

    • Unikraft unikernel ベースで実行すると、Docker ベースより より高速な起動とスタンバイモード を提供
    • ネットワークトラフィックがない場合は自動で standby mode に入り、状態のスナップショット/復元をサポート
    • Cold start 20ms 未満、セッション状態(Cookie、ファイル、ブラウザ設定など)の維持と復元が可能
    • 8GB 以上のメモリが必要
  • デプロイ時の参考事項

    • WebRTC ベースのストリーミングを有効化する場合は TURN サーバーが必要
    • unikernel デプロイ時は公開 URL が発行され、誰でもアクセス可能なため、機密性の高い作業には使用禁止。利用後はインスタンスの削除が必要

まだコメントはありません。

まだコメントはありません。