OPEN SOURCE · LOCAL FIRST · EXPERIMENTAL ALPHA

Give coding agents
a faster next step.

Small, bounded decisions and browser actions for the agent loops that do real work. A local MCP server. A short list of controls. A clear approval boundary.

Apache-2.0Node.js 20.19+No product telemetry
localhost · browser-demo.html
Playwright screenshot of the local fake-data browser demo page
✓
Resettable demoFake tasks · no account or customer data
DEMO

THE DECISION LOOP

Keep perception and execution
simple. Make the choice explicit.

Inspect a bounded state, select a typed option, validate it, and let ordinary code handle the action.

Browser flow: inspect visible controls, choose a bounded action, approve only when sensitive, then execute and return a deltaArchitecture diagram showing the coding agent, local tools, decision provider, separate user approval gate, result validation, and deterministic execution

BUILT AROUND BROWSER USE

Fast path is the page
the browser already knows.

Read accessible DOM controls before reaching for a screenshot. Keep candidate labels bounded, form values out of the snapshot, and sensitive clicks behind a second call.

01
Inspect visible controls

Get buttons, links, supported text/date fields, and native select options.

02
Choose or select a ref

Use the local model, or tell the agent exactly which control to click.

03
Review the page change

Return the changed excerpt. Ask the user before consequential actions.

How browser actions work →
Short recording of a local Playwright browser interacting with the safe demo page

COMPOSABLE BUILDING BLOCKS

Small tools for the
steps between big prompts.

SMALL, REPRODUCIBLE SMOKE RUNS

Measure first.
Claim only what we can show.

A newer DOM-only MiniWoB integration completed 24/24 selected tasks on Windows CPU with no timeouts. It excludes ascending-numbers and daily-calendar, the two visual-only tasks in the prior 26-task run, so this is not a full-suite score. The bounded harness uses explicit synthetic task instructions, visible table rows, local field-copy and checkbox-batch tools, and keyboard slider controls; it does not act autonomously. Each submit still uses a separate local-only synthetic approval. End-to-end latency including reset was p50 1.665 s / p95 2.598 s; browser action-loop p50 was 323 ms / p95 907 ms; four local semantic calls had p50 191 ms / p95 430 ms. The prior full 26-task run completed 23/26 on Linux, including two visual descriptions without actions and an incomplete table task; the runs differ in task set and host. These CPU samples are not general speed guarantees. A separate 30-case decision fixture scored 7/10 Choice and 5/10 yes/no, with 1.04 Score MAE on a 0–4 scale; its examples are not held out and its estimates remain uncalibrated.

Read the benchmark results →Read the protocol and raw runs →
24/24
Latest DOM integration24 curated DOM tasks · Windows CPU · no timeouts
8/8
Focused browser smoke8 curated tasks · separate Linux CPU run

STANDARD MCP · LOCAL STDIO

Your coding agent.
One consistent tool set.

Use the config guide for your client. Setup snippets show local source paths until the npm package is released.

Browse all client setup guides →

TRY IT ON A PAGE YOU CAN RESET

Start with the local demo.

Use fake data, inspect the visible actions, and see how a small browser choice returns a small result.

Open the demo source ↗