browser-harness: とは何なのか、どのような問題を解決し、なぜ注目を集めているのか

browser-harness: とは何なのか、どのような問題を解決し、なぜ注目を集めているのか

解決する問題

Browser Harnessは、大規模言語モデル(LLM)がChrome DevTools Protocol (CDP)を介して実際のウェブブラウザと直接対話するための手段を提供します。エージェントとブラウザの間の制限的なレイヤーを取り除き、エージェントが完全な自由度を持って複雑なタスクを実行し、障害を克服するために実行中に自身のヘルパーコードを修正できる能力を可能にします。

仕組み

このシステムは、LLMを稼働中のChromeまたはChromiumブラウザに接続する軽量なCDPハネスを使用します。エージェントが既存のツールで実行できないタスクに遭遇した際、専用のワークスペース (agent_helpers.py) 内で独自のヘルパー関数を記述・編集したり、別のディレクトリに再利用可能なサイト固有の「ドメインスキル」を作成したりできます。これにより、エージェントは自身の能力を向上させ、各実行から学習することが可能になります。

対象ユーザー

コーディングエージェント(Claude CodeやCodexなど)を使用してブラウザタスクを自動化したいユーザーや、AIエージェントがウェブとどのように対話するかについて、高度な柔軟性と制御をが必要とするユーザー向けに設計されています。

ハイライト

  • 自己改善型: エージェントは問題を解決するために、自身のヘルパーコードやスキルをその場で記述・更新できます。
  • 直接接続: CDPを介してChromeに直接接続するためにwebsocketを使用し、抽象化レイヤーを最小限に抑えます。
  • 軽量なアーキテクチャ: コアパッケージは非常に小さく、4つのコアファイルにわたって約1,000行のコードで構成されています。
  • クラウド統合: ローカルブラウザ、またはBrowser Use Cloudを介してstealth/headlessブラウザへの接続をサポートしています。

Sources