browser-use について
`browser-use` コマンドラインで永続的なブラウザーセッションを操作する自動化スキルです。ヘッドレスブラウザー、ローカルの Chrome、クラウドブラウザーに対応し、MCP サーバーとしても実行できます。
主な機能
- 01ページの移動と確認
- 02要素番号によるクリックと入力
- 03コマンド間でセッションを維持
- 04Chrome またはクラウドブラウザーに接続
- 05MCP サーバーとして実行
活用シーン
- 01ウェブサイト操作の自動化
- 02Chrome プロファイルで認証済みサイトを閲覧
- 03トンネル経由でローカル開発サーバーを確認
- 04独立したセッションでブラウザー処理を実行
MCP 対応
`--mcp` を指定すると CLI を MCP サーバーとして実行でき、MCP クライアントにブラウザー自動化機能を提供します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ shawnpana/ browser-use --skill browser-useインストール後、Claude Code で/browser-useを入力して読み込まれたか確認します。
同梱ファイルreferences/cdp-python.mdreferences/multi-session.md
詳細
browser-use CLI によるブラウザー自動化
browser-use コマンドを使うと、高速で永続的なブラウザー自動化を実行できます。バックグラウンドデーモンがコマンド間もブラウザーを開いたままにするため、1 回の呼び出しあたり約 50 ms の遅延で済みます。
前提条件
browser-use doctor # Verify installation
セットアップの詳細については、https://github.com/browser-use/browser-use/blob/main/browser_use/skill_cli/README.md を参照してください。
基本的なワークフロー
- 移動:
browser-use open <url>— ヘッドレスブラウザーを起動し、ページを開きます - 確認:
browser-use state— クリック可能な要素とそのインデックスを返します - 操作:state のインデックスを使用します(
browser-use click 5、browser-use input 3 "text") - 検証:
browser-use stateまたはbrowser-use screenshotで確認します - 繰り返し:コマンド間もブラウザーは開いたままです
コマンドに失敗した場合は、まず browser-use close を実行して問題のあるセッションを終了し、その後再試行してください。
ユーザーが現在使用している Chrome を使う場合(ログイン状態/Cookie を保持):最初に browser-use connect を実行してください。
代わりにクラウドブラウザーを使う場合:最初に browser-use cloud connect を実行してください。
いずれの場合も、その後のコマンドは同じように使用できます。
ブラウザーモード
browser-use open <url> # Default: headless Chromium (no setup needed)
browser-use --headed open <url> # Visible window (for debugging)
browser-use connect # Connect to user's Chrome (preserves logins/cookies)
browser-use cloud connect # Cloud browser (zero-config, requires API key)
browser-use --profile "Default" open <url> # Real Chrome with specific profile
connect または cloud connect の実行後は、以降のコマンドはすべてそのブラウザーに送られます。追加のフラグは必要ありません。
コマンド
# Navigation
browser-use open <url> # Navigate to URL
browser-use back # Go back in history
browser-use scroll down # Scroll down (--amount N for pixels)
browser-use scroll up # Scroll up
browser-use tab list # List all tabs
browser-use tab new [url] # Open a new tab (blank or with URL)
browser-use tab switch <index> # Switch to tab by index
browser-use tab close <index> [index...] # Close one or more tabs
# Page State — always run state first to get element indices
browser-use state # URL, title, clickable elements with indices
browser-use screenshot [path.png] # Screenshot (base64 if no path, --full for full page)
# Interactions — use indices from state
browser-use click <index> # Click element by index
browser-use click <x> <y> # Click at pixel coordinates
browser-use type "text" # Type into focused element
browser-use input <index> "text" # Click element, then type
browser-use keys "Enter" # Send keyboard keys (also "Control+a", etc.)
browser-use select <index> "option" # Select dropdown option
browser-use upload <index> <path> # Upload file to file input
browser-use hover <index> # Hover over element
browser-use dblclick <index> # Double-click element
browser-use rightclick <index> # Right-click element
# Data Extraction
browser-use eval "js code" # Execute JavaScript, return result
browser-use get title # Page title
browser-use get html [--selector "h1"] # Page HTML (or scoped to selector)
browser-use get text <index> # Element text content
browser-use get value <index> # Input/textarea value
browser-use get attributes <index> # Element attributes
browser-use get bbox <index> # Bounding box (x, y, width, height)
# Wait
browser-use wait selector "css" # Wait for element (--state visible|hidden|attached|detached, --timeout ms)
browser-use wait text "text" # Wait for text to appear
# Cookies
browser-use cookies get [--url <url>] # Get cookies (optionally filtered)
browser-use cookies set <name> <value> # Set cookie (--domain, --secure, --http-only, --same-site, --expires)
browser-use cookies clear [--url <url>] # Clear cookies
browser-use cookies export <file> # Export to JSON
browser-use cookies import <file> # Import from JSON
# Session
browser-use close # Close browser and stop daemon
browser-use sessions # List active sessions
browser-use close --all # Close all sessions
CDP、デバイスのエミュレーション、タブのアクティブ化など、高度なブラウザー制御については、references/cdp-python.md を参照してください。
Cloud API
browser-use cloud connect # Provision cloud browser and connect (zero-config)
browser-use cloud login <api-key> # Save API key (or set BROWSER_USE_API_KEY)
browser-use cloud logout # Remove API key
browser-use cloud v2 GET /browsers # REST passthrough (v2 or v3)
browser-use cloud v2 POST /tasks '{"task":"...","url":"..."}'
browser-use cloud v2 poll <task-id> # Poll task until done
browser-use cloud v2 --help # Show API endpoints
cloud connect は永続プロファイル(初回使用時に自動作成)を備えたクラウドブラウザーをプロビジョニングし、CDP 経由で接続して、アクセス可能な URL を表示します。browser-use close は接続を切断し、クラウドブラウザーも停止します。プロキシ、タイムアウト、特定のプロファイルなど、カスタムブラウザー設定を使用するには、希望するパラメーターを指定して cloud v2 POST /browsers を直接使用してください。
エージェントの自己登録
API キーをまだ持っていない場合にのみ使用してください(browser-use doctor を実行すると、api_key が設定されているか確認できます)。すでにログイン済みの場合は、すべてスキップしてください。
browser-use cloud signup— チャレンジを取得します- チャレンジを解きます
browser-use cloud signup --verify <challenge-id> <answer>— 検証して API キーを保存しますbrowser-use cloud signup --claim— 人間がアカウントを申請するための URL を生成します
トンネル
browser-use tunnel <port> # Start Cloudflare tunnel (idempotent)
browser-use tunnel list # Show active tunnels
browser-use tunnel stop <port> # Stop tunnel
browser-use tunnel stop --all # Stop all tunnels
プロファイル管理
browser-use profile list # List detected browsers and profiles
browser-use profile sync --all # Sync profiles to cloud
browser-use profile update # Download/update profile-use binary
コマンドの連結
コマンドは && で連結できます。ブラウザーはデーモンを介して状態が保持されるため、連結しても安全かつ効率的です。
browser-use open https://example.com && browser-use state
browser-use input 5 "[email protected]" && browser-use input 6 "password" && browser-use click 7
途中の出力が不要な場合はコマンドを連結してください。インデックスを見つけるために state を解析する必要がある場合は、コマンドを個別に実行してください。
よくあるワークフロー
認証が必要なブラウジング
認証が必要なサイト(Gmail、GitHub、社内ツール)を利用するタスクでは、Chrome プロファイルを使用してください。
browser-use profile list # Check available profiles
# Ask the user which profile to use, then:
browser-use --profile "Default" open https://github.com # Already logged in
ローカル開発サーバーの公開
browser-use tunnel 3000 # → https://abc.trycloudflare.com
browser-use open https://abc.trycloudflare.com # Browse the tunnel
複数のブラウザー
サブエージェントのワークフローや複数のブラウザーを並行して実行する場合は、--session NAME を使用してください。各セッションには専用のブラウザーが割り当てられます。references/multi-session.md を参照してください。
設定
browser-use config list # Show all config values
browser-use config set cloud_connect_proxy jp # Set a value
browser-use config get cloud_connect_proxy # Get a value
browser-use config unset cloud_connect_timeout # Remove a value
browser-use doctor # Shows config + diagnostics
browser-use setup # Interactive post-install setup
設定は ~/.browser-use/config.json に保存されます。
グローバルオプション
| オプション | 説明 |
|---|---|
--headed | ブラウザーウィンドウを表示します |
--profile [NAME] | 実際の Chrome を使用します(引数なしの --profile は「Default」を使用します) |
--cdp-url <url> | CDP URL(http:// または ws://)経由で接続します |
--session NAME | 名前付きセッションを対象にします(デフォルト:「default」) |
--json | JSON として出力します |
--mcp | stdin/stdout 経由で MCP サーバーとして実行します |
ヒント
- 使用可能な要素とそのインデックスを確認するため、必ず最初に
stateを実行してください - ブラウザーの動作を確認するには、デバッグ時に
--headedを使用してください - セッションは保持されます — コマンド間もブラウザーは開いたままです
- CLI の別名:
bu、browser、browseruseも使用できます - コマンドに失敗した場合は、まず
browser-use closeを実行してから再試行してください
トラブルシューティング
- ブラウザーが起動しませんか?
browser-use closeを実行してから、browser-use --headed open <url>を実行してください - 要素が見つかりませんか?
browser-use scroll downを実行してから、browser-use stateを実行してください - 診断を実行:
browser-use doctor
クリーンアップ
browser-use close # Close browser session
browser-use tunnel stop --all # Stop tunnels (if any)