Tests in plain English, run on every pull request

Scenarios are saved user journeys: a persona, starting conditions, steps, and the outcomes that must hold. Run them from Composal or the CLI, and on each pull request Verify runs the ones your change affects.

Read the docs
Terminal
$

Tests in plain English

Describe a journey the way you would brief a tester: who they are, what to do, and what they should see.

Reviewed like code

Each Scenario is a YAML file with a public schema. Lint it offline in CI, review it in a pull request, and upload in one step.

Only the ones that matter

On each pull request Verify selects the Scenarios your change affects and runs them in parallel. Uncertain coverage stays marked untested.

1

Write Scenarios as files

Download a project’s Scenarios, or have your coding agent write new ones. Lint checks every file against the schema without signing in; a dry-run upload also checks personas and versions. If any file is refused, upload saves nothing.

Terminal
$
2

Verify picks what your change touches

When a pull request opens or updates, Verify waits for a preview of that exact commit and assesses the changed files against your saved Scenarios. It selects the ones it is confident about; uncertain coverage stays explicitly untested.

3

Results land on the pull request

The selected Scenarios run in parallel as one grouped Run. One maintained comment shows the commit, each result, why each Scenario was chosen, and every finding with what was expected and what happened. Fix with agent hands the failures to your coding agent.

4

Run them anytime, watch their health

Select Scenarios in Composal and run them against any environment, or run them from the CLI and wait for the result. Each row keeps a strip of its last 20 runs, Scenario Health charts daily success rates, and every session keeps its recording to replay.

What you get back

The run report

Each grouped Run reports every Scenario’s result with its evidence, in Composal and on the pull request. This is the real run for one of our own pull requests.

What you can do with it

  • Fix with agent

    Hand the failure to Codex, Claude, or Cursor, or copy the prompt. It links the run and the CLI steps to read every result.

  • Retry Verification

    Prepare a new attempt from the same screen, with the same selection, environment, and limits, using the current Scenario definitions.

  • Replay any step

    Choose a step and the recording jumps to it, so you see exactly what the browser saw when an outcome failed.

  • Run them from the CLI

    Run Scenario files as written, without saving them, and wait for the result. Each line reports one Scenario, and the run links back to its page.