Agent-browser is a command-line tool that drives Chrome for AI agents. It is a native Rust binary that talks to a background daemon over the Chrome DevTools Protocol, and its output is compact text rather than JSON so that a page costs fewer context tokens: the project puts a snapshot at roughly 200–400 tokens against 3,000–5,000 for a full DOM.
Interaction is built around refs. The snapshot command returns the page’s accessibility tree with a stable identifier on each element, such as @e1, and later commands act on those identifiers instead of CSS selectors, so no DOM re-query is needed between steps. CSS selectors, text and XPath matching, and semantic locators are also supported.
More than 50 commands cover navigation, clicking, typing, form filling, screenshots and PDF export, JavaScript evaluation, network control, cookies and storage, file uploads, tabs, frames, dialogs, and page diffing. Sessions, profiles, saved authentication state, proxies, and security controls persist across commands for long-running agents, and state files can be encrypted with a generated key. Tab pinning lets two agents share one Chrome instance with a tab each.
The daemon starts on demand and exits after an idle period, which you can tune or disable. Beyond a local Chrome, the CLI can attach to an already-running browser over the DevTools Protocol or a WebSocket URL, and a provider flag routes sessions to cloud browser services for serverless or CI environments. An observability dashboard streams video, traces, and profiling data for every session, and an MCP server exposes the same commands to agents that speak the Model Context Protocol.
Features
- Ref-based interaction: snapshots return an accessibility tree with stable element refs for deterministic clicks and typing
- Compact output: text output is sized for agent context rather than full DOM dumps
- 50+ commands: navigation, forms, screenshots, PDF, network, storage, files, tabs, frames, and debugging
- Batch execution: run several commands from arguments or piped JSON, with a flag to stop on the first error
- Sessions and profiles: named sessions, Chrome profile reuse, persistent profiles, and saved auth state with optional encryption
- Tab pinning: two agents share one Chrome instance, each pinned to its own tab
- Remote and cloud browsers: attach over CDP or a WebSocket URL, or route sessions to a cloud browser provider
- Observability dashboard: video recording, live streaming, request traces, a profiler, and page diffing
- MCP server: exposes the CLI to agents over the Model Context Protocol, plus experimental in-page WebMCP tools
- Coding-agent skill: installs as a skill whose content is served by the installed binary, so instructions match the version
- Natural-language chat: a chat command turns instructions into browser commands through a configured gateway model
- Native binaries: macOS (ARM64, x64), Linux (ARM64, x64), and Windows (x64)
Integrates with
Claude Code
Terminal-based agentic coding tool that reads your codebase and runs tasks through natural-language commands
Codex
Lightweight coding agent that runs in your terminal
Goose
Rust-built local agent with desktop, CLI, and API surfaces, 15+ model providers, and 70+ MCP extensions
OpenCode
Open-source AI coding agent that runs in the terminal, an IDE, or a desktop app
