Skip to content

jev-browser-pilot

Python decision layer for browser and desktop automation: code observes, acts and verifies; the model makes one typed choice per step.

ProjectbetaMIT

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

TypeQuestionAnswers
ChoiceWhich candidate action should be taken next?—

How it works

  1. Code observes the browser or desktop surface
  2. Code builds a list of candidate actions with ids
  3. Model picks one candidate with a confidence
  4. 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.

    AppresearchPython
  • Lets coding agents run whole goals in your signed-in Chrome on macOS in background tabs, asking Jev or Claude Haiku only for real choices.

    Projectbeta
  • Computer-use platform (Cua Spaces, Driver, Lume) with CUA-S1 small decision models and a preview jev-use example for bounded actions.

    ProjectbetaPython
  • Local stdio MCP server that executes whole browser and macOS goals with a Jev-driven observe-decide-act loop.

    MCP serverbetaTypeScript
  • Chrome extension port of Jev Ultrafast that drives your current tab, with Jev picking the operation and element each step.

    Browser extensionbetaTypeScript
  • Browser 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