Skip to content
Back to skills

Browser Use

ASecurity

"Use this self-contained Browser Use repo skill for Python agents

  • 247 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 8, 2026
toolspythonrustgobashrailsapiperformance

Works with

  • terminal
  • cli
  • api
  • mcp

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 20 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill browser-use --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Browser Use?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Browser Use
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-browser-use/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-browser-use)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: browser-use
description: "Use this self-contained Browser Use repo skill for Python agents
  that automate websites, browser sessions, custom tools, LLM/provider setup,
  persistent CLI sessions, cloud/sandbox production deployment, MCP, skills, and
  troubleshooting. Prefer ChatBrowserUse by default and route to focused
  sub-skills for implementation details."
disable-model-invocation: true
metadata:
  disco-role: operating
license: MIT
---

# Browser Use Repo Skill

Browser Use is a Python >=3.11 library and CLI for AI agents that control Chromium/CDP browsers, extract page content, call LLMs, and run browser automation locally or in Browser Use Cloud.

Use this root skill as a router. Read only the sub-skill needed for the user's task, then follow its linked references/scripts.

## First Checks

Read `references/repo-provenance.md` before deciding whether this skill matches a current checkout. If the commit, dirty paths, package version, or public entry points differ, refresh this skill from repository evidence.

Install and smoke-check a normal user environment with `uv`:

```bash
uv venv --python 3.11
source .venv/bin/activate
uv pip install "browser-use[cli]"
uvx browser-use install
python - <<'PY'
from browser_use import Agent, Browser, BrowserProfile, ChatBrowserUse, Tools, ActionResult
print('browser-use imports ok')
PY
```

For the Rust-powered beta/native runtime, install the documented native core extra when the platform wheel is available:

```bash
uv pip install "browser-use[core]"
```

Do not replace user-provided model names. When recommending a default for browser automation, prefer `ChatBrowserUse()` because it is optimized for Browser Use tasks.

## Route by User Request

| User request | Read |
| --- | --- |
| Python `Agent(...)`, beta agent, task prompts, `agent.run()`, callbacks, history, initial actions, skills, planning, flash mode, max steps/timeouts | `sub-skills/agent-programming/SKILL.md` |
| `Browser`, `BrowserSession`, `BrowserProfile`, local/real Chrome, CDP URL, cloud browser, proxies, domains, downloads, HAR/video, DOM, screenshots, Actor APIs | `sub-skills/browser-control/SKILL.md` |
| Custom `Tools`/`Controller` actions, default actions, `ActionResult`, parameter injection, file tools, sensitive data, upload/download guardrails | `sub-skills/tools-and-actions/SKILL.md` |
| `ChatBrowserUse`, OpenAI/Google/Anthropic/other providers, structured output, extraction LLMs, fallback models, token/cost tracking | `sub-skills/llm-and-output/SKILL.md` |
| Terminal `browser-use`/`bu` CLI navigation, state/click/type/upload/screenshot, sessions, profiles, cloud connect, tunnels, config, doctor/setup/init | `sub-skills/cli-and-sessions/SKILL.md` |
| `@sandbox`, Browser Use Cloud API, profile sync, MCP server/client, hosted skills, telemetry, Slack/Discord/email/webhook integrations | `sub-skills/production-integrations/SKILL.md` |

## Shared References and Scripts

- Read `references/installation-and-environment.md` for package extras, environment variables, Chromium install, telemetry opt-out, and contributor setup notes.
- Read `references/development-and-troubleshooting.md` for cross-cutting install/import/browser dependency failures and repo-maintainer commands.
- Run `scripts/inspect_browser_use_api.py` to check imports, signatures, package version, and CLI availability in a target Python environment.

## Common Defaults

- Use `ChatBrowserUse()` unless the user already chose another model.
- Load secrets from environment variables or a secret manager, not prompts or committed files.
- Use `Browser(use_cloud=True)` when the user asks how to improve Browser performance in production; it provisions an optimized Browser Use Cloud browser when `BROWSER_USE_API_KEY` is set.
- Add `allowed_domains` when the workflow handles credentials, private data, uploads, or authenticated sessions.
- Use Pydantic v2 models for structured outputs and custom action schemas.
- Use `uv` for development and installation commands.

## Minimal Python Agent

```python
import asyncio
from browser_use import Agent, ChatBrowserUse

async def main():
    agent = Agent(task="Find the top Hacker News story title", llm=ChatBrowserUse())
    history = await agent.run(max_steps=20)
    print(history.final_result())

asyncio.run(main())
```

## Minimal Browser Configuration

```python
from browser_use import Browser

browser = Browser(
    headless=False,
    allowed_domains=["*.example.com"],
)
```

For production performance and stealth:

```python
from browser_use import Browser
browser = Browser(use_cloud=True)
```

## Minimal Custom Tool

```python
from browser_use import ActionResult, BrowserSession, Tools

tools = Tools()

@tools.action("Ask a human for a one-time approval code")
async def ask_code(question: str, browser_session: BrowserSession) -> ActionResult:
    return ActionResult(extracted_content="Human approval required; pause and ask the user.")
```

The injected browser parameter must be named exactly `browser_session` with type `BrowserSession`.

## Minimal CLI Workflow

```bash
browser-use doctor
browser-use open https://example.com
browser-use state
browser-use screenshot page.png
browser-use close
```

Use `--session NAME` for multiple independent browser sessions and `cloud connect` when a cloud browser is required.

## What Not to Do

- Do not point future agents to source checkout examples, tests, docs, or scripts as runtime dependencies; use this skill's bundled references and scripts.
- Do not put API keys, local profile paths, cookies, or cloud profile secrets in code snippets.
- Do not run native examples/tests that need live websites, API keys, accounts, downloads, or browsers unless the user explicitly approves the side effects.
- Do not install broad extras like `[all]` unless the user's task truly needs them.

Files in this skill

  • SKILL.md5.7 KB
  • references/development-and-troubleshooting.md2.5 KB
  • references/installation-and-environment.md2.3 KB
  • references/repo-provenance.md2.8 KB
  • references/repo-routing-metadata.json504 B
  • scripts/inspect_browser_use_api.py2.5 KB
  • sub-skills/agent-programming/SKILL.md10.3 KB
  • sub-skills/agent-programming/references/agent-api.md11.3 KB
  • sub-skills/agent-programming/references/troubleshooting.md8.5 KB
  • sub-skills/agent-programming/references/workflows.md8.9 KB
  • sub-skills/browser-control/SKILL.md7.7 KB
  • sub-skills/browser-control/references/browser-api.md8.8 KB
  • sub-skills/browser-control/references/browser-recipes.md7.1 KB
  • sub-skills/browser-control/references/security-and-dom.md6.6 KB
  • sub-skills/browser-control/references/troubleshooting.md7.2 KB
  • sub-skills/cli-and-sessions/SKILL.md10.3 KB
  • sub-skills/cli-and-sessions/references/cli-reference.md9.8 KB
  • sub-skills/cli-and-sessions/references/session-recipes.md8.8 KB
  • sub-skills/cli-and-sessions/references/troubleshooting.md10.1 KB
  • sub-skills/cli-and-sessions/scripts/cli_smoke.sh2.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.