Skip to content

jev-systemone-lab

Stdlib Python dispatcher turning typed function signatures into one batched Jev request, with a browser harness against ground truth.

Projectprototype

Overview

jev_demo is a dispatcher skeleton for TypeSafe System One plus a Playwright browser harness. The core maps Python type hints to question shapes (Literal becomes a Choice, list of Literal a set, bool a flag), builds one batched request for a spec and its functions, and returns a typed call. Free-form arguments such as ints, strings and dates never become questions; the function default stands. A no-match option is always added so the model is not forced to pick, and overall confidence is the weakest judgment rather than a product of all judgments.

The browser layer snapshots a live page into a state and an action space of visible, enabled controls tagged with refs, which become the Choice criteria, so the model cannot pick a control that is not on screen. On 12 hard near-miss test rooms with jev-1.13.0, the README reports 11 of 12 correct across scoped, whole-page, Chinese-language and 20-question variants at about 630 ms p50, and notes fan-out to 20 questions cost almost no extra latency. A calibration script checks whether confidence is worth gating on.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich on-screen control (by ref) should be activated, or none?—
ChoiceWhich value of each Literal-typed function argument applies?—

How it works

  1. Snapshot the page into state and a ref-tagged action space
  2. Build one batched request from typed function signatures plus a no-match option
  3. Jev returns choices; weakest judgment sets call confidence
  4. Execute or gate on confidence; compare against ground truth

Strengths

  • Core uses only the standard library
  • Illegal actions cannot be expressed
  • README reports 20 questions cost about the same latency as one
  • Includes stress and calibration scripts

Caveats

  • Small test sets (20 easy, 12 hard rooms)
  • Skeleton rather than a full agent

Getting started

python play_chrome.py -n 10 (headed), python stress.py --set hard, python calib.py

At a glance

Type
Project
Status
prototype
Language
Python
Runtime
CLI / Playwright
Has code
yes
Has tests
yes

Use cases and integrations

How curated lists describe it

Frequently asked questions

How does it avoid invalid actions?

The Choice criteria are refs of controls actually visible on the page, so nothing else can be selected.

What happens to free-text arguments?

They are never asked; Jev only selects closed-set values and defaults stand for the rest.

How accurate was it?

The README reports 11 of 12 on hard near-miss rooms with jev-1.13.0.

Related projects

  • Rust CLI that ranks which agent skills fit the next step from live session context with Jev, can abstain, and hooks into Claude Code.

    CLIbetaRust
  • Open 2B non-autoregressive decision model on Qwen3.5-2B for agent tool routing and DOM actions, with BF16, FP8 and INT8 weights.

    ModelresearchPython
  • Open infrastructure for training, evaluating and deploying System 1 decision models, with calibrated LoRA checkpoints on a 27B backbone.

    ModelresearchPython
  • Open stack to synthesise decision data, train and calibrate a Qwen3.5-0.8B scorer, evaluate on Mind2Web and serve Jev-style.

    ServiceresearchPython
  • RAM-efficient Rust coding-agent harness, listed as using Jev decisions for memory pruning, browser navigation and voice routing.

    ServiceproductionRust
  • MCP server and libraries that drive Chrome over CDP and hand a decision model like Jev a bounded menu of page actions.

    ProjectproductionTypeScript