Skip to content

Reverie

Run browser tests from Markdown specs. A decision engine makes each click, a multimodal pilot runs the spec step by step, and you control everything from the terminal.

Starting a spec run and reading its progress from the terminal

Decision engine

Jev, hosted on OpenRouter, makes each click and keystroke from the elements it observes on the page. Local Laya is the offline option. A text model (the escalation model) steps in when the engine is unsure.

Pilot (multimodal)

A multimodal model runs the spec: it sends intents, checks results, marks steps, records findings, reviews screenshots, and speaks short progress updates.

Orchestrator (you or an agent)

Starts sessions and specs, signs in, handles checkpoints such as database or mail proof, and reviews the verdicts.

Guards

Commit buttons such as Save or Delete need an explicit intent, only stated values are typed, and loops or stalls end in a checkpoint. Tokens and codes are masked.

Terminal window
uv run reverie --session demo start --url https://the-internet.herokuapp.com/
uv run reverie --session demo spec examples/specs/demo-controls.md
uv run reverie --session demo pilot
uv run reverie ui # dashboard at http://127.0.0.1:7788/

See Your first run for the full walkthrough.

The dashboard shows suites, tests and runs, the frame for each event, and the event timeline. Replays turn a run into slides with step verdicts and the pilot’s narration.

Run dashboard with the timeline and a frame

Reverie is the agent operation mode of laya-ultrafast as its own project. The browser agent, DOM snapshot and executor come from ipenywis/laya-ultrafast and Browser Use’s jev-ultrafast (MIT). Reverie is MIT licensed.