ブラウザ
Agent が操作できる本物のヘッドレスブラウザ —— ナビゲート、クリック、入力、スクリーンショット、JS 実行。
ToShop には管理されたヘッドレスブラウザ(Playwright ベース)が同梱されています。Agent はこれを端から端まで操作できます。URL に移動し、ページのアクセシビリティツリーを読み、参照で要素をクリックし、フォームを埋め、スクリーンショットを撮り、JavaScript さえ実行できます。
これは本物のブラウザ。web fetch ではありません
browser_* ツールは本物の Chromium インスタンスを立ち上げます —— JavaScript は動作し、ログイン状態は保持され、ネットワークリクエストもインターセプトできます。簡略化された HTTP クライアントではありません。
3 つのウェブ系能力
管理されたヘッドレスブラウザ(Playwright)。 完全な DOM、JS、Cookie、セッション。
こんなとき: Agent が対話する必要があるとき —— クリック、入力、レンダリング後のコンテンツのスクレイピング、ログイン。
コスト: 遅延が大きく、コンテキストも大きい(スナップショットごとに大量)。
HTTP のみのフェッチ、レンダリングなし。 markdown 抽出したページテキストを返します。
こんなとき: Agent が生のコンテンツだけを必要とし、ページがサーバーサイドレンダリングされているとき。
コスト: 最小 —— 高速、軽量なコンテキスト。
URL をシステムのデフォルトブラウザに渡します。
こんなとき: Agent の推奨にリンクが含まれていて、次に読むのがあなたのとき。
コスト: Agent にとってはゼロ —— リンクが開けば関与は終わります。
browser_* ツールキット
| 名前 | 説明 |
|---|---|
browser_navigate | ヘッドレスブラウザで URL を読み込みます。 |
browser_snapshot | ページのアクセシビリティツリーを返します(@e5、@e12 のような ref つき対話要素)。 |
browser_screenshot | フルページまたはビューポートのイメージをキャプチャします。 |
browser_click | アクセシビリティ ref で要素をクリックします。 |
browser_type | フォームフィールドに入力します。 |
browser_press | キーボードキー(Enter、Tab、Esc など)を送信します。 |
browser_scroll | ページをスクロールします。 |
browser_evaluate | ページのコンテキストで JavaScript を実行します。 |
browser_wait_for | テキスト出現、セレクタの一致、URL の変化、または読み込み状態までブロックします。 |
browser_network | ネットワークリクエストを検査または記録します(HAR 形式)。 |
browser_download | ページのアクションでトリガーされたダウンロードを追跡します。 |
browser_tabs | タブを一覧、フォーカス、または閉じます。 |
browser_advanced | PDF エクスポート、ファイルアップロード、ダイアログ処理、ホバー、ドラッグ、セレクト選択、フィル。 |
典型的なフロー
ナビゲート
browser_navigate("https://example.com")どの要素を操作するか決定
Agent はツリーを読み、要素を選びます。
実行
browser_click(ref="@e5")
browser_type(ref="@e12", text="...")ページが落ち着くのを待つ
browser_wait_for(state="networkidle")必要なら視覚的に確認
browser_screenshot()Snapshot vs Screenshot
Snapshot —— 対話用
アクセシビリティツリーは、Agent がクリック / 入力できる安定した ref を提供します。レイアウト変更にも耐えます。繰り返し使っても安価です。
Screenshot —— 確認用
ユーザーに見せる、視覚的に検証する、CAPTCHA のようにツリーでは足りない問題を解決するときに。
Agent は両方使います。snapshot で動き、screenshot で確認します。
ブラウザセッション
1 つのタスク内では複数の browser_* 呼び出しでセッションが持続するため、Agent は一度ログインすれば認証済みの状態で操作を続けられます。永続プロファイルを設定していない限り、セッションはタスク終了時に終わります。
永続プロファイル
設定 → ブラウザ → プロファイルで構成します —— 「Shopify Admin に常時サインイン」のようなパターンに便利です。プロファイルはタスクをまたいで保持されます。
権限と安全性
ブラウザを使うべきではないとき
早すぎるエスカレーションは禁物
Agent がページのコンテンツ(記事本文、JSON API のレスポンス、静的 HTML)だけを必要とするなら、web_fetch の方が高速、軽量で、コンテキストの消費も少なくて済みます。Agent はデフォルトで web_fetch を選び、JavaScript、ログイン、または対話が必要なときだけ browser_* にエスカレートします。
あなたが次にページを読むつもりなら、open_url で普段のブラウザ(Cookie や拡張機能込み)で開く方が良いでしょう。
ToShopドキュメント