Vision-LLMs bill by dimensions, not bytes. starlens shrinks every image you send and seals a per-model certificate that the answer survived — or hands you a certified refusal for free. You pay 20% of the tokens it proves it saved.
s2ar is "star", compressed. We compress things; it's the whole idea.
Your agent gains compress-before-you-send: every screenshot comes back smaller with a sealed certificate that your model still reads it the same. Refusals cost nothing.
claude mcp add stardata \ -e STARLENS_API_KEY=sk-… \ -- uvx stardata-mcp
Works in Codex and any MCP client; pip install stardata-mcp for the CLI (starlens estimate is free + local).
Sign in with a one-time email link — no password. Compress a few images right in the browser, hold the sealed certificate in your hand, then take the same key to the API.
It speaks OpenAI: point a base_url at api.s2ar.dev/v1 and call stardata/starlens like any model.
Every response carries a sealed record: the exact bytes in and out, the witness that measured them, the drift it saw, the tolerance it held, and the model the guarantee names. The seal is a hash of all of it. Anyone can re-verify — free, no account, deterministic down to the seed.
# re-check any seal, yours or ours curl https://api.s2ar.dev/v1/verify/<record_sha256> # → re-runs the witness, recomputes the hash, returns the verdict
Plain RMSE calls a 640×360 render "identical" at 32×18 — because the image is mostly smooth. But the signal a model needs is high-frequency: small text, 1-cell texture, thin edges. starlens compresses against a witness of the reader's content — RMSE for coarse images, OCR for text, gradient-energy for render detail — so the certified band ends where the answer would move, not where the average pixel does. Every band is measured per model and sealed per request; re-verify it from the hash.
Visual-token pruning, merging and resamplers reach 4–16× fewer tokens in the lab — by changing the vision stack itself. Powerful, and out of reach unless you own the weights and the serving path. Against a closed API, none of it applies.
starlens never touches the model. It shrinks what you send — to Anthropic, OpenAI, Google, anyone's billing meter — and proves per request, per model, that the answer held. Model-agnostic, deployable today, honest when it can't help.
Two dials tune every certificate. The witness is chosen by content — RMSE for coarse images, OCR for text, gradient-energy for render detail (the bake-off above). The tolerance is measured per reader: how far recon's band must tighten so it never outruns that model. Below are the models we've measured — strictest tolerance first; the chips are where recon over-certifies each one, so the certificate pulls back.
starlens is a model, not a proxy into your conversation — it sees only the image. Call it, get a smaller image plus a sealed certificate back, then send the small image to your real model every turn. Or self-host the same audited engine.
# one call compresses; every later turn is certified-cheaper client = OpenAI(base_url="https://api.s2ar.dev/v1") r = client.chat.completions.create( model="stardata/starlens", messages=[{"role":"user","content":[ {"type":"image_url","image_url":{"url":data_url}}, {"type":"text","text":"target:claude-sonnet-4-6 probe:auto"}]}]) # → r.choices[0].message.images[0] = the compressed image # → r.choices[0].message.content = the sealed certificate (verify by hash)
Sits on any OpenAI-compatible base URL. Never holds your key or sees your prompt — only the image. Not in your critical path: if it's down you lose the savings, not availability.
Call starlens/claude-sonnet-4-6; it compresses, forwards, returns the real answer, and bills on the tokens it saved. Same certificate, no workflow change.
No per-image fee, no subscription required. Every request returns a sealed certificate measuring the tokens saved at your model's own billing shape; the charge is 20% of that measured saving at the model's published input price — you keep the rest. A certified refusal costs $0. Savings on an expensive frontier reader are worth more than the same pixels on a small open model, automatically — the certificate is the price tag.
Settlement is prepaid credits: buy a pack, credits appear instantly, every request draws down by its certificate-priced charge, and your key plus live balance are always one call away (GET /v1/usage). First image is free — hold a sealed certificate in your hand before paying anything.
Get started free → sign in (one-time email link, no password), compress a few images right in your browser, and grab your API key. Add it to Claude Code / Codex with the MCP, then add credits when you're ready.
Add credits: $5 · $25 · $100 · your key + balance appear right after checkout · price table: GET /v1/models
Our element simulation is seed-deterministic with an exact matter census — so every question about a frame has a machine-checkable answer, no human labels. We compressed the frames until the models broke: the certificate held 100% for its target model at the certified rung, the industry-standard RMSE witness said "isomorphic" all the way down to 32 pixels wide — where accuracy collapses to a coin flip. See the full ladder →
Typical vision-token savings. Measured where we've calibrated; estimated from robustness tiers elsewhere — the list grows every calibration.