Spreadsheets
A working spreadsheet: an editable grid with a formula bar, live formulas, a chart and CSV export.
What you get
A grid you edit like a real sheet — arrow keys, Tab, Enter, F2, Escape, Delete, copy and paste, type to edit — with a formula bar. Formulas support cell references and ranges, arithmetic with brackets, percentages and powers, and SUM, AVERAGE, MIN, MAX, COUNT, COUNTA, IF, ROUND, ABS and & to join text. Dependent cells recompute as you type, errors show as #ERR and circular references as #CIRC.
It is seeded with realistic figures, formatted as numbers, currency and percentages, with a live chart.
How it is made · 7 stages
Built on the Sandbox engine. These are the stages it runs, in order — the same list the builder shows live while it works.
- 1GenerateAI call
One forced tool call returns a self-contained HTML document (inline CSS and JS, no external resources).
- 2Plan checksCode· Spreadsheets only.
Derives the checks from the same prompt the build was briefed with, so the test exercises the rules that were actually asked for rather than a generic guess.
- 3Browser testBrowser· Spreadsheets only.
Opens the document in a headless browser and drives it — types into cells and reads the results back, because a sheet with hardcoded totals is pixel-identical to one that recalculates.
- 4RepairAI call· Only when the browser test found a failure.
One more pass, briefed with the exact checks that failed.
- 5Re-testBrowser· Only after a repair.
Runs the same checks against the repair, to find out whether it helped.
- 6Keep or discardCode· Only after a repair.
Keeps the repair only if it fixed more than it broke. A second opinion that scores worse is a regression, and shipping it would be worse than shipping the original.
- 7SandboxCode
Renders into a sandbox="allow-scripts" iframe with an opaque origin — no cookies, no same-origin, no reach into our APIs.
After it is built
- Download the sheet as CSV.
- Share the link; the sheet works in the browser.
Limits worth knowing
Changes you make in a shared sheet stay in that browser tab — it is a working model, not a shared, saved spreadsheet.