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 skills/mirsella/opencode-browser-mcp/browser-automationnpx skills add mirsella/opencode-browser-mcp --skill browser-automationgit clone --depth 1 https://github.com/mirsella/opencode-browser-mcpWrote 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/skills/mirsella/opencode-browser-mcp/browser-automation)<a href="https://agentmods.dev/skills/mirsella/opencode-browser-mcp/browser-automation"><img src="https://agentmods.dev/badge/skills/mirsella/opencode-browser-mcp/browser-automation.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.00028 | $0.00424 |
| Opus 5 | $0.00014 | $0.00212 |
| Sonnet 5 | $0.00006 | $0.00085 |
| Haiku 4.5 | $0.00003 | $0.00042 |
Grade A, and why
browser-automation 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 3d 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 — 40 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Browser Automation
Use the browser tools when the task requires rendered state, authentication, client-side behavior, layout, accessibility, console output, or network traffic.
OpenCode normally exposes two compact tools:
browser_helplists action names or loads the current schema for one action.browser_dispatchexecutes an action with{ action, arguments }.
For compact browser_dispatch, put every action-specific field inside arguments,
not beside it. For example, use { "action": "navigate_page", "arguments": { "url": "https://example.com" } }.
Common actions include navigate_page, take_snapshot, click, fill_form,
take_screenshot, evaluate_script, list_console_messages, and
list_network_requests. Call browser_help for an action before using it when
its exact arguments are not already clear. Do not guess argument shapes.
Direct browser_* action tools may appear when compact tools are disabled. Use
them directly with the same workflow.
Workflow
- Reuse the current page by default. Use
navigate_pageto change URLs or reload after code or deployment changes. Usenew_pageonly when simultaneous pages are necessary, and close temporary pages when finished. - Navigate, then inspect the page before interacting.
- Use the latest snapshot to identify elements and references. Refresh it after navigation or meaningful DOM changes.
- Perform the smallest interaction needed, then inspect the result.
- Verify consequential actions from visible state or relevant diagnostics.
Use screenshots when visual appearance, responsive layout, rendering, or image output matters. Prefer snapshots for locating elements and understanding page structure.
Inspect console messages for client-side exceptions and warnings. Inspect network requests when diagnosing API failures, redirects, authentication, caching, or unexpected response data.
Do not claim an interaction succeeded solely because a tool call returned without an error; verify its observable result.
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.
- 3d ago First seen · 40 lines · 28 tokens per session scan A cc88fbced56f
browser-automation is a skill published in the GitHub repository mirsella/opencode-browser-mcp (1 stars, last pushed 9d ago), licensed MIT. It adds 28 tokens to every session and 424 once invoked, about $0.0001 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 skills, from other repositories
codex-browser
Control Chrome via Codex Desktop's browser bridge. 52 MCP tools for tabs, navigation, DOM, input, CDP, network, file upload, dialog handling, and diagnostics.
opencode-browser-plugin
Use the provider-neutral browser runtime through its four MCP or OpenCode tools.
aim-browser
Headed Chromium CDP CLI: tabs, navigate, click/type, extract, screenshots, optional captcha hold helper. Use for general page exploration when a one-verb skill is not enough. Not Puppeteer/Playwright.
aim-google-ai
Google Search AI Mode (udm=50) via headed Chromium. Returns answer text and sources as markdown + JSON. Use for AI Mode answers, not classic blue links.
aim-form-fill
Fill form fields on an allowlisted host. Requires --allow-host and --fields. Never submits unless --submit. Redacts password-like values in output.
aim-login-hold
Open a URL and wait for Operator human login or CAPTCHA. Continues when --ready-file is created or URL matches --until-url-includes. Never captures passwords. Window visible by default for this skill.