Philosophy — local-first, bring your own model
TestivAI is built on two convictions about visual regression testing.
1. Detection belongs on your machine
Capture, diff, report, and approve are local operations. Your screenshots and DOM snapshots never need to leave your repo:
- Baselines live in git — versioned, reviewable, no external storage.
- The report is a file —
visual-report/index.htmlis self-contained; share it as a CI artifact, open it anywhere. - The contract is public —
results.jsonis a semver-governed schema (status, diff %, region→selector attribution, DOM/style signals) that any tool can consume. - No account, ever. There is nothing to sign up for.
Local-first isn't a limitation — it's what makes TestivAI usable inside CI sandboxes, air-gapped environments, and AI-agent loops without provisioning a single secret.
2. The AI layer is your AI
Most visual testing tools bundle a hosted AI service to explain diffs.
TestivAI deliberately doesn't. The layered analysis — pixel regions, element
attribution ("div.card:nth-of-type(2) shifted +24px"), whole-page shift
detection, style-only-change detection, the DOM noise hint — is computed
locally and handed to whatever model you already use through the
@testivai/mcp server:
explain_snapshotgives your agent the layered evidence bundle.- The
review-visual-changesprompt turns it into a review narrative. - Claude Code, Cursor, Copilot, or any MCP client — the reasoning quality scales with your model, and nothing is uploaded to us.
The server ships evidence; the client ships intelligence. That split keeps TestivAI free, private, and permanently un-lock-in-able.
What this means practically
| You want | You get |
|---|---|
| Visual regression in CI | The CI gate recipe — commit baselines, gate on testivai report --fail-on-diff |
| PR-based approvals | The GitHub Action — diff comment + /testivai approve |
| AI explanations of diffs | The MCP server + your own agent |
| Fewer false positives | Stable baselines guide — stabilized captures, ignore modes, noise auto-pass |
Everything above is MIT-licensed and works offline. That's the whole product.