jev-browser-pilot
Python decision layer for browser and desktop automation: code observes, acts and verifies; the model makes one typed choice per step.
Overview
jev-browser-pilot is a bounded decision layer for browser and desktop automation. Your code observes the surface, builds the list of possible actions, executes one and checks the result; a decision-only model makes exactly one choice per step, selecting which candidate is next and returning a confidence your code routes on. The model never sees a screenshot, writes a selector, produces text to type, or is asked whether it succeeded, so everything that can fail silently stays in code.
The author argues this gives steps that cost a fraction of a cent and take a few hundred milliseconds, plus an audit trail of exactly what the model saw each step. The core's only runtime dependency is websocket-client, using an existing Chrome, Chromium or Edge over CDP; an optional extra adds the TypeSafe Jev provider (Python 3.10+), and an OpenAI-compatible provider and a mock chooser also work on 3.9. Releases are published to PyPI through trusted publishing. It has CI and an MIT licence.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which candidate action should be taken next? | — |
How it works
- Code observes the browser or desktop surface
- Code builds a list of candidate actions with ids
- Model picks one candidate with a confidence
- Code executes and verifies; route on confidence
Strengths
- Minimal dependencies
- Full audit trail of model inputs
- Pluggable providers including a mock for testing
Caveats
- You must implement perception and verification for your surface
- Jev provider needs Python 3.10+
Getting started
`pip install "jev-browser-pilot[jev]"` with TYPESAFE_API_KEY set.At a glance
- Type
- Project
- Status
- beta
- Language
- Python
- Runtime
- library over CDP
- Has code
- yes
- Has tests
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
A bounded decision layer for browser and desktop automation: a decision-only model picks one next step; the code owns perception, content, actuation and verification.
logicrw/awesome-jev-projects
Frequently asked questions
What does the model decide?
Only which candidate action comes next, with a confidence.
Does the model see screenshots?
No, it only sees the candidate list your code builds.
Can I test without an API?
Yes, a mock chooser is included.
Related projects
Reference framework where Jev picks a concrete computer-use action and its execution route from legal, verifiable candidates.
AppresearchPythonLets coding agents run whole goals in your signed-in Chrome on macOS in background tabs, asking Jev or Claude Haiku only for real choices.
ProjectbetaComputer-use platform (Cua Spaces, Driver, Lume) with CUA-S1 small decision models and a preview jev-use example for bounded actions.
ProjectbetaPythonLocal stdio MCP server that executes whole browser and macOS goals with a Jev-driven observe-decide-act loop.
MCP serverbetaTypeScriptChrome extension port of Jev Ultrafast that drives your current tab, with Jev picking the operation and element each step.
Browser extensionbetaTypeScriptBrowser Use's browser agent where Jev picks an operation and page element in one request and a small LLM only writes text to type.
LibrarybetaPython