High-performance Rust headless browser automation CLI with Node.js fallback for AI agents
by
Seth Rose
Agent Browser is a headless browser automation tool built for AI agents. It exposes a composable CLI to navigate pages, interact with elements, extract structured data, and run JavaScript.
Its core is implemented in Rust for speed, with a Node.js fallback layer for broad compatibility.
Use `agent-browser navigate <url>` to point the browser to any URL.
Use `agent-browser snapshot` to capture the page structure and available elements.
Use snapshot refs to click, type, scroll, and select elements.
Take another snapshot or screenshot to confirm results before continuing.
Open pages and get structured element refs for reliable interaction.
Interact with any element through structured commands.
Run arbitrary JS in page context via `evaluate`.
List, open, switch, and close tabs programmatically.
Capture screenshots at any step in your automation flow.
Pause for time or wait for specific conditions.
High performance with broad compatibility.
Automate repetitive tasks like form submissions and multi-step workflows.
Extract structured data from dynamically rendered pages.
Programmatically fill and submit forms with inputs.
Simulate user interactions via CLI for UI testing.
npx clawhub@latest install agent-browserRun in your terminal, or click the Install button at the top of this page for one-click setup.
No. Agent Browser runs locally and does not require any API key or external service credentials.
Node.js and npm are required. The CLI installs globally via npm and uses a Node.js fallback layer.
Yes. It operates a real browser and can interact with JavaScript-rendered pages via snapshots and refs.
Take a snapshot, then use the provided element refs with commands like click, fill, type, scroll, and select.
agent-browser is a browser automation CLI for AI agents. It uses a fast Rust CLI with a Node.js fallback. Install with `npm install -g agent-browser` and run `agent-browser install` to download Chromium.
Use `agent-browser open <url>`, take a snapshot with `agent-browser snapshot -i` to get refs, then click/fill with refs (e.g. `click @e1`, `fill @e2 "text"`) and re-snapshot after changes.
Yes. agent-browser uses a fast Rust CLI with a Node.js fallback, and npm-based installation requires Node.js.
agent-browser provides native Rust binaries for macOS, Linux, and Windows, with Node.js fallback support across platforms.