browser-use CLAUDE.md

A set of instructions for working on the browser-use Python library with Claude Code. It describes the library's main parts and how they work together to control browsers through Chrome DevTools Protocol, a standard way to communicate with Chrome.

In plain words
What is it for?
It helps with changes to agents, browser sessions, browser actions, page and HTML processing, and connections to language models.
Why use it?
It gives an agent the architectural context needed to change the right component and follow the project's event-driven design. It reduces the risk of changes that conflict with browser sessions, tools, or page processing.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/browser-use/browser-use/claude-md
Clone the repo
git clone --depth 1 https://github.com/browser-use/browser-use
Per session 2,495 This file is loaded in full into every session.
When invoked 2,495 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.02495 $0.02495
Opus 5 $0.01247 $0.01247
Sonnet 5 $0.00499 $0.00499
Haiku 4.5 $0.00249 $0.00249

Measured 2d ago against content hash 8d6a85903545, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

browser-use CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

CLAUDE.md · 164 lines

How it starts

The opening of the file, as written. The whole thing — 164 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Browser-Use is an async python >= 3.11 library that implements AI browser driver abilities using LLMs + CDP (Chrome DevTools Protocol). The core architecture enables AI agents to autonomously navigate web pages, interact with elements, and complete complex tasks by processing HTML and making LLM-driven decisions.

High-Level Architecture

The library follows an event-driven architecture with several key components:

Core Components

  • Agent (browser_use/agent/service.py): The main orchestrator that takes tasks, manages browser sessions, and executes LLM-driven action loops
  • BrowserSession (browser_use/browser/session.py): Manages browser lifecycle, CDP connections, and coordinates multiple watchdog services through an event bus
  • Tools (browser_use/tools/service.py): Action registry that maps LLM decisions to browser operations (click, type, scroll, etc.)
  • DomService (browser_use/dom/service.py): Extracts and processes DOM content, handles element highlighting and accessibility tree generation
  • LLM Integration (browser_use/llm/): Abstraction layer supporting OpenAI, Anthropic, Google, Groq, and other providers

Event-Driven Browser Management

BrowserSession uses a bubus event bus to coordinate watchdog services:

  • DownloadsWatchdog: Handles PDF auto-download and file management
  • PopupsWatchdog: Manages JavaScript dialogs and popups
  • SecurityWatchdog: Enforces domain restrictions and security policies
  • DOMWatchdog: Processes DOM snapshots, screenshots, and element highlighting
  • AboutBlankWatchdog: Handles empty page redirects

CDP Integration

Uses cdp-use (https://github.com/browser-use/cdp-use) for typed CDP protocol access. All CDP client management lives in browser_use/browser/session.py.

We want our library APIs to be ergonomic, intuitive, and hard to get wrong.

Development Commands

Read the full file on GitHub · 164 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 164 lines · 2,495 tokens per session scan A 8d6a85903545

Subscribe to this mod's changes

browser-use CLAUDE.md is an instructions file published in the GitHub repository browser-use/browser-use (111,976 stars, last pushed yesterday), licensed MIT. It adds 2,495 tokens to every session, about $0.0125 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.