MASAKA

PORTABLE RUNTIME · APACHE-2.0

the browser runtime
agents can carry.

Jet Browser packages a real WPE WebKit browser, native input, screenshots, and a Rust bridge behind one ordered JSONL boundary. Run it locally, in CI, or as one isolated container per session—without adopting a hosted control plane.

Find Jet Browser on Product Hunt
engine
WPE WebKit 2.54
boundary
JSONL stdin / stdout
deployment
one session / container
jet-browser / standaloneREADY
agent   {"id":"1","action":"navigate",
        "url":"https://example.com"}

jet     {"id":"1","ok":true,
        "url":"https://example.com/"}

agent   {"id":"2","action":"screenshot"}

jet     {"id":"2","ok":true,
        "width":1280,"height":800}

One process boundary. Ordered commands. Machine-readable results.

02 · USE WITH YOUR AGENT

Let your coding agent
verify it.

Paste this single prompt into Codex, Claude Code, or another repository-aware coding agent. It installs the current Jet integration, runs the real standalone check, and reports evidence instead of assuming setup worked.

agent install + verification prompt
Install or upgrade Jet Browser to the latest main for this repository from https://github.com/masakaai/jet-browser. Read README.md and use its Codex marketplace instructions when plugin commands are available; otherwise register .agents/skills/jet-browser/SKILL.md as a repository skill. Confirm Docker and Node.js 24+, run npm run standalone, and report whether browser startup, native input, DOM verification, and PNG capture passed. Do not attach to my daily Chrome profile or start a persistent Chrome daemon. Follow docs/demo.md if setup or verification fails.

direct Codex plugin install
codex plugin marketplace add masakaai/jet-browser --ref main && codex plugin add jet-browser@masaka

Jet is an isolated WPE WebKit runtime, not a connector for an already-running personal Chrome profile. The skill keeps that boundary explicit. inspect the skill ↗

REPRODUCIBLE RUNTIME BENCHMARK · 2026-10-07

measured on
the same host.

Seven measured runs per image after one warm-up. Every counted run verified the title, a DOM marker, JavaScript execution, and a non-empty screenshot before memory was sampled.

method, raw samples & limitations →
Bar chart comparing median browser-ready time and active container memory for Jet Browser, Browser Use, Steel Browser, and Browserless. Jet Browser records the lowest value in both measures.
Scoped result. On this pinned offline fixture, Jet recorded 72.7% lower median ready time than the next-fastest result and 33.2% lower active memory than the next-lowest result. This is not a claim about stealth, public-site compatibility, or agent quality.

SMALL ON PURPOSE

a runtime,
not a platform tax.

01

real page state

Navigate, inspect title and URL, execute bounded page scripts, and capture non-empty PNG screenshots.

02

native input

Pointer, keyboard, scrolling, drag, tabs, and file selection stay explicit instead of hiding uncertain mutations.

03

portable supervision

Standard input and output let a local process, container scheduler, CI job, or agent harness own lifecycle policy.

04

honest boundaries

Jet does not pretend WPE is Chromium CDP. Profiles, billing, live view, identity, and human handoff belong to the embedding app.

ADJACENT PRODUCT STORIES

learn from the layer,
keep the boundary clear.

These products solve different parts of browser automation. Their official stories shaped Jet's operating contract; they are not presented as interchangeable benchmark subjects.

Browser Use

identity, artifacts, and human recovery

Composio's managed-browser story shows why a browser task needs more than click APIs.

official story ↗
Stagehand v4

state near the browser

A thin client and one explicit RPC boundary reduce duplicated remote page state.

official story ↗
Steel

repeatable lifecycle discipline

Stable outputs, evidence, and failure guidance make browser tools usable by an agent harness.

official story ↗
Browserless

execution as its own layer

Model decisions remain replaceable when browser execution is observable and independently operated.

official story ↗

JET BROWSER · BY MASAKA

keep the browser small.
let the agent stay yours.