JevStyle Browser Agent · Preview

A goal. A browser.
One decision at a time.

JevStyle scores each next action and page element. Choose JevStyle-only decisions or a local generative model that reviews every step, then inspect what the browser actually did.

Measured optimization · separate live runs

Skip review when the page has changed

Verified flight search

485.193 s → 323.359 s: 33.35% less elapsed time in these two runs.

Both used the same Zürich to London goal, February 1, 2027 departure date and local 27B model. The new run passed all nine checks with 21 JevStyle scoring calls, 8 observations discarded before review, 13 reviews and 13 executed actions. Every executed action was reviewed.

Most earlier time was spent processing the 27B reviewer’s prompts. The runtime now checks for page changes after JevStyle scoring and can skip an already outdated review. Consecutive skips are bounded; target freshness and occlusion checks still run before input.

Decision-loop componentEarlier runOptimized run
JevStyle scoring50.778 s42.656 s
27B review424.502 s270.622 s
Field text5.221 s4.565 s
Browser and other loop work4.692 s5.516 s

The later run used AC power with Low Power Mode still reported on; power state was not recorded for the earlier run. Browser/network conditions and caches were live. This is not a controlled speedup estimate and does not compare directly with the upstream 7.1-second system, which used different model services without per-step 27B review.

Timing and provenance ↓ · Optimized flight report ↓

Verified results from the optimized Zürich to London flight search

Actual final snapshot, captured after the loop during independent verification. No flight was selected or booked.

Earlier 485-second flight capture

Historical browser snapshots · 485-second baseline

Earlier Zürich to London run

Still frames

485.193 seconds in the decision loop, 23 JevStyle scoring calls, 23 generative reviews and 13 executed actions. Reviewer: qwen3.8-27b-uncensored-q4_k_m. All nine flight checks passed. No flight was selected or booked. These are discrete recorded snapshots, not continuous video.

Flight capture report ↓
Actual Google Flights results from the independently verified Zürich to London one-way search

The final frame was captured during independent verification after the loop; it has no invented exact frame timestamp.

Earlier 4B hotel capture

Actual browser snapshots

A hotel search, step by step

Still frames

A separate verified run of the synthetic hotel fixture: 20.54 s, 7 JevStyle scoring calls and 7 local reviews. Reviewer: qwen3:4b-instruct-2507-q4_K_M. These are snapshots after individual actions, not continuous video. Its timing is separate from the suite below.

Capture report ↓
Actual browser snapshot of the synthetic hotel fixture; the verified Casa Flora result is open

Inspect the evidence

Follow every choice

Recorded replay

These are saved runs, not a live connection to your browser. Playback pauses between decisions for inspection; reported timings are from the original run.

8 named scenarios passed across 2 separate release-validation batches using identical executable source. This is not one timed suite. Batches: 27B optimized flight check; 27B optimized seven-scenario regression. The flight task stopped before selecting or booking.

27B reviewed eight-scenario release8 / 8 independently verifiedJevStyle scoring + review of every decisionReviewer: qwen3.8-27b-uncensored-q4_k_m
27B optimized flight check1 / 1 independently verifiedEvery executed action reviewed; changed observations may skip reviewReviewer: qwen3.8-27b-uncensored-q4_k_m
27B optimized seven-scenario regression7 / 7 independently verifiedEvery executed action reviewed; changed observations may skip reviewReviewer: qwen3.8-27b-uncensored-q4_k_m

These are successive development runs, with changes to prompts and stopping policies. The counts are observed outcomes, not a controlled comparison of model accuracy.

Loading recorded runs…

No step selected—

Executed action

—

Run traces will appear here.

JevStyle operation scores

JevStyle target scores

Run records and measurement scope

Completion is checked separately from the agent's DONE decision. Runs marked “Independent verifier” are stopped when deterministic task checks pass; the model need not choose DONE. A reviewed or hybrid result includes the generative model and must not be interpreted as JevStyle-only accuracy. A successful fixture run shows one controlled task; it does not establish reliability across arbitrary websites. Failed and blocked runs remain visible.

See the report's timing scope for setup and verification boundaries. These measurements are not a direct comparison with the upstream 7.1-second video.

ScenarioAttemptResultElapsed
Find a hotel27B optimized seven-scenario regressionpassed63.08 s
Open a research article27B optimized seven-scenario regressionpassed7.08 s
Search and filter a catalog27B optimized seven-scenario regressionpassed74.27 s
Submit a synthetic support request27B optimized seven-scenario regressionpassed69.98 s
Navigate and scroll a guide27B optimized seven-scenario regressionpassed17.06 s
Select an asynchronous suggestion27B optimized seven-scenario regressionpassed22.69 s
Find a Wikipedia article27B optimized seven-scenario regressionpassed67.59 s
Find a hotel27B reviewed eight-scenario releasepassed57.79 s
Open a research article27B reviewed eight-scenario releasepassed6.49 s
Search and filter a catalog27B reviewed eight-scenario releasepassed67.53 s
Submit a synthetic support request27B reviewed eight-scenario releasepassed62.54 s
Navigate and scroll a guide27B reviewed eight-scenario releasepassed14.98 s
Select an asynchronous suggestion27B reviewed eight-scenario releasepassed24.96 s
Find a Wikipedia article27B reviewed eight-scenario releasepassed74.15 s
Search future flights27B reviewed eight-scenario releasepassed485.19 s
Open a research articleModel-only stopping pilotfailed31.43 s
Navigate and scroll a guideModel-only stopping pilotfailed22.85 s
Open a research articleVerifier stopping pilotpassed2.16 s
Navigate and scroll a guideVerifier stopping pilotpassed1.43 s
Find a hotelJevStyle-only full suitefailed4.55 s
Open a research articleJevStyle-only full suitepassed2.17 s
Search and filter a catalogJevStyle-only full suitefailed56.14 s
Submit a synthetic support requestJevStyle-only full suitefailed1.93 s
Navigate and scroll a guideJevStyle-only full suitepassed1.45 s
Select an asynchronous suggestionJevStyle-only full suitepassed4.06 s
Find a Wikipedia articleJevStyle-only full suitepassed12.07 s
Search future flightsJevStyle-only full suitefailed50.78 s
Find a hotelJevStyle feedback attemptfailed74.07 s
Search and filter a catalogJevStyle feedback attemptfailed54.10 s
Submit a synthetic support requestJevStyle feedback attemptblocked9.18 s
Search future flightsJevStyle feedback attemptfailed74.73 s
Find a hotelJevStyle completion gating attemptfailed46.36 s
Search and filter a catalogJevStyle completion gating attemptfailed51.89 s
Find a hotelConditional recovery attemptfailed47.00 s
Open a research articleConditional recovery attemptpassed3.04 s
Search and filter a catalogConditional recovery attemptfailed152.75 s
Submit a synthetic support requestConditional recovery attemptfailed78.84 s
Navigate and scroll a guideConditional recovery attemptpassed3.08 s
Select an asynchronous suggestionConditional recovery attemptpassed3.50 s
Find a Wikipedia articleConditional recovery attemptpassed25.25 s
Find a hotelEarly per-step review attemptpassed26.12 s
Open a research articleEarly per-step review attemptpassed2.67 s
Search and filter a catalogEarly per-step review attemptfailed114.29 s
Submit a synthetic support requestEarly per-step review attemptpassed36.73 s
Navigate and scroll a guideEarly per-step review attemptpassed6.78 s
Select an asynchronous suggestionEarly per-step review attemptblocked20.56 s
Find a Wikipedia articleEarly per-step review attemptpassed24.13 s
Search future flightsEarly per-step review attemptfailed110.48 s
Search and filter a catalogNo-op filtering attemptpassed50.69 s
Select an asynchronous suggestionNo-op filtering attemptpassed15.13 s
Search future flightsNo-op filtering attemptfailed178.15 s
Search future flightsFlight review attempt 7failed56.81 s
Search future flightsFlight constrained-action attempt 8failed81.03 s
Find a hotel4B reviewed seven-scenario releasepassed18.77 s
Open a research article4B reviewed seven-scenario releasepassed1.71 s
Search and filter a catalog4B reviewed seven-scenario releasepassed83.37 s
Submit a synthetic support request4B reviewed seven-scenario releasepassed16.32 s
Navigate and scroll a guide4B reviewed seven-scenario releasepassed3.61 s
Select an asynchronous suggestion4B reviewed seven-scenario releasepassed6.66 s
Find a Wikipedia article4B reviewed seven-scenario releasepassed19.62 s
Search future flights27B flight attempt 10failed303.49 s
Search future flights27B optimized flight checkpassed323.36 s

Download the published run report

Published development batches and rechecks

Interrupted batches without a completed outcome are retained without assigning them a success score. The interrupted r13 flight attempt and its later corrected-verifier recheck are separate records; the recheck is not counted as a completed run. The short-ID speed experiment was interrupted after an incorrect trajectory; its code was withdrawn and it is not counted as a successful outcome.

BatchBatch statusRecorded outcomes
Model-only stopping pilotEarlier report2
Verifier stopping pilotEarlier report2
JevStyle-only full suiteEarlier report8
JevStyle feedback attemptEarlier report4
JevStyle completion gating attemptEarlier report2
Conditional recovery attemptinterrupted7
Early per-step review attemptcompleted8
No-op filtering attemptcompleted3
Flight review attempt 7completed1
Flight constrained-action attempt 8completed1
4B reviewed seven-scenario releasecompleted7
27B flight attempt 10completed1
27B interrupted flight attempt 11interrupted0
27B interrupted flight attempt 12interrupted0
27B interrupted flight attempt 13interrupted0
27B reviewed eight-scenario releasecompleted8
Short-ID speed diagnostic (withdrawn)interrupted0
27B optimized flight checkcompleted1
27B optimized seven-scenario regressioncompleted7

Interrupted 27B flight attempt 13: corrected-verifier recheck

How it works

Small choices.
Visible actions.

  1. Observe

    Read visible controls and assign each supported element an index.

  2. Decide

    JevStyle scores the next operation and compatible targets in one request. The reviewed configuration asks the selected local generative model to review each action. If the page changed during scoring, the new runtime can discard that observation before review; it still checks the chosen target immediately before input. Each run identifies the model actually called. Conditional recovery is also available as a separate setting.

  3. Act and check

    Execute the selected action. A separate text model supplies field values when needed. Read the updated page before continuing.

Your machine, your browser

Run the agent yourself

Use Python 3.12+, uv, and Chrome. The reviewed releases use jev-style-2b-decision-v4 for scores and qwen3.8-27b-uncensored-q4_k_m for per-step review and required field text. Earlier runs keep their own model identities and settings.

Browser runtime adapted from Browser Use under the MIT license. The download includes the original LICENSE and the attribution NOTICE.

unzip jevstyle-browser.zip
cd jevstyle-browser
uv sync
cp .env.example .env
# Start JevStyle separately: jev-style serve --release 2b
# Start your local generative model server and configure .env.
uv run jev

Open http://127.0.0.1:8766 for the live local inspector. Credentials stay in your local configuration. With a hosted model, page observations needed for decisions are sent to that provider. A local decision model runs on your machine; text and review follow their configured provider.

Reproduce the reviewed configuration

The download defaults to review off, preserving the JevStyle-only baseline. The following are the tested overrides for the existing local 27B server. Change the loopback endpoint to match your own server; the model alias must match its /v1/models response.

JEVSTYLE_BASE_URL=http://127.0.0.1:8765
JEVSTYLE_MODEL=jev-style-2b-decision-v4
TEXT_MODEL_BASE_URL=http://127.0.0.1:18768/v1
TEXT_MODEL_API_KEY=local
TEXT_MODEL=qwen3.8-27b-uncensored-q4_k_m
TEXT_MODEL_REASONING=none
JEVSTYLE_FALLBACK=1
JEVSTYLE_FALLBACK_THRESHOLD=1
JEVSTYLE_FALLBACK_FORMAT=action_enum
JEVSTYLE_HTTP_TIMEOUT_SECONDS=120

With these values in .env, run:

uv run --env-file .env python scripts/run_scenarios.py --max-seconds 1200 --record-frames --output artifacts/reviewed-eight

The scope is six synthetic fixtures, Wikipedia and Google Flights. The flight scenario searches matching options and stops before selecting or booking. Generative review is part of the measured system. The historical full suite passed 8/8; newer release checks identify their separate batches below. These are not JevStyle-only results or a claim of arbitrary website reliability.

The historical 4B seven-scenario release used qwen3:4b-instruct-2507-q4_K_M through Ollama, json_schema review and a 300-second task budget. Its flight attempts failed. Those records remain visible rather than being relabeled as 27B results.

Review at threshold 0.45 is a separate conditional-recovery configuration. All displayed probabilities come from JevStyle, including when a reviewer selects a different action. See the downloaded README for input budgets and uv run python scripts/run_scenarios.py --help for options. You can open its exported runs.json above; local report files are not uploaded.

JevStyle is independently maintained and is not affiliated with TypeSafe or Browser Use.