10:1 Does what shipped still match what was signed off? matched · met
10:2 Sealwrit lays the page you deployed over the Figma frame your designer approved, and names every promise that broke. matched · met
For a front-end engineer on a team with a designer and Figma frames · CLI, CI Action and coding-agent tool, pre-release
Scroll to read. Chapter 02 lets you break this page.
01 · Read
10:3 is the Figma node this sentence came from.
10:3 Every sentence here is a promise. matched · met
10:4 Sealwrit drafts one from every text node in the frame. matched · met
10:5 As you read, it reads with you, and stamps each one. matched · met
02 · Break
10:6 Break one. matched · meteditable · Esc to cancel
10:7 Delete a word from this sentence, or rewrite it. matched · meteditable · Esc to cancel
10:8 It names the promise, verbatim, and CI goes red. matched · meteditable · Esc to cancel
sealwrit.contract.json (this page)
03 · Seal
10:9 A human decides what is promised. matched · met
10:10 Drafted promises are listed, never failed. drafted · not sealededitable · Esc to cancel
10:11 Sealing promotes the ones that match a page you vouch for. drafted · not sealededitable · Esc to cancel
10:12 The MCP server offers no seal or approve, and the CLI records whether a person was present. matched · met
04 · Approve
10:13 When the change was meant, say so. matched · met
10:14 approve records who and why, and the contract moves on. matched · meteditable · Esc to cancel
Nothing to approve. Edit a sentence above first.
05 · Real output
What the CLI prints
Your own page
$ npx sealwrit@<version> init "<figma-frame-url>" --name onboarding --path /onboarding --viewport desktop $ npx sealwrit@<version> seal onboarding --base-url http://localhost:3000 $ npx sealwrit@<version> check onboarding --base-url http://localhost:3000 --intent-json .sealwrit/intent/onboarding/intent.json
init is the only command that calls Figma.
What check printed
$ npx sealwrit@<version> check onboarding --base-url http://localhost:3000
CHANGED — 3 blocking promise(s) broken
1 of 4 design nodes matched or dynamic
Broken promises:
- "Why we ask for calendar access" not found in the delivered page
- "We use your calendar to suggest meeting times that actually work for you." not found in the delivered page
- "Skip for now" not found in the delivered page
Real output from the fixture run, trimmed only at the edges: the command's --intent-json flag, the reason after the first line's count, the location line, and the closing line “commit .sealwrit/history/ to keep this run in digest”. It exits 2 (3 if the page could not be captured), so CI goes red. The CLI captures a real browser; this page only compares text.
06 · Facts
10:15 No server. No telemetry. No Figma token to run a check. matched · met
10:16 Checks run from a committed design snapshot. Files in, files out. matched · met
10:17 It also checks type: size, weight and colour. Never layout, spacing or images. matched · met
Film · 10 seconds
The film
Nothing plays until you press play.