Diff two screenshots
Two images in, one verdict out, no model in the loop. diff measures three deterministic distances between a
golden frame and today’s — structure (a 9×8 luma difference hash), colour (an 8×8 RGB signature: the palette
regression a luma hash is blind to), texture (the change in gradient energy: smoothing and ringing) — each against
a threshold, and seals them as a signed record that names both images by hash, never by pixels. The defaults
below are a StarLab render and the same render with red and blue swapped.
A URL is fetched by the API from a public host (no redirects, 4 MB at most); a file you pick travels as base64 and
is never stored — the record keeps its sha256, width, height and byte count. An agent calls
GET https://api.s2ar.dev/v1/diff?a=…&b=…, or the diff_images tool over MCP, and reads the verdict line; the
worked version is Diff two screenshots.