All docs
Core concepts1 min readUpdated

How visual regression testing works

From CI upload to a green check: how UI Verify renders every component in a real browser, diffs it against its baseline, and has an AI judge triage each change.

UI Verify runs as a single step in your CI. You hand it a built Storybook or a Playwright archive; it does the rest in the cloud and reports back on the pull request. Here is what happens between the upload and the check.

The pipeline

  1. Your CI runs uiverify upload with your built Storybook or Playwright archive.
  2. UI Verify ingests the build and resolves the baseline for each story from its branch history.
  3. A fleet of workers renders every story in a real browser and diffs it against its baseline.
  4. An AI judge reviews each changed story and labels it a likely regression or a likely intended change, with a reason.
  5. A check and a comment land on your PR, with the changes grouped and pre-sorted for review.
A finished UI Verify build showing screenshot counts, an agent-activity panel, and stories grouped into failed, changed, and new.
A build summary: 124 screenshots sorted into new, changed, and failed, each change one click from a full diff.

The review model

Baselines are per branch. A change stays a change until a human, or an agent you authorized, accepts it - and accepting is what sets the new baseline. Nothing updates itself behind your back, which is what keeps a green build trustworthy. See Baselines and branches.

Where it runs

Everything after the upload happens in the cloud. There are no browsers to install in CI, no snapshot images committed to your repo, and no local render farm to babysit. Your pipeline stays one step.

The part that makes the review queue short is the AI judge, which triages every change before you see it.

Visual testing for agents

UI Verify captures your UI on every pull request and an AI judge tells an intended change from a real regression. See how it works.

Get started