FAQ
Answers to common questions about browserlane — positioning, scope, and day-to-day use.
Answers to the questions people ask most often about browserlane.
Why not Playwright or Puppeteer?
For many teams, Playwright is the right answer. It is mature, has a large ecosystem, and is the better choice if you want a full testing framework today.
browserlane is a different shape: a local-first WebDriver BiDi engine that humans and AI agents can both drive, delivered as one Rust binary with three surfaces — a CLI, an MCP server, and an agent Skill — and no Node or Python stack to set up. It drives the browser over the W3C-standard protocol, captures evidence on every run, and tracks its specification coverage in public. If you have a stable Playwright setup, there is no reason to throw it away. Reach for browserlane when you want a small single binary that humans and agents can both talk to.
How is this different from Playwright MCP servers?
The difference is the shape and the protocol. browserlane is one binary with both the human CLI and the MCP server running on the same engine:
bl open https://example.com
bl screenshot -o page.pngor point your agent at:
bl mcpMost agent-facing browser tools — including Playwright-based MCP servers — drive Chrome over the Chrome DevTools Protocol (CDP), Chrome's vendor-specific side-channel. browserlane instead speaks WebDriver BiDi, the bidirectional, W3C-standard protocol. Playwright-based servers inherit Playwright's maturity and ecosystem; browserlane is smaller, younger, and focused on being a Rust-native engine for the standard protocol — with a CLI, MCP, and an agent Skill over it, and its spec coverage tracked in public.
Which browser does it support?
Chrome is the supported browser. browserlane drives Chrome for Testing over
WebDriver BiDi — bl install fetches it into a local cache. We would rather be
clear about that than make the scope sound broader than it is. The engine's
Chrome integration is tracked capability-by-capability, with implementation and
verification recorded separately, in the parity matrix.
What is the WebDriver BiDi parity matrix?
The long-term engineering objective is 100% capability parity with the
official WebDriver BiDi specification — every module, every command, every
event. The parity matrix tracks that in public: what the bl
engine implements (and how), what stays internal by design, what the CLI and
MCP expose, what the Skill documents, and what is still missing. Engine parity
and CLI/MCP surface counts are different things — the surfaces are curated
interfaces, not 1:1 mirrors of the spec. See
the status model for how to read it.
What do you mean by "observability and reporting"?
A test is only useful if you can see what happened. browserlane captures that as you go:
- Assertions with real exit codes —
bl expectfails a run with a reason and a non-zero exit, so CI stops where it should. - Structured diffs between steps —
bl diff mapshows what changed on the page (appeared, disappeared, moved), not just a final screenshot. - Recordings —
bl recordbundles screenshots, DOM snapshots, and console and network activity into a replayable artifact, so a failure travels with its evidence.
Everything is captured locally — the evidence lives on disk and in the CLI/MCP output. Nothing leaves your machine.
Why Rust?
Mainly distribution. A single static binary is a great shape for a developer tool — and for an MCP server that an agent needs to launch locally — because there is no language runtime to ship alongside it. Rust also fits the long-running daemon path well: predictable performance, memory safety, and clean cross-platform builds.
Is it production-ready?
browserlane is v0.1 and under active development. It is a great fit for experiments, internal scripts, demos, and agent workflows where you can tolerate the occasional rough edge and report issues. It is not yet positioned as a drop-in replacement for a mature production test stack.
How do I install it?
One line, on macOS or Linux:
curl -fsSL https://browserlane.com/install.sh | shOn Windows (PowerShell):
irm https://browserlane.com/install.ps1 | iexThe installer detects your platform, verifies the download's checksum, installs
the bl binary, and puts it on your PATH. You can also grab a signed,
notarized archive from the
latest release and
put bl on your PATH yourself. See Install for
details.
How do I update?
Re-run the installer — it always fetches the latest release:
curl -fsSL https://browserlane.com/install.sh | shIt overwrites the existing bl in place. Check what you are on with
bl --version.
Which agents can I wire up?
Run bl add-mcp --list to see every supported client. Today that is Claude Code,
Claude Desktop, Cursor, VS Code, and the OpenAI Codex CLI:
bl add-mcp claude # Claude Code
bl add-mcp cursor # Cursor
bl add-mcp --list # show every supported clientbl add-mcp registers the server by absolute path, so it works regardless of
PATH. Add --stdout to print the config snippet instead of writing it. See
Wire up an agent for the full walkthrough.
How do I make repeated commands faster?
You don't have to do anything — Browserlane keeps Chrome warm automatically. The first browser command launches a background process; every later command reuses it and starts in well under a second instead of relaunching the browser:
bl open https://example.com # first command launches the warm background browser
bl title # instant — reuses itThe background process shuts itself down after a period of inactivity. See The warm browser & the visible window for how the lifecycle works.