browser-use
Make websites accessible for AI agents
Decision gist · record as of 2026-08-14
Yes, if you need to automate web tasks at scale or embed browser control into a Python application. The library is actively maintained, has no known vulnerabilities, and integrates cleanly with popular LLM providers. The main trade-off is a large dependency footprint (36 runtime packages) and the requirement to supply an LLM API key. For one-off tasks, the CLI integration with existing agents (Claude Code, Cursor) may be simpler; for repeatable automation in code, the Python library is the right choice.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python >= 3.11.
- You must provide an LLM API key (Browser Use Cloud, OpenAI, Anthropic, Google, or local via Ollama) in a .env file or environment variable.
- Low friction: pure Python wheel with no compiled dependencies.
License · maintenance · safety
permissive license (permissive) — MIT license (permissive). You can use, modify, and distribute freely in commercial or private projects with minimal restrictions.
last release 2026-07-27 (18 days) · last repo commit 2026-08-13 · 109,125 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 53,079,055 downloads/mo, #555 on PyPI
Alternatives
Verify before relying
pip install browser-use
import asyncio
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()
asyncio.run(main())- Whether the 36 runtime dependencies can be selectively installed (e.g., only anthropic if you only use Claude).
- Performance characteristics and latency for typical web tasks compared to alternatives.
- Whether browser fingerprinting and proxy rotation work equally well with the open-source library vs. the cloud service.
What it is and what it does
Browser Use is a Python library that wraps an AI agent with the ability to control a web browser as if a human were using it. You give the agent a task in natural language—"fill out this job application" or "extract follower data"—and it navigates pages, clicks elements, types text, and reads the DOM to complete the work. It integrates with multiple LLM providers (OpenAI, Anthropic, Google, Groq, Ollama, and Browser Use's own optimized models) and can be used either as a standalone Python library for programmatic automation or as a CLI skill for existing AI agents like Claude Code or Cursor.
The library is built on top of browser-harness and browser-use-sdk, with support for custom tools, authentication via browser profiles, and both local and cloud-hosted browser backends. It's designed for tasks that need to scale—running many jobs in parallel, embedding browser automation into your own product, or monitoring websites on a schedule—rather than one-off manual browser interactions.
Use it for
- Automate job application filling by extracting resume data and populating web forms at scale.
- Extract structured data from websites (follower lists, product prices, search results) and export as CSV or JSON.
- Run QA tests on web applications by having the agent navigate, interact, and report visual or functional bugs.
- Monitor websites for changes or scrape content on a schedule without writing brittle CSS/XPath selectors.
- Embed browser automation into a SaaS product so users can delegate repetitive web tasks to an AI agent.
- Authenticate and interact with services that require login, using saved browser profiles or temporary credentials.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to automate web tasks at scale or embed browser control into a Python application.
The library is actively maintained, has no known vulnerabilities, and integrates cleanly with popular LLM providers. The main trade-off is a large dependency footprint (36 runtime packages) and the requirement to supply an LLM API key. For one-off tasks, the CLI integration with existing agents (Claude Code, Cursor) may be simpler; for repeatable automation in code, the Python library is the right choice.
Install
browser-use on PyPI
Before you install
Low friction: pure Python wheel with no compiled dependencies. Active maintenance (last commit 2026-08-13, released 2026-07-27). Requires Python 3.11+. Large dependency surface (36 runtime packages including anthropic, openai, google-genai, groq, ollama) means you'll pull in multiple LLM SDKs even if you only use one.
Requires Python >= 3.11. You must provide an LLM API key (Browser Use Cloud, OpenAI, Anthropic, Google, or local via Ollama) in a .env file or environment variable.
License in practice
MIT license (permissive). You can use, modify, and distribute freely in commercial or private projects with minimal restrictions.
Quickstart
pip install browser-use
import asyncio
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()
asyncio.run(main())
Verify before relying
- Whether the 36 runtime dependencies can be selectively installed (e.g., only anthropic if you only use Claude).
- Performance characteristics and latency for typical web tasks compared to alternatives.
- Whether browser fingerprinting and proxy rotation work equally well with the open-source library vs. the cloud service.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release <4.0,>=3.11 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 36 packagesaiohttpanthropicanyiobrowser-harnessbrowser-use-sdkbubuscdp-useclickcloudpicklegoogle-api-coregoogle-api-python-clientgoogle-auth-oauthlibgoogle-authgoogle-genaigroqhttpxinquirerpymarkdownifymcpollamaopenaipillowposthogpsutilpydanticpyobjcpyotppypdfpython-docxpython-dotenv |
| Maintenance | Actively maintained 18 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 53,079,055 / month, #555 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3 |
Evidence: browser_use-0.13.7-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “browser automation for agents”
- browser-useBrowser Use is a Python library that lets AI agents automate web…
- stagehandStagehand is a Python SDK for building browser agents with…
- nova-actA Python SDK for building and running AI agents that automate…
Give your agent the search over MCP, or paste the wish link into any chat.
More Testing packages
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
virtualenv creates isolated Python environments where packages can be installed independently without affecting the system Python or other projects.
Coverage.py measures which lines of Python code are executed during test runs, reporting coverage percentages and identifying untested code paths.
Install it if you want to measure test completeness or enforce coverage thresholds in your project.
pytest-asyncio is a pytest plugin that enables writing and running async test functions using the asyncio library, allowing developers to await code directly within test cases.
Install it if you write tests for any asyncio-based code.
A pytest plugin that generates test reports in Common Test Report Format (CTRF) as JSON, compatible with pytest-xdist and pytest-playwright for distributed and browser-based testing.
Install it if you need CTRF-formatted test output for CI/CD integration or cross-tool reporting.
See also browser-use-core · browser-use-sdk · browser-harness · browsergym-core · nova-act · agentql · mcp-use · workspace-mcp · ai-parrot · headroom-ai