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.
npx agentmods add instructions/adityasasidhar/browsercontrol/claude-mdgit clone --depth 1 https://github.com/adityasasidhar/browsercontrolWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/adityasasidhar/browsercontrol/claude-md)<a href="https://agentmods.dev/instructions/adityasasidhar/browsercontrol/claude-md"><img src="https://agentmods.dev/badge/instructions/adityasasidhar/browsercontrol/claude-md.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.01432 | $0.01432 |
| Opus 5 | $0.00716 | $0.00716 |
| Sonnet 5 | $0.00286 | $0.00286 |
| Haiku 4.5 | $0.00143 | $0.00143 |
Grade A, and why
browsercontrol 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 5d 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.
How it starts
The opening of the file, as written. The whole thing — 116 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.
Overview
BrowserControl is an MCP (Model Context Protocol) server that gives AI agents
vision-first browser automation via Playwright. Its defining idea is Set of
Marks (SoM): every action returns an annotated screenshot where interactive
elements are overlaid with numbered red boxes, so the agent acts by referring to
an element's number (click(7)) instead of CSS selectors or XPath.
Commands
This project uses uv for all dependency and task management.
uv sync # Install deps (use --all-extras in CI to include dev group)
uv run playwright install chromium # One-time: install the browser engine
uv run pytest # Run all tests
uv run pytest tests/test_navigation.py # Run a single test file
uv run pytest tests/test_navigation.py::TestScroll::test_scroll_down_medium # Single test
uv run pytest --cov=browsercontrol # With coverage
uv run ruff check . # Lint
uv run ruff check . --fix # Lint + autofix
uv run ruff format . # Format (line length 100, double quotes)
uv run mypy browsercontrol/ # Type-check (strict mode)
uv run bandit -c pyproject.toml -r . --exclude ./tests,./.venv # Security scan
uv run pre-commit run --all-files # Run every hook (mirrors the CI lint job)
uv run fastmcp dev browsercontrol/server.py # Run the server in dev mode with inspector
browsercontrol # Run the installed server (also: python -m browsercontrol)
CI (.github/workflows/ci.yml) gates on the lint job first, then runs tests on
Linux/Windows/macOS plus bandit and mypy. Run ruff check, ruff format, and
pytest locally before pushing.
Architecture
The flow is: agent calls an MCP tool → tool drives the Playwright page → a fresh annotated screenshot + element map is captured → both are returned to the agent.
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.
- 5d ago First seen · 116 lines · 1,432 tokens per session scan A 7e08b10f81c1
browsercontrol CLAUDE.md is an instructions file published in the GitHub repository adityasasidhar/browsercontrol (11 stars, last pushed 1mo ago), licensed MIT. It adds 1,432 tokens to every session, about $0.0072 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-31.
Other instructions, from other repositories
obscura AGENTS.md
AGENTS.md instructions for h4ckf0r0day/obscura, covering agents.md, build, rendering and stealth, no rendering, with rustls or stealth and test.
browser-harness CLAUDE.md
Claude Code instructions for browser-use/browser-harness, a project described as: Browser Harness | Self-healing harness that enables LLMs to complete any task.
browser-control AGENTS.md
Instructions for keon/browser-control: Use this project as a tiny browser pipe, not an agent framework.
stealth-browser-mcp AGENTS.md
Instructions for vibheksoni/stealth-browser-mcp, covering agent instructions, start here, recommended proxy services, environment and validation.
actionbook CLAUDE.md
Instructions for actionbook/actionbook, covering claude.md, project overview, architecture, domain model hierarchy and module structure.
flyto-core AGENTS.md
AGENTS.md instructions for flytohub/flyto-core, covering flyto-core agent rules, flyto2 project memory contract, flyto2 frontend quality gate and repo notes.