MCP server + CLI · MIT

Give your agent a browser goal. Get one checked summary back.

jevway hands the whole goal to Jev, a model built to pick browser actions. Your agent makes one tool call, not a turn per click.

Claude Code · Codex · Cursor · OpenCode · any MCP client

install

Paste into your agent

Set up jevway for me by following https://jevway.escalay.space/setup.md

It checks your machine, registers jevway, and proves it with a recorded test run.

Or run it yourself

npx -y jevway setup

Asks for your key without showing it, and changes nothing without a yes.

Three real runs, three different answers

Left: what your agent sent and heard back. Right: what Jev did in Chrome. Recorded, not staged.

done01 / 03 · en.wikipedia.org

It checks its own work

Check passed: the page says "1799".

needs_confirmation02 / 03 · demoblaze.com

It stops before anything you can’t undo

"Place Order" looks irreversible. Nothing was clicked. Your agent asks you first.

uncertain03 / 03 · en.wikipedia.org

It tells your agent when it isn’t sure

Jev said done, but the check for "330 m" failed. Your agent hears uncertain, not done.

One tool call instead of a turn per click

Driving a browser click by click costs your agent a model turn, a page snapshot and a few seconds per step. jevway hands the whole goal to Jev, a model built to choose browser actions.

01 · your agent

Sends one goal

The goal, the values Jev may type, and any checks the final page must pass.

02 · jevway + Jev

Works the page

Each step, jevway reads the page and Jev picks one control in about 300 ms. jevway acts on it in Chrome.

03 · your agent

Gets one summary

The status, what happened step by step, and the page’s own words as evidence.

Rules it keeps on every run

Code enforces these, not the prompt.

It never invents input

Jev types only the values your agent passed. A missing value comes back as needs_input, naming the field.

It stops before anything irreversible

Pay, send, delete and submit come back as needs_confirmation. One confirmation allows one click, on the named control.

It checks its own success

done needs a separate check on the final page, plus any exact checks you add, with the page’s own words as evidence.

It never types your passwords

Password fields are never listed to the model. Secrets reach Jev only as a marker and are scrubbed from every summary.

The model only picks from a list

Jev’s answer selects a control jevway already found. It never becomes a selector, a script or typed text.

It can show its work

A video of the run, a screenshot before every action, and an HTML page to review it.

Every answer comes with a next step

Your agent never has to guess what happened. Every summary says what to do next.

done

The goal is met and checked on the final page.

Use the summary and its evidence.

needs_input

A field wants a value nobody passed.

Ask the person, add the value, call again.

needs_confirmation

The next click can’t be undone.

Ask the person, then confirm that one click.

uncertain

Jev thinks it’s done, but a check disagrees.

Read the page text and decide.

step_budget

The step or time budget ran out first. The reason says which.

Continue the same session with a narrower goal.

blocked

A sign-in, a bot check, or a site outside the allowed hosts.

Ask the person to pass it, then continue.

Journey maps

Map how a person moves through a site

On a phone-sized screen, jevway records every screen, the taps between them, and QA findings like small tap targets and dead ends. You pick the taps, or let Jev explore.

Screen 1: Home
01 Home
Screen 2: Phone
02 Phone
Screen 3: Laptop
03 Laptop
Screen 4: Form
04 Form
Screen 5: Modal
05 Modal
Screen 6: Checkout
06 Checkout
Screen 7: Sign in
07 Sign in

demoblaze.com: 7 screens, 13 steps, 11 findings, one shareable viewer.

One line, and your agent sets it up

Works with Claude Code, Codex, Cursor, OpenCode and any other MCP client, in your own signed-in Chrome or a throwaway one. MIT licensed. You bring a TypeSafe or OpenRouter key for Jev’s decisions.

install

Paste into your agent

Set up jevway for me by following https://jevway.escalay.space/setup.md

It checks your machine, registers jevway, and proves it with a recorded test run.

Or run it yourself

npx -y jevway setup

Asks for your key without showing it, and changes nothing without a yes.

Scroll effects adapted from madewithgsap.com. Illustrations from getillustrations.com.