← all repositories
opral/lix

Git for spreadsheets, not just source code

An embeddable VCS that lets AI agents branch, diff, and query changes in DOCX, XLSX, and JSON without spawning a daemon.

659 stars Rust Coding AssistantsAgents
lix
Velocity · 7d
+0.8
★ / day
Trend
steady
star history

What it does

Lix is an in-process version control library you import into your app or agent worker. It gives you branches, transactions, rollback, and immutable history for non-code files—PDFs, spreadsheets, JSON, CSV—backed by whatever storage you already use (SQLite, Postgres, S3, Cloudflare).

The interesting bit

Git sees an XLSX file as a binary blob and shrugs. Lix parses structure: it can tell you that cell B3 in the “orders” sheet flipped from “pending” to “shipped,” and your agent can query that change with SQL instead of re-reading the whole file. The “semantic change” layer is the real bet here.

Key highlights

  • Runs in-process; no daemon, no protocol to speak
  • ACID transactions across files, blobs, and history in one go
  • Parallel branches without Git-style worktree juggling
  • SQL interface over lix_change table—filter by branch, schema, entity, time
  • Pluggable backends: start in-memory, graduate to Postgres or S3

Caveats

  • CLI and file plugins for DOCX/XLSX/PDF are still on the roadmap (v0.7–v0.8); the SDK is there, but format-specific smarts are pending
  • Python, Rust, and Go bindings are tracked as open issues, not shipped yet
  • Merge conflicts and working changes/checkpointing are not implemented until v0.9–v0.10

Verdict

Worth a look if you’re building agent tools or collaborative apps that version non-code assets and want programmatic query access to history. Skip it if you need a mature CLI or deep format support today—you’re buying into a roadmap.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.