Skip to content

v0.14.0

Choose a tag to compare

@github-actions github-actions released this 30 Aug 12:04
· 50 commits to main since this release
cabc716

agent-spreadsheet 0.14.0

0.14 converges the spreadsheet agent surfaces on one canonical Rust operation registry and dispatcher. Native asp, MCP, WASM, the JavaScript SDK, and the optional just-bash command now share operation names, closed schemas, envelopes, errors, revision rules, and workbook semantics.

Canonical surface

The canonical MCP surface contains 27 default operations: 17 discovery/read/analysis operations and 10 write/lifecycle operations. Capability-backed installations expose up to 31 operations; read-only deployments expose 19. The four capability-backed optional operations are screenshot_sheet, sheetport_manifest, execute_sheetport, and inspect_vba.

The default MCP router is canonical. Set SPREADSHEET_MCP_SLIM_SURFACE=false to add legacy 0.13 tool names for one compatibility window. Shared names are registered once and retain their legacy schema/envelope while compatibility mode is enabled.

Canonical responses use the versioned schema_version / operation / resource_id / revision_id / data envelope. A state revision is broader than a workbook content hash: evaluation coverage, cached results, provenance, and lifecycle state can advance a revision without a cell-content edit. Clients must use revisions from response envelopes for compare-and-swap, cursors, and freshness.

Native machine commands

The native CLI adds the registry-derived machine surface:

asp operations
asp registry --all
asp schema read_cells
asp example read_cells
asp op read_cells --bind workbook.xlsx --json '{"sheet_name":"Sheet1","selection":{"kind":"range","ranges":["A1:C10"]}}'
asp op verify_workbook --bind current.xlsx --baseline base.xlsx --json '{}'

asp schema <canonical-op> and asp example <canonical-op> describe the native adapter payload: omit resource_id and baseline_resource_id; --bind and --baseline inject them. Mutating apply/recalculate calls persist with exactly one of --output PATH or --in-place, while preview persists nothing. asp registry --all remains the host-independent canonical source.

Older binaries do not have this adapter-projected schema/example behavior and may still show injected resource IDs as required. Check asp --version before generating payloads or registry fixtures.

Budget failures are also more actionable: ROW_EXCEEDS_BUDGET now directs clients to narrow the requested range or use targeted inspect_cells reads.

Evaluation honesty

Recalculation and verification report state, revision-bound evaluation coverage, source, and freshness. Formula caches alone never authorize clean or proved; unsupported or unevaluated formulas produce partial/inconclusive results. Verification evaluates both workbooks in memory by default and reports asymmetric coverage rather than manufacturing error provenance.

WASM, SDK, and just-bash

  • The internal agent-spreadsheet-wasm crate remains version 0.1.0; it supplies the SDK's embedded byte/session backend and is not published as a standalone product package.
  • agent-spreadsheet-sdk 0.14.0 exposes canonical execute(), generated convenience methods, live MCP/WASM capability negotiation, deprecated 0.13 compatibility methods, and the generated 31-operation registry.
  • agent-spreadsheet-sdk/just-bash is an opt-in adapter over the embedded WASM backend and just-bash VFS. It enforces 64 MiB workbook and 1 MiB parameter defaults, preview purity, explicit persistence, disposal, and serialized writes.
  • just-bash 3.4.2 requires Node.js 20.18.1 or newer. Its js-exec bridge requires an ESM host (.mjs or "type":"module") because the upstream CommonJS export fails that bridge with Invalid URL; ordinary custom commands without js-exec still work from CommonJS.

Install or update

# Shell installer, pinned CLI (add --mcp to install the server too)
curl -fsSL https://raw.githubusercontent.com/PSU3D0/agent-spreadsheet/main/install.sh | ASP_VERSION=0.14.0 sh

# Prebuilt Cargo packages
cargo binstall --force agent-spreadsheet@0.14.0
cargo binstall --force agent-spreadsheet-mcp@0.14.0

# npm CLI and SDK
npm install --global agent-spreadsheet@0.14.0
npm install agent-spreadsheet-sdk@0.14.0

# Homebrew
brew update && brew upgrade psu3d0/tap/agent-spreadsheet

# Full MCP image
docker pull ghcr.io/psu3d0/agent-spreadsheet:0.14.0-full

Release evidence

The convergence gates cover closed input/output/error schemas, 31 registry descriptors, default and compatibility MCP projections, native/MCP/WASM/SDK golden parity, atomic/CAS writes, preview purity, two-resource verification, Formualizer evaluation soundness, status-to-exit mapping, and deterministic continuation behavior. The generated WASM package is exercised in Node and a pinned real Chrome runtime; the just-bash suite covers VFS-only reads/writes, limits, disposal, concurrency, and the js-exec bridge. Docker structure-batch integration, surface-matrix drift, MCP metadata validation, npm tests, package-content dry runs, and Rust locked tests are release gates; the full release-gate run will be recorded separately after this preparation commit.