← All open source projects

Browser Use

browser-use/browser-use

Browser Use is a Python tool for browser AI agents: the model gets a browser action space, profile, domain limits, and a task execution loop.

Forks 10,930
Author browser-use
Language Python
License MIT
Synced 2026-06-09

What it is

Browser Use sits at the intersection of browser automation and LLM agents. Instead of asking a model to only write instructions, the developer gives it a task and a browser environment. The agent receives an action space, browser profile, tools, and recovery loops when something goes wrong.

Version 0.13 highlights a beta agent powered by a Rust core and browser harness. That matters: the authors are not only wrapping a browser with Python; they are building a layer meant to fit current models and repeated web actions better.

What is inside and how people use it

The repository contains the Python API, beta API, documentation, examples, browser profile settings, and integrations with different model providers. A cloud product exists separately, but the open agent can also run on your own machines.

First agent

This example shows the minimal Browser Use idea: task, model, browser profile, and the agent run loop.

Language: Python
from browser_use.beta import Agent, BrowserProfile, ChatBrowserUse
import asyncio

async def main():
    agent = Agent(
        task="Open the Browser Use docs and find the quickstart section",
        llm=ChatBrowserUse(),
        browser_profile=BrowserProfile(
            headless=False,
            allowed_domains=["*.github.com"],
        ),
    )
    history = await agent.run()
    print(history.final_result())

asyncio.run(main())

A typical use case is automating a web task that is hard to describe with rigid selector scripts: find data, move through an interface, check a page, fill a form, and collect the result. Domain and profile limits matter because otherwise the agent receives too much access.

Strengths and limitations

The strength is closeness to the real browser. Browser Use is valuable when the task depends on visual interface state, not only HTTP requests.

The limitation is web and model unpredictability: sites change, actions can be wrong, and private data needs strict rules. Critical processes need control, logging, and manual confirmation for dangerous steps.