🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Browser Use 2.0.0 Local

by @wings229

Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with w...

Versionv1.0.0
Downloads401
TERMINAL
clawhub install browser-use-2-0-0-local

πŸ“– About This Skill


name: browser-use description: Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, or extract information from web pages. allowed-tools: Bash(browser-use:*)

Browser Automation with browser-use CLI

The browser-use command provides fast, persistent browser automation. A background daemon keeps the browser open across commands, giving ~50ms latency per call.

Prerequisites

browser-use doctor    # Verify installation

For setup details, see https://github.com/browser-use/browser-use/blob/main/browser_use/skill_cli/README.md

Core Workflow

1. Navigate: browser-use open β€” starts browser if needed 2. Inspect: browser-use state β€” returns clickable elements with indices 3. Interact: use indices from state (browser-use click 5, browser-use input 3 "text") 4. Verify: browser-use state or browser-use screenshot to confirm 5. Repeat: browser stays open between commands 6. Cleanup: browser-use close when done

Browser Modes

browser-use open                          # Default: headless Chromium
browser-use --headed open                 # Visible window
browser-use --profile "Default" open       # Real Chrome with Default profile (existing logins/cookies)
browser-use --profile "Profile 1" open    # Real Chrome with named profile
browser-use --connect open                # Auto-discover running Chrome via CDP
browser-use --cdp-url ws://localhost:9222/... open   # Connect via CDP URL

--connect, --cdp-url, and --profile are mutually exclusive.

Commands

# Navigation
browser-use open                     # 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 switch                   # Switch to tab by index
browser-use close-tab [tab]              # Close tab (current if no index)

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 # Click element by index browser-use click # Click at pixel coordinates browser-use type "text" # Type into focused element browser-use input "text" # Click element, then type browser-use keys "Enter" # Send keyboard keys (also "Control+a", etc.) browser-use select "option" # Select dropdown option browser-use upload # Upload file to file input browser-use hover # Hover over element browser-use dblclick # Double-click element browser-use rightclick # 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 # Element text content browser-use get value # Input/textarea value browser-use get attributes # Element attributes browser-use get bbox # 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 ] # Get cookies (optionally filtered) browser-use cookies set # Set cookie (--domain, --secure, --http-only, --same-site, --expires) browser-use cookies clear [--url ] # Clear cookies browser-use cookies export # Export to JSON browser-use cookies import # Import from JSON

Python β€” persistent session with browser access

browser-use python "code" # Execute Python (variables persist across calls) browser-use python --file script.py # Run file browser-use python --vars # Show defined variables browser-use python --reset # Clear namespace

Session

browser-use close # Close browser and stop daemon browser-use sessions # List active sessions browser-use close --all # Close all sessions

The Python browser object provides: browser.url, browser.title, browser.html, browser.goto(url), browser.back(), browser.click(index), browser.type(text), browser.input(index, text), browser.keys(keys), browser.upload(index, path), browser.screenshot(path), browser.scroll(direction, amount), browser.wait(seconds).

Cloud API

browser-use cloud connect                 # Provision cloud browser and connect
browser-use cloud connect --timeout 120 --proxy-country US  # With options
browser-use cloud login          # 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        # Poll task until done
browser-use cloud v2 --help               # Show API endpoints

cloud connect provisions a cloud browser, connects via CDP, and prints a live URL. browser-use close disconnects AND stops the cloud browser.

Tunnels

browser-use tunnel                  # Start Cloudflare tunnel (idempotent)
browser-use tunnel list                   # Show active tunnels
browser-use tunnel stop             # Stop tunnel
browser-use tunnel stop --all             # Stop all tunnels

Profile Management

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

Command Chaining

Commands can be chained with &&. The browser persists via the daemon, so chaining is safe and efficient.

browser-use open https://example.com && browser-use state
browser-use input 5 "user@example.com" && browser-use input 6 "password" && browser-use click 7

Chain when you don't need intermediate output. Run separately when you need to parse state to discover indices first.

Common Workflows

Authenticated Browsing

When a task requires an authenticated site (Gmail, GitHub, internal tools), use Chrome profiles:

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

Connecting to Existing Chrome

browser-use --connect open https://example.com     # Auto-discovers Chrome's CDP endpoint

Requires Chrome with remote debugging enabled. Falls back to probing ports 9222/9229.

Exposing Local Dev Servers

browser-use tunnel 3000                            # β†’ https://abc.trycloudflare.com
browser-use open https://abc.trycloudflare.com     # Browse the tunnel

Global Options

| Option | Description | |--------|-------------| | --headed | Show browser window | | --profile [NAME] | Use real Chrome (bare --profile uses "Default") | | --connect | Auto-discover running Chrome via CDP | | --cdp-url | Connect via CDP URL (http:// or ws://) | | --session NAME | Target a named session (default: "default") | | --json | Output as JSON | | --mcp | Run as MCP server via stdin/stdout |

Tips

1. Always run state first to see available elements and their indices 2. Use --headed for debugging to see what the browser is doing 3. Sessions persist β€” browser stays open between commands 4. CLI aliases: bu, browser, and browseruse all work

Troubleshooting

  • Browser won't start? browser-use close then browser-use --headed open
  • Element not found? browser-use scroll down then browser-use state
  • Run diagnostics: browser-use doctor
  • Cleanup

    browser-use close                         # Close browser session
    browser-use tunnel stop --all             # Stop tunnels (if any)
    

    βš™οΈ Configuration

    browser-use doctor    # Verify installation
    

    For setup details, see https://github.com/browser-use/browser-use/blob/main/browser_use/skill_cli/README.md

    πŸ“‹ Tips & Best Practices

    1. Always run state first to see available elements and their indices 2. Use --headed for debugging to see what the browser is doing 3. Sessions persist β€” browser stays open between commands 4. CLI aliases: bu, browser, and browseruse all work