BR

Browser Use

104,000PythonBrowser Automation

Open-source AI-powered web automation framework that enables AI agents to control browsers using natural language - #1 on Odysseys leaderboard.

Browser AutomationAI AgentWeb AutomationNatural LanguageMulti-LLMOpen Source

Overview

Browser Use is an open-source AI-powered web automation framework that enables AI agents to interact with browsers using natural language instructions. With over 104,000 GitHub stars, it has become the leading framework for browser-based agent automation, achieving the #1 position on the Odysseys leaderboard with an 87.4% average performance rate. The framework lets AI agents use a web browser the same way you do - it opens pages, clicks buttons, types, and fills in forms.

Features

  • Natural language browser control without hardcoded selectors
  • Semantic page understanding using vision models
  • Multi-LLM support (OpenAI, Anthropic, Google, Browser Use)
  • CLI skill integration for existing AI agents
  • Python library for custom automation workflows
  • Real browser profile support for authenticated sessions
  • Custom tools via decorator pattern
  • Docker support for containerized deployment
  • Cloud service for production scaling with proxy rotation

Installation

pip install browser-use && browser-use skill install

Pros

  • +#1 on Odysseys leaderboard (87.4% success rate)
  • +Natural language interface, no hardcoded selectors
  • +Multi-LLM support
  • +CLI skill for easy integration
  • +Python library for custom workflows
  • +Docker support
  • +Cloud option for production scaling
  • +Active development with 104k+ stars

Cons

  • Production use requires cloud service for full features
  • CAPTCHA handling limited to cloud tier
  • Browser automation can be memory-intensive
  • Requires API key for LLM provider
  • Some sites may block automated access

Alternatives

Documentation

Browser Use

Overview

Browser Use is an open-source AI-powered web automation framework that enables AI agents to interact with browsers using natural language instructions. With over 104,000 GitHub stars, it has become the leading framework for browser-based agent automation, achieving the #1 position on the Odysseys leaderboard with an 87.4% average performance rate—outperforming computer-use agents from OpenAI, Anthropic, Google, and Microsoft.

The framework lets AI agents "use a web browser the same way you do — it opens pages, clicks buttons, types, and fills in forms." Unlike traditional RPA tools that require rigid selectors and brittle scripts, Browser Use uses AI to understand web pages semantically and interact with them dynamically, making it far more robust for real-world automation tasks.

Built in Python, Browser Use offers both a CLI skill for integration with existing AI agents (Claude Code, Codex, Cursor) and a Python library for building custom browser automation workflows. The project supports multiple LLM providers and offers a cloud-hosted option with enhanced stealth capabilities and proxy rotation for production-scale deployments.

Features

  • Natural Language Automation: Control browsers using plain English instructions
  • Semantic Page Understanding: AI understands page elements without hardcoded selectors
  • Multi-LLM Support: OpenAI, Anthropic, Google, and Browser Use's own models
  • CLI Skill Integration: Works with Claude Code, Codex, Cursor, and other agents
  • Python Library: Build custom browser automation workflows in code
  • Real Browser Profiles: Support for authenticated sessions and cookies
  • Custom Tools: Extend agent capabilities with decorator pattern
  • Docker Support: Containerized deployment with fast and standard build options
  • Cloud Service: Production-grade option with memory management and proxy rotation
  • High Performance: #1 on Odysseys leaderboard with 87.4% success rate

Installation

CLI (For Existing AI Agents)

# Install with uv (Python 3.12+)
uv add browser-use

# Or with pip
pip install browser-use

# Register the skill
browser-use skill install

Python Library

# Install the library
uv add browser-use
# or
pip install browser-use

Docker Deployment

# Fast build (development)
docker build -t browser-use:fast -f Dockerfile.fast .

# Standard build (production)
docker build -t browser-use:standard -f Dockerfile.standard .

# Run container
docker run -it --rm -e OPENAI_API_KEY=$OPENAI_API_KEY browser-use:standard

Quick Start

Basic Agent Usage

from browser_use import Agent, ChatBrowserUse

async def main():
    agent = Agent(
        task="Find the number of stars of the browser-use repo",
        llm=ChatBrowserUse(model='openai/gpt-5.5'),
    )
    history = await agent.run()

if __name__ == "__main__":
    import asyncio
    asyncio.run(main())

CLI Usage with Existing Agents

# One-off task
browser-use run "Upload this video to YouTube"

# Complex task with memory
browser-use run "Compare these three laptops and give me a table with prices"

Form Filling Automation

agent = Agent(
    task="Fill in this job application with my resume",
    llm=ChatBrowserUse(model='anthropic/claude-3.5-sonnet'),
    memory=True
)
history = await agent.run()

Core Concepts

Semantic Interaction

Browser Use doesn't rely on CSS selectors or XPath expressions. Instead, the AI agent:

  1. Observes: Renders the page and uses vision models to understand the layout
  2. Plans: Determines the best sequence of actions to achieve the goal
  3. Acts: Clicks, types, scrolls, and interacts with elements
  4. Verifies: Checks that actions succeeded before proceeding

Agent Architecture

agent = Agent(
    task="Your task description",
    llm=ChatBrowserUse(model='openai/gpt-5.5'),
    max_actions=50,
    memory=True,
    screenshot=True
)

Key parameters:

  • task: Natural language description of what to accomplish
  • llm: Language model to use for decision making
  • max_actions: Maximum browser actions before timeout
  • memory: Enable persistent memory across sessions
  • screenshot: Capture screenshots at each step

Custom Tool Creation

from browser_use import tool

@tool
def extract_pricing(page_content: str) -> dict:
    """Extract pricing information from a product page."""
    # Custom extraction logic
    return {"price": "$99", "currency": "USD"}

agent = Agent(
    task="Find the cheapest cloud hosting option",
    llm=ChatBrowserUse(model='openai/gpt-5.5'),
    tools=[extract_pricing]
)

Advanced Features

Multi-Browser Sessions

from browser_use import MultiBrowser

async def main():
    browsers = MultiBrowser(
        count=3,
        task="Research competitor pricing across 3 websites",
        llm=ChatBrowserUse(model='openai/gpt-5.5')
    )
    results = await browsers.run_parallel()

asyncio.run(main())

Authenticated Sessions

agent = Agent(
    task="Check my inbox for new emails",
    llm=ChatBrowserUse(model='anthropic/claude-3.5-sonnet'),
    profile="gmail_session",  # Pre-saved browser profile
    profile_path="~/.browser-use/profiles/"
)

Cloud Deployment

from browser_use import CloudAgent

agent = CloudAgent(
    task="Monitor competitor website for changes",
    api_key="your_cloud_api_key",
    proxy_rotation=True,
    stealth_mode=True
)

Usage Examples

Shopping Automation

User: "Find the best deal on a MacBook Pro"
Agent: Browses Amazon, Best Buy, Apple.com
Agent: Compares prices, availability, and specs
Agent: "Best deal: Amazon at $1,999 with free shipping"

Research Tasks

User: "Research top 5 AI coding tools and create comparison table"
Agent: Searches for tools, visits official sites, extracts pricing
Agent: Creates markdown table with features and pricing

Form Automation

User: "Fill out this job application with my resume"
Agent: Opens application form, extracts info from resume
Agent: Fills all fields, validates before submission

Social Media Management

User: "Post this article to my LinkedIn with a summary"
Agent: Opens LinkedIn, creates post with AI-generated summary
Agent: Adds relevant hashtags, schedules for optimal time

Supported LLM Providers

ProviderModelNotes
OpenAIGPT-5.5, GPT-4oRecommended for complex tasks
AnthropicClaude 3.5 Sonnet, Claude 4Excellent for reasoning
GoogleGemini ProGood for vision tasks
Browser UseBrowser Use ProOptimized for browser automation

Claude Code Integration

  1. Install Browser Use: pip install browser-use
  2. Register skill: browser-use skill install
  3. Restart Claude Code
  4. Use natural language to control browser

Cursor Integration

  1. Install Browser Use CLI
  2. Add to Cursor MCP configuration
  3. Browser automation available in agent conversations

Pros

  • ✅ #1 on Odysseys leaderboard (87.4% success rate)
  • ✅ Natural language interface, no hardcoded selectors
  • ✅ Multi-LLM support (OpenAI, Anthropic, Google, Browser Use)
  • ✅ CLI skill for easy integration with existing agents
  • ✅ Python library for custom workflows
  • ✅ Docker support for containerized deployment
  • ✅ Cloud option for production scaling
  • ✅ Real browser profile support
  • ✅ Active development with 104k+ stars

Cons

  • ❌ Production use requires cloud service for full features
  • ❌ CAPTCHA handling limited to cloud tier
  • ❌ Browser automation can be memory-intensive
  • ❌ Requires API key for LLM provider
  • ❌ Network-dependent operation
  • ❌ Some sites may block automated access

When to Use

Browser Use is ideal for:

  • E-commerce Automation: Shopping, price comparison, order tracking
  • Web Research: Data gathering from multiple websites
  • Form Automation: Job applications, registrations, surveys
  • Social Media: Post scheduling, content management
  • QA Testing: Automated browser-based testing
  • Lead Generation: Extracting contact information
  • Monitoring: Website change detection and alerts
  • Personal Tasks: Email management, calendar updates

Resources