Automation & Ops browser-automationweb-scrapingdata-extractionx-sqlchrome-devtools-protocolrust-cli

Browser4 Agentic Browser

A browser automation CLI for interactive workflows, web crawling, and structured page extraction.

FollowAgents review · FARS-2.0
Not yet reviewed
See the full review method →

What does this agent do, and when should you use it?

Browser4 is a browser automation and web-data processing project centered on the browser4-cli command-line interface. Its documented architecture combines a Rust CLI, the Kotlin/Spring browser4-rest backend, a Chrome DevTools Protocol browser driver, and browser4-agentic tooling connected through MCP over HTTP. It supports live page interaction through accessibility-tree element references, alongside stored HTML snapshots for CSS-selector and X-SQL extraction. Crawl, swarm, loop, and batch commands cover larger or recurring jobs, while screenshots, PDFs, HTML exports, and browser-state operations provide outputs and persistence. The CLI can be installed with npm, or the project can be built from source into a unified Browser4.jar launcher.

browser4-cli open or goto opens or reconnects a browser session. snapshot exposes interactive page elements as references such as e15, which commands including click, fill, type, press, select, and wait can use to operate the page. For extraction, htmlsnapshot capture stores the DOM; htmlsnapshot get, htmlsnapshot inspect, and htmlsnapshot query --sql @query.sql read text, attributes, or correlated records from that snapshot, while extract and summarize require an LLM provider key. crawl processes a URL or seed file, and swarm create enables parallel submission or X-SQL query work that is retrieved with status and result commands. The CLI also creates screenshots, PDFs, and exported HTML, persists cookies and localStorage, and calls the backend through MCP over HTTP.

  1. A QA engineer validating a logged-in form flow can inspect snapshot references, fill fields, click controls, and wait for a success message or network-idle state.
  2. A data analyst extracting title, price, and URL from each search-result card can capture an HTML snapshot and query correlated fields with X-SQL.
  3. A scraping engineer with a file of known URLs can create a swarm and run the same SQL extraction across pages in parallel.
  4. A researcher collecting pages reachable from a starting site can configure crawl with a depth and an outgoing-link selector.
  5. An operations user monitoring a page or health endpoint on a schedule can use loop to repeat a browser task or shell command.

What are this agent's strengths and limitations?

Pros
  • It deliberately separates accessibility-tree references for interaction from stored HTML snapshots and X-SQL for repeatable DOM extraction after dynamic page work.
  • The Rust CLI, Kotlin/Spring backend, and CDP driver have documented boundaries and communicate through MCP over HTTP.
  • crawl, swarm, batch, loop, and named sessions span single-page interaction, bulk crawling, parallel jobs, and recurring execution.
  • It includes cookie and storage controls plus HTML, screenshot, and PDF outputs for stateful automation workflows.
Limitations
  • AI-powered extract, summarize, chat, agent run, and X-SQL llm_* functions depend on external LLM provider credentials.
  • Source builds have several prerequisites: JDK, Chrome/Chromium, PowerShell 7 in the documented Linux/macOS prerequisites, and Rust for the CLI build.
  • The CLI persists session state, cookies, and localStorage, so adopters need their own approach to credential and local-state handling.
  • The documented command set does not establish a general guarantee for anti-bot defenses, CAPTCHAs, or site-specific authorization failures.

How do you install or deploy this agent?

Global CLI installation requires Node.js:

npm install -g browser4-cli
browser4-cli install

Verify the first session with:

browser4-cli open --headed https://browser4.io
browser4-cli snapshot --boxes

AI commands such as extract, summarize, chat, and agent run require a supported provider key. For an OpenAI-compatible provider, configure OPENAI_API_KEY, OPENAI_MODEL_NAME, and OPENAI_BASE_URL. Source builds require Git, JDK 17+ (21+ recommended), and Chrome or Chromium; building the CLI from source also requires a Rust toolchain.

How do you use this agent?

For an interactive flow:

browser4-cli goto https://example.com/login
browser4-cli snapshot -i --boxes
browser4-cli fill e3 "[email protected]"
browser4-cli fill e4 "secret" --submit
browser4-cli wait --load networkidle

For structured extraction, run browser4-cli htmlsnapshot and then browser4-cli htmlsnapshot query --sql @query.sql. Process a URL list with browser4-cli crawl --seed-file urls.txt --depth 0 --sql @query.sql, or create a swarm first when parallel processing is needed.

How does this agent compare with similar options?

WebMiner is presented as a complementary path: Browser4 can acquire individual or bulk HTML pages, while WebMiner clusters downloaded HTML locally to create interactive reports and Excel spreadsheets without LLM-token use. Browser4 covers browser interaction and acquisition; WebMiner emphasizes offline HTML batch processing.

FAQ

Which features require an LLM key?
extract, summarize, chat, agent run, and X-SQL llm_* functions require one. Snapshot-based interaction, HTML snapshots, and ordinary X-SQL extraction are not documented as requiring an LLM.
Can it work with authenticated websites?
The CLI provides open, attach, state-save, state-load, and cookie/storage commands for session workflows. It does not guarantee handling of site-specific authentication policies, CAPTCHAs, or access restrictions.
How should I process many URLs?
Use crawl --seed-file for known URL lists. For parallel work, run swarm create and then submit or query jobs with swarm commands.
Is there a no-token route for structuring downloaded pages?
The README describes WebMiner as a local ML workflow that clusters downloaded HTML and produces reports and Excel files without LLM tokens. Browser4's AI commands still require the relevant provider key.

Related agents