Skip to main content

Spreadsheetsforagents

Agents work directly with formulas, ranges, pivots, and charts. Every change is a Git-style commit — review, diff, merge, and roll back.

Run multiple agents alongside humans — Agents work. You decide.

FOR HUMAN
npm install -g agent-sheet@latest
FOR AI AGENTS
Read https://github.com/dream-num/skills and follow the setup instructions

BUILT FOR

any agent and stack

How it works

A simple three-step workflow for agent-human collaboration on spreadsheets.

1

Agent creates or updates the workbook.

Including formulas, formatting, charts, conditional formatting, and pivot tables.

2

Review every change like a pull request.

Each spreadsheet action becomes a structured mutation, making diffs clear and reviewable.

3

Approve, reject, merge, or roll back changes.

Stay in control without losing work or breaking the workbook.

Core Capabilities

Fully Local by Default

Run core workbook workflows entirely on your machine, with no network, no login, and no cloud dependency.

Powered by Univer

Built on the most advanced spreadsheet engine with 12.6k+ GitHub stars, without requiring Excel, LibreOffice, or any cloud spreadsheet service.

Shell-Native by Design

Work seamlessly with awk, grep, sed, jq, Python, and compose spreadsheet workflows directly in your terminal.

Incremental Updates

Handle large datasets and complex spreadsheets by updating only what changed instead of rewriting the entire file.

Spreadsheet Capabilities

500+ formulas and real formula execution, conditional formatting, data validation, permissions, charts, pivot tables, rich cell formatting, comments, hyperlinks, and images.

Human Review for Agent Changes

Agents create and update the workbook. Every change is structured and reviewable, like a pull request. Humans can comment, approve, reject, merge, or roll back safely.

In Action

Real CLI workflows: inspect, read, transform, write, and script, all through one workbook-native surface.

INSPECT

inspect workbook

Before a broad edit, get the workbook's real shape: sheet index, used range, preview, and formula groups.

COMMAND
$ agent-sheet inspect workbook \
    --entry-id ei_3gu5q9e3
OUTPUT
Spreadsheet Overview
Total [1] Sheets: 'Renewals'

| # | Sheet    | Used Range | Tables | Groups |
|---|---------|------------|--------|--------|
| 1 | Renewals | A1:H6      | 1      | 2      |

G2:G6 <- G2 (5): =ROUND((F2*15)+(D2/2),0)
H2:H6 <- H2 (5): =IF(G2>55,"renew_now","monitor")
READ

read range

Pull exact workbook values into stdout when the next step belongs in a pipe, file, or downstream script.

COMMAND
$ agent-sheet read range \
    --entry-id ei_3gu5q9e3 \
    --range 'Renewals!A1:F6' \
    --type rawValue \
    --format csv \
    --to-stdout
OUTPUT
account_id,segment,csm,days_to_renewal,arr,open_tickets
ACC-0001,MidMarket,Bianca,13,8137,4
ACC-0002,Enterprise,Carter,41,18274,1
ACC-0003,SMB,Diego,8,2411,6
ACC-0004,SMB,Avery,32,6680,2
ACC-0005,Enterprise,Nora,5,22100,7
PIPE

read + awk + write

Pipe a spreadsheet range through stdout into Unix tools, and write the result back into the same or another workbook.

COMMAND 1
$ agent-sheet read range \
    --range 'Renewals!A1:F6' \
    --format csv --to-stdout \
  | awk -F, 'NR==1{print "id,csm,days"; next}
    ($4+0)<=15 {print $1","$3","$4}'
OUTPUT 1
id,csm,days_to_renewal
ACC-0001,Bianca,13
ACC-0003,Diego,8
ACC-0005,Nora,5
COMMAND 2
$ agent-sheet write table \
    --sheet Review --data-stdin
OUTPUT 2
{
  "status": "success",
  "updated": 1,
  "ranges": ["Review!A1:C4"]
}
WRITE

write table / write cells

Write structured data—tables, arrays, or scalars—into a specified sheet and range, preserving formula references and formatting.

COMMAND 1
$ agent-sheet write table \
    --entry-id ei_3gu5q9e3 \
    ./review-new.csv --sheet Review
OUTPUT 1
{
  "status": "success",
  "updated": 1,
  "ranges": ["Review!A1:C4"]
}
COMMAND 2
$ agent-sheet read range \
    --range 'Review!A1:C4' \
    --format csv --to-stdout
OUTPUT 2
owner,status,note
Lena,approved,carry forward
Mark,review,watch risk drift
Nora,renew_now,escalate this week
FALLBACK

script js

When declarative commands are not enough, run JavaScript to access the workbook model directly and perform arbitrary transformations.

COMMAND 1
$ agent-sheet script js \
    --entry-id ei_3gu5q9e3 \
    --file ./bounded-edit.js \
    --json
OUTPUT 1
{
  "method": "script.js",
  "success": true,
  "changed": "Review!D1:D4"
}
COMMAND 2
$ agent-sheet read range \
    --entry-id ei_3gu5q9e3 \
    --range 'Review!A1:D4' \
    --type rawValue \
    --format csv \
    --to-stdout
OUTPUT 2
owner,status,note,next_step
Lena,approved,carry forward,send quote
Mark,review,watch risk drift,double check
Nora,renew_now,escalate this week,call today

Benchmark & Reliability

Validated against real-world spreadsheet benchmarks and continuously evaluated across diverse occupational tasks.

#1 Leaderboard · Dec 2025

SpreadsheetBench

Real-world spreadsheet task accuracy

0.00%

Accuracy (%) · pass@1

Human
71.3%
Univer
68.86%
Bluebox
62.9%
Shortcut.ai
59.25%
copilot in Excel(Agent Mode)
57.2%
4.1× better than the nearest AI competitor

GDPval

0

real-world tasks

across 44 occupations

0

open tasks

including 75 spreadsheet-related cases

Used for continuous internal evaluation

Spreadsheets for Agents.
Multi-Agent Collaboration.
Humans in the Loop.

Run multiple agents alongside humans, all working on the same data, without losing control.