open-sheet
The spreadsheet framework built for agents — write the model as React, export a live .xlsx. The third medium, after open-slide and open-doc.
What is it?
What it is
A spreadsheet framework for AI agents that eliminates manual A1 cell addresses. Users describe spreadsheets in TSX using coordinate-free references like col('revenue') and r.cell('revenue'), and the framework handles cell placement, formula references, recalculation, and export to live .xlsx files with formulas, defined names, and formatting intact.
Why it exists
Agents fail at spreadsheets because hardcoded addresses like =SUM(B2:B13) break when rows are inserted or headers shift, producing silently wrong results. open-sheet removes addresses entirely, owning all coordinates from data arrays so every reference auto-resolves when data changes, making spreadsheets robust for pipeline-driven outputs.
Who should use it
Engineering teams and AI/agent developers building pipelines that emit spreadsheet outputs (board packs, invoices, financial models regenerated from data), as well as TypeScript/React developers who need version-controllable, code-reviewed spreadsheets with live Excel formulas instead of baked values. Also a fit for organizations that want agents to produce workbooks in a deterministic, auditable way rather than one-off at human speed.
Who should avoid it
Excel power users who want to author or edit a single workbook interactively, analysts who already use Claude for Excel or similar in-Excel assistants and are happy with hand-authored formulas, teams needing the full Excel function surface (500+ functions), pivot tables, or live variance analysis, and anyone unwilling to adopt a pnpm/Turbo monorepo TypeScript toolchain or who needs a stable production release today (project is at 0.1.0, early development).
Stars over time
+1 stars in the last 1 day
How it works
A quick walkthrough in plain English
How open-sheet works
Step 1 of 3
You interact with it
Open open-sheet, send a request, or connect it to your stack.
Features
Advantages
- Eliminates fragile hard‑coded cell references; formulas stay correct when rows/columns are inserted or removed
- Compile‑time resolution guarantees that exported formulas match the evaluator, reducing runtime errors
- Live formulas in the output workbook allow end‑users to change assumptions and see recalculations in Excel
- Reduces repetitive work: spreadsheets are generated from code, so updates require only a code change and rebuild
- Facilitates code review instead of binary diffs when reviewing spreadsheet changes
- Provides clear error markers (#NOT_EVALUATED) rather than plausible‑looking wrong numbers
- Enables AI agents to generate spreadsheets without needing to understand A1 addressing
- Single source of truth for styling across Excel, HTML, and PDF outputs
- Open‑source MIT license, free to use and extend
- Integrates with existing agent workflows via MCP and skills
Disadvantages
- Early development stage; not yet published to npm, so installation requires building from source
- Formula library is smaller than Excel’s (≈100 vs 500+ functions), so some advanced Excel features may be missing
- Requires familiarity with TypeScript/React and the open‑sheet API, presenting a learning curve for non‑developers
- Dependent on Node.js ecosystem; not usable directly inside Excel without exporting
- Limited to the features implemented in the framework; custom Excel features like pivot tables or complex data validation are not currently supported
- Debugging formula mismatches relies on CI checks with LibreOffice; discrepancies may require manual investigation
Installation
native
npx @open-sheet/cli init my-sheets && cd my-sheets && npm install && npm run dev
FAQ
What is open-sheet?
open-sheet is a spreadsheet framework built for AI agents. You describe the model you need in natural language and your coding agent writes the React. open-sheet handles cell addressing, formula references, recalculation, and export.
How does open-sheet differ from Claude for Excel?
open-sheet takes a .tsx source file, involves a person once at review, and outputs the same file every rebuild, enabling code review and loops. Claude for Excel works on an existing workbook, requires a person each time, and outputs a changed file. open-sheet needs Node and is MIT licensed.
How do I start a new open-sheet project?
Run npx @open-sheet/cli init my-sheets, then cd my-sheets && npm install && npm run dev.
What export formats does open-sheet support?
open-sheet can export a live .xlsx with formulas, as well as .csv, .html, and .pdf.
How does open-sheet manage cell references and formulas?
open-sheet uses references like r.cell('revenue') that resolve to A1 addresses only at compile time, eliminating manual cell addresses. Formulas are represented as an AST, serialized to Excel formulas and evaluated; if a formula cannot be evaluated it shows #NOT_EVALUATED.
Featured in Videos
YouTube tutorials and walkthroughs for open-sheet
Alternatives
Similar projects ranked by category, topics, and text overlap.