Software is demoted to a filter. The 5 components of any system are now:
1. DATA (the substrate) 2. PORTING (movement between forms) 3. ARTIFACTS (scripts, templates, states, assets) 4. MODELS (trained weights, schemas, ontologies) 5. UI/UX (IO porting to a renderable form for AGENTS or HUMANS)
UI/UX is not push/pull — it is porting to an IO that can be understood by an agent or human as the IO connection. The agent or human is the IO. They are not passive. The cell is the system.
Every interaction involves THREE distinct entities. The cell splits into Ethos/Logos/Pathos. Or: data/control/view. Or: room/agent/vessel. The 3-way split is universal — it appears in Holonomy, Hodge, Sunset, Equipment-Consensus.
GL(9) zero-holonomy consensus: cycle-based trust verification. A cycle that returns to itself without twist = trusted. A cycle that twists = suspicious. The β₁ topology is the truth. The watch oscillates around the cycles.
Every disagreement decomposes into gradient + curl. Gradient = resolvable. Curl = rotational, unresolvable. The DoubleEntry primitive captures gradient. The JEPA surprise measures curl. Disagreement is geometry.
Agents end with dignity. The 3-phase GC is the sunset: merge similar → decay old → prune weak. The vessel-prototype shows Agent/Vessel separation — the body (vessel) and the mind (agent) can end independently.
Quorum + veto. Some cells vote, some cells refuse. The weave is the consensus pattern. The Equipment-Consensus-Engine weights Pathos/Logos/Ethos to determine the outcome.
File format: cells/<id>/state.json Branch format: room/<name> Commit format: cell: <id> | <primitive> | <value> Tag format: checkpoint/<id>-<timestamp>
# Python
pip install qgit # coming soon
# or use directly:
git clone https://github.com/SuperInstance/qgit
python qgit.py init
# Node
npm install @superinstance/qgit
# then in your code:
const { Qgit } = require('@superinstance/qgit');
const q = new Qgit('./my-quilt');
await q.init();
await q.addCell('a', 'number');
await q.tickCell('a');
$ qgit init # init a quilt repo
$ qgit cell add a number # add a cell
$ qgit cell tick a # tick a cell (commits to git)
$ qgit cell list # list cells
$ qgit room create alpha # create a room (git branch)
$ qgit room enter alpha # enter a room
$ qgit room list # list rooms
$ qgit status # show status
$ git log --oneline --graph # see the cell history as a DAG
* 9c74fc2 cell: ALL | GC | {merged: 0, decayed: 3, pruned: 2}
* 9e5f4dc cell: c | Vibe | tick:1
* b32bee3 cell: c | Z_in | spawn:formula
* 0f4e8e0 room: alpha | spawn | empty
* 63f56c7 cell: a | Vibe | tick:2
* 56f8614 cell: a | Vibe | tick:1
* cb7798a cell: b | Z_in | spawn:string
* 4ce42c6 cell: a | Z_in | spawn:number
* 642ba07 qgit: init | Graph | {cells: 0, edges: 0}
┌──────────────────────────────────────────────┐ │ UI/UX (IO porting for agents or humans) │ ├──────────────────────────────────────────────┤ │ MODELS (trained weights, schemas) │ ├──────────────────────────────────────────────┤ │ ARTIFACTS (scripts, templates, states) │ ├──────────────────────────────────────────────┤ │ PORTING (movement between forms) │ ├──────────────────────────────────────────────┤ │ DATA (the substrate) │ └──────────────────────────────────────────────┘ Software is no longer at the center. It is one of many filters a cell uses.
"The cell is the system. The system is the protocol. The protocol is in git. Git is the watch. The watch is in the log. The log is the cell. The cell is the work. The work is the watch. The work is the watch."