jev-browser
Playwright plus Jev core behind a typed SDK, persistent CLI and MCP server, with native operations needing no key and verifiable assertions.
Overview
Jev Browser by tontoko combines native Playwright operations with Jev decisions over actual page elements, offered through one core behind a typed TypeScript SDK, a persistent CLI and an MCP server. It positions itself as a replacement for a Playwright MCP or CLI setup and for Stagehand's DOM-grounded act, observe, structured extract and bounded agent workflows. Its tagline is parallel semantic decisions, deterministic Playwright effects and explicit verification provenance.
Native operations and assertions run without any AI key; only the natural-language paths call Jev, through the official TypeSafe SDK by default or any compatible System One endpoint set with a base URL, which never receives the hosted key. The decision backend only chooses among supplied candidates and never generates JavaScript or selectors. It requires Node 22.15+ and a matching playwright-core, ships as release tarballs, has documentation on migration, API, semantic verification and security, a Japanese README, and is Apache-2.0 licensed without hosted services or weights.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which page element matches this natural-language act or observe instruction?(inferred) | — |
| Yes / no | Does this semantic assertion hold on the page?(inferred) | yes · no |
How it works
- Use native Playwright operations directly where possible
- For natural-language steps, collect candidate elements
- Jev chooses among candidates in parallel
- Playwright performs the effect; verification records provenance
Strengths
- Native operations work with no key
- Works with any compatible System One endpoint
- Never generates code or selectors
Caveats
- Installed from release tarballs rather than npm
- Version pinning of playwright-core required
Getting started
`npm install --save-dev ./tontoko-jev-browser-0.16.0.tgz` then `npx jev-browser install chromium`.At a glance
- Type
- MCP server
- Status
- beta
- Language
- TypeScript
- Runtime
- SDK, CLI, MCP server (Playwright)
- Has code
- yes
- Has tests
- yes
- License
- Apache-2.0
Use cases and integrations
How curated lists describe it
Playwright browser automation with Jev decisions through a shared CLI, MCP server and TypeScript SDK.
logicrw/awesome-jev-projectsOne grounded Jev/Playwright core: typed SDK, persistent CLI, and MCP server…
wh000wh000/awesome-jev-liveOne grounded Jev/Playwright core: typed SDK, persistent CLI, and MCP server with native browser operations and deterministic assertions.
hellogumbo/awesome-jevOne core behind a typed SDK, a persistent CLI and an MCP server: native Playwright operations and assertions need no key, and only the natural-language paths call Jev. Japanese.
MrJev/awesome-jev
Frequently asked questions
Do I need a key for everything?
No, native operations and assertions run without any AI key.
Can I use a self-hosted model?
Yes, any compatible System One endpoint via baseURL.
What does it replace?
Playwright MCP/CLI setups and Stagehand-style act, observe and extract.
Related projects
CodexQA browser skill that indexes in-page controls and has Jev pick the operation and target each step, with no screenshots needed.
Agent skillbetaBrowser agent where Jev picks each action from indexed page controls, an LLM plans and reads, and answers cite page quotes.
ProjectbetaPythonGoal-driven browser agent where each step is one Jev choice over the page's controls, then reviews the run for root causes.
AppbetaTypeScriptChinese UI test framework where Jev scores candidate page elements for each step of a natural-language test case.
ProjectbetaPythonCucumber runner where Jev resolves each Gherkin step against the live page and Playwright executes it, so tests need only the .feature file.
ProjectbetaTypeScriptBrowser tests written as user steps: Jev finds each control once, the path is recorded, and replays run without the model.
ProjectbetaTypeScript