コマンド

コア

agent-browser open <url>              # ナビゲート(別名:goto, navigate)
agent-browser click <sel>             # 要素をクリック(--new-tab を指定で新しいタブで開く)
agent-browser dblclick <sel>          # ダブルクリック
agent-browser fill <sel> <text>       # 入力欄をクリアしてテキストを入力
agent-browser type <sel> <text>       # 要素に文字を入力
agent-browser press <key>             # キーを押下(Enter、Tab、Control+a)(別名:key)
agent-browser keyboard type <text>    # 現在のフォーカス位置に文字を入力(セレクタは不要)
agent-browser keyboard inserttext <text>  # キーイベントを使わずにテキストを挿入
agent-browser keydown <key>           # キーを押したままにする
agent-browser keyup <key>             # キーを離す
agent-browser hover <sel>             # 要素のホバー
agent-browser focus <sel>             # 要素にフォーカスを当てる
agent-browser select <sel> <val>      # ドロップダウンオプションを選択
agent-browser check <sel>             # チェックボックスをチェック
agent-browser uncheck <sel>           # チェックボックスをアンチェック
agent-browser scroll <dir> [px]       # スクロール(up/down/left/right、--selector <sel> を使用)
agent-browser scrollintoview <sel>    # 要素を画面内にスクロール
agent-browser drag <src> <dst>        # ドラッグアンドドロップ
agent-browser upload <sel> <files>    # ファイルをアップロード
agent-browser screenshot [path]       # スクリーンショット(--full を指定で全ページ)
agent-browser screenshot --annotate   # 番号付き要素ラベルによる注釈付きスクリーンショット
agent-browser pdf <path>              # ページをPDFとして保存
agent-browser snapshot                # 参照付きアクセシビリティツリー
agent-browser eval <js>               # JavaScriptを実行
agent-browser connect <port|url>      # CDP経由でブラウザに接続
agent-browser close                   # ブラウザを閉じる(別名:quit, exit)

情報取得

agent-browser get text <sel>          # テキストコンテンツを取得
agent-browser get html <sel>          # innerHTMLを取得
agent-browser get value <sel>         # 入力値を取得
agent-browser get attr <sel> <attr>   # 属性を取得
agent-browser get title               # ページタイトルを取得
agent-browser get url                 # 現在のURLを取得
agent-browser get count <sel>         # 該当する要素数を取得
agent-browser get box <sel>           # 縮小境界ボックスを取得
agent-browser get styles <sel>        # 計算されたスタイルを取得

状態確認

agent-browser is visible <sel>        # 表示状態を確認
agent-browser is enabled <sel>        # 有効状態を確認
agent-browser is checked <sel>        # チェック状態を確認

要素検索

アクション(click, fill, type, hover, focus, check, uncheck, text)付きのセマンティックセレクタ:

agent-browser find role <role> <action> [value]
agent-browser find text <text> <action>
agent-browser find label <label> <action> [value]
agent-browser find placeholder <ph> <action> [value]
agent-browser find alt <text> <action>
agent-browser find title <text> <action>
agent-browser find testid <id> <action> [value]
agent-browser find first <sel> <action> [value]
agent-browser find last <sel> <action> [value]
agent-browser find nth <n> <sel> <action> [value]

オプション:

  • --name <name> -- アクセシブルネームで役割をフィルタリング
  • --exact -- 精確なテキスト一致を要求

例:

agent-browser find role button click --name "Submit"
agent-browser find label "Email" fill "[email protected]"
agent-browser find alt "Logo" click
agent-browser find first ".item" click
agent-browser find last ".item" text
agent-browser find nth 2 ".card" hover

待機

agent-browser wait <selector>         # 要素の表示を待つ
agent-browser wait <ms>               # 時間を待つ
agent-browser wait --text "Welcome"   # テキストの出現を待つ
agent-browser wait --url "**/dash"    # URLパターンの到着を待つ
agent-browser wait --load networkidle # ロード状態を待つ
agent-browser wait --fn "condition"   # JavaScript条件の成立を待つ
agent-browser wait --download [path]  # ダウンロード完了を待つ

ダウンロード

agent-browser download <sel> <path>   # 要素をクリックしてダウンロードを開始
agent-browser wait --download [path]  # すべてのダウンロード完了を待つ

デフォルトのダウンロードディレクトリを設定するには --download-path <dir>(または AGENT_BROWSER_DOWNLOAD_PATH 環境変数)を使用してください。指定しない場合、ダウンロードは一時ディレクトリに保存され、ブラウザが閉じられると削除されます。

マウス操作

agent-browser mouse move <x> <y>      # マウスを移動
agent-browser mouse down [button]     # ボタンを押す
agent-browser mouse up [button]       # ボタンを離す
agent-browser mouse wheel <dy> [dx]   # ホイールでスクロール

設定

agent-browser set viewport <w> <h>    # ビューポートサイズを設定
agent-browser set device <name>       # デバイスをエミュレート(例:"iPhone 14")
agent-browser set geo <lat> <lng>     # 地理情報(緯度経度)を設定
agent-browser set offline [on|off]    # オフラインモードを切り替え
agent-browser set headers <json>      # 追加のHTTPヘッダーを設定
agent-browser set credentials <u> <p> # HTTP基本認証
agent-browser set media [dark|light]  # 色テーマをエミュレート(セッション期間中保持)

永続的なダーク/ライトモードをすべてのコマンドで有効にするには --color-scheme を使用します:

agent-browser --color-scheme dark open https://example.com

クッキーとストレージ

agent-browser cookies                 # すべてのクッキーを取得
agent-browser cookies set <name> <val> # クッキーを設定
agent-browser cookies clear           # クッキーをクリア

agent-browser storage local           # すべての localStorage を取得
agent-browser storage local <key>     # 特定のキーを取得
agent-browser storage local set <k> <v>  # 値を設定
agent-browser storage local clear     # すべてクリア

agent-browser storage session         # sessionStorage用に同じ操作

ネットワーク

agent-browser network route <url>              # リクエストをインタセプト
agent-browser network route <url> --abort      # リクエストをブロック
agent-browser network route <url> --body <json>  # 応答をモック
agent-browser network unroute [url]            # ルートの解除
agent-browser network requests                 # 記録済みリクエストを表示
agent-browser network requests --clear         # リクエストログをクリア
agent-browser network requests --filter <pat>  # URLパターンでフィルタリング

タブとフレーム

agent-browser tab                     # タブの一覧を表示
agent-browser tab new [url]           # 新しいタブを開く
agent-browser tab <n>                 # タブに切り替える
agent-browser tab close [n]           # タブを閉じる
agent-browser window new              # 新しいブラウザウィンドウを開く
agent-browser frame <sel>             # iframeに切り替える
agent-browser frame main              # メインフレームに戻る

ダイアログ

agent-browser dialog accept [text]    # ダイアログを受け入れ(任意のプロンプトテキストを含む)
agent-browser dialog dismiss          # ダイアログをキャンセル

デバッグ

agent-browser trace start [path]      # トレースの開始
agent-browser trace stop [path]       # トレースの停止と保存
agent-browser profiler start          # Chrome DevToolsプロファイリングの開始
agent-browser profiler stop [path]    # プロファイルの停止と保存(.json形式)
agent-browser record start <path>     # 動画記録の開始(WebM形式)
agent-browser record stop             # 動画の停止と保存
agent-browser record restart <path>   # 現在の記録を停止して新しい記録を開始
agent-browser console                 # コンソールメッセージを表示
agent-browser console --clear         # コンソールログをクリア
agent-browser errors                  # ページエラーを表示
agent-browser errors --clear          # エラーログをクリア
agent-browser highlight <sel>         # 要素をハイライト

認証バンク

agent-browser auth save <name> [opts]    # 認証プロファイルを保存
agent-browser auth login <name>          # 保存済み資格情報を使用してログイン
agent-browser auth list                  # 保存済みプロファイルの一覧(名前とURLのみ)
agent-browser auth show <name>           # プロファイルメタデータを表示(パスワードなし)
agent-browser auth delete <name>         # 保存済みプロファイルを削除

保存オプション:

  • --url <url> -- ログインページのURL(必須)
  • --username <user> -- ユーザ名(必須)
  • --password <pass> -- パスワード(--password-stdin を指定しない限り必須)
  • --password-stdin -- 標準入力からパスワードを読み込む(シェル履歴への漏洩を避けるために推奨)
  • --username-selector <sel> -- ユーザ名フィールド用のカスタムCSSセレクタ
  • --password-selector <sel> -- パスワードフィールド用のカスタムCSSセレクタ
  • --submit-selector <sel> -- 送信ボタン用のカスタムCSSセレクタ
echo "pass" | agent-browser auth save github --url https://github.com/login --username user --password-stdin
agent-browser auth login github
agent-browser auth list

確認プロセス

--confirm-actions を設定すると、特定のアクションカテゴリは即座に実行せず、confirmation_required の応答を返します。confirm または deny を使用して、アクションを承認または拒否できます。

agent-browser confirm <confirmation-id>  # 保留中のアクションを承認
agent-browser deny <confirmation-id>     # 保留中のアクションを拒否

保留中の確認は60秒後に自動的に拒否されます。

agent-browser --confirm-actions eval,download eval "document.title"
# ID付きの confirmation_required が返される
agent-browser confirm c_8f3a1234

状態管理

agent-browser state save <path>       # 認証状態をファイルに保存
agent-browser state load <path>       # ファイルから認証状態を読み込み
agent-browser state list              # 保存済み状態ファイルの一覧
agent-browser state show <file>       # 状態の概要を表示
agent-browser state rename <old> <new> # 状態ファイルの名前を変更
agent-browser state clear [name]      # セッション名の状態をクリア
agent-browser state clear --all       # すべての保存済み状態をクリア
agent-browser state clean --older-than <days>  # 古い状態を削除

セッション

agent-browser session                 # 現在のセッション名を表示
agent-browser session list            # 有効なセッションの一覧を表示

ナビゲーション

agent-browser back                    # 戻る
agent-browser forward                 # 進む
agent-browser reload                  # ページを再読み込み

グローバルオプション

--session <name>         # 隔離されたブラウザセッション
--session-name <name>    # セッション状態(クッキー、localStorage)の自動保存/復元
--profile <path>         # 永続的なブラウザプロファイルディレクトリ
--state <path>           # JSONファイルからストレージ状態を読み込む
--headers <json>         # URLのオリジンに限定されたHTTPヘッダー
--executable-path <path> # カスタムブラウザ実行ファイル
--extension <path>       # ブラウザ拡張を読み込む(繰り返し可能)
--args <args>            # ブラウザ起動引数(カンマ区切り)
--user-agent <ua>        # カスタムユーザーエージェント文字列
--proxy <url>            # プロキーサーバーのURL
--proxy-bypass <hosts>   # プロキーサーバーをバイパスするホスト
--ignore-https-errors    # HTTPS証明書エラーを無視
--allow-file-access      # file:// URLsがローカルファイルにアクセスを許可(Chromium専用)
-p, --provider <name>    # ブラウザプロバイダ(ios, browserbase, kernel, browseruse)
--device <name>          # iOSデバイス名(例:"iPhone 15 Pro")
--json                   # JSON出力(スクリプト用)
--full, -f               # 全ページスクリーンショット
--annotate               # 番号付き要素ラベルによる注釈付きスクリーンショット
--headed                 # ブラウザウィンドウを表示(ヘッドレスではない)
--cdp <port|url>         # Chrome DevTools Protocol経由での接続(ポートまたはWebSocket URL)
--auto-connect           # 実行中のChromeを自動検出し接続
--color-scheme <scheme>  # 色テーマ:dark, light, no-preference
--download-path <path>   # デフォルトのダウンロードディレクトリ
--content-boundaries     # LLMの安全性のためにページ出力を境界マークで囲む
--max-output <chars>     # ページ出力をN文字までに切り詰める
--allowed-domains <list> # カンマ区切りの許可ドメインパターン
--action-policy <path>   # 行動ポリシーのJSONファイルのパス
--confirm-actions <list> # 確認が必要な行動カテゴリ
--confirm-interactive    # インタラクティブな確認プロンプト(stdinがTTYでない場合は自動的に拒否)
--config <path>          # カスタム設定ファイルを使用
--debug                  # デバッグ出力

コマンドチェイン

単一のシェル呼び出し内で && を使ってコマンドを連結できます。バックグラウンドデーモンによってブラウザが維持されるため、チェインは自然に動作し、個別呼び出しよりも効率的です:

agent-browser open example.com && agent-browser wait --load networkidle && agent-browser snapshot -i
agent-browser fill @e1 "[email protected]" && agent-browser fill @e2 "pass" && agent-browser click @e3
agent-browser open example.com && agent-browser wait --load networkidle && agent-browser screenshot page.png

途中の出力を読まない場合に && を使用してください。出力の解析が必要な場合は(例:snapshotで参照を発見し、その後その参照に操作を行う)、個別にコマンドを実行してください。

ローカルファイル

file:// URLを使ってローカルファイル(PDF、HTML)を開きます:

agent-browser --allow-file-access open file:///path/to/document.pdf
agent-browser --allow-file-access open file:///path/to/page.html
agent-browser screenshot output.png

--allow-file-access フラグは、JavaScriptが他のローカルファイルにアクセスできるようにします。Chromium専用。