Change control SDK for
apps and AI agents
Lix is a change control system that enables Git-like features for applications and AI agents such as change proposals, versions (branching), history, and blame.
How lix works
Step 1
Create a lix with the plugins
Lix becomes file format-aware via plugins (`.json`, `.xlsx`, etc.). Otherwise, everything is just a blob.
Step 2
Write a file into the lix
Lix is powered by SQL under the hood. Writing a file, querying diffs, etc. happens all via SQL.
Step 3
Query changes, diffs, etc.
Query working diffs, history, propose changes or merge similar to git, right in the browser.
example.ts
import { openLix, selectWorkingDiff, newLixFile } from "@lix-js/sdk";
import { plugin as json } from "@lix-js/plugin-json";
// 1) Create a lix
const lix = await openLix({
providePlugins: [json]
});
// 2) Write a file via SQL
await lix.db
.insertInto("file")
.values({
path: "/settings.json",
data: new TextEncoder().encode(
JSON.stringify({ theme: "light" })
),
})
.execute();
// 3) Log the changes
const diff = await selectWorkingDiff({ lix }).execute();
console.log(diff);Lix enables the most powerful AI apps
Every AI change is tracked
Lix tracks every change AI agents do. Query the changes and display diffs in apps.
Users stay in control
Change proposals allow users to accept or reject AI changes.
Sandboxed state for AI agents
Versions let AI agents experiment without affecting user data.


