Login
OCX architecture
Login

OCX gets coding work done by people and agents together on a Fossil record, agents of every strength: hosted ones such as Claude and Codex, and local models such as Gemma, whose lower reasoning OCX is built to tolerate by bounding what each step asks of them (PLAN.md, "What it is for"). This page places OCX's parts in that purpose and says where each is defined, so each is edited in one place.

Its layers

Layer What it gives the purpose Defined in State
The record One Fossil repository per project: threads, tickets, check-ins, tags and wiki pages hold every task, its conversation, its evidence and its result Fossil, senders and nodes, section 1 built
Protocol v1 How any person or program asks a node to run a process, talks with it, learns how it ended, and ends it, as messages on the record protocol v1 built, stable
Nodes and sandboxes Where work runs: the server's own node, or a build machine or lab board pulling from it; each process confined as its run says Fossil, senders and nodes, section 5; protocol v1, sections 5 to 8 built
Agents What does the work inside a run. Hosted agents run from patterns, how each runs being data (HISTORY.md decision 40). Local models run inside OCX's native agent, a bounded tool loop that posts each model exchange to the record, so a weaker model's work can be followed and judged patterns: USAGE.md, "Write a run"; the native agent: PLAN.md, "Work-unit and tool contract" hosted: patterns; native agent: missing
Tools Each one typed definition, reached the same from the command line, the CGI page and MCP; a convenience over the record, never required tools, USAGE.md built
An agent's own surface A bounded MCP surface for an agent's work in its run: read, edit, check, report, delegate, propose PLAN.md, "Work-unit and tool contract" planned
Review Verdicts on check-ins, audited and ci, each from a user other than the author; a local model's cited review report as evidence verdicts audited built; ci from a run missing
Repositories A git repository imported to Fossil, and Fossil's git export served back USAGE.md, "Import a git repository" and "Fetch the git export" built
Releases OCX's own programs staged, accepted by a person and rolled back USAGE.md, "Stage, accept or roll back a release" built
Guards The precepts derived from README's virtues, each held by a spec in one gate PLAN.md, "Precepts" built
Code Crystal modules, each with one purpose docs/design/modules.md built

What trunk did that is not here yet, and the order to build it, is docs/parity-v1.md; what comes past parity is PLAN.md, "Functional gaps".

How it is arranged

Person or program admin or setup Fossil server the record runs, posts, verdicts Node hook or node tool Watcher one per run Agent or program in its sandbox Workspace clone run user Local model Ollama artifacts arrive hand on launch, deliveries commit, post requests, each posted HTTPS sync
scale = 0.9
boxwid = 2.0in
boxht = 0.62in

Human: box "Person or program" "admin or setup" at (0,3.1)
Server: box "Fossil server" "the record" at (0,1.7)
arrow <-> from Human.s to Server.n "runs, posts, verdicts" above

Node: box "Node" "hook or node tool" at (-2.1,-0.1)
Watcher: box "Watcher" "one per run" at (0.7,-0.1)
Process: box "Agent or program" "in its sandbox" at (0.7,-1.5)
Clone: box "Workspace clone" "run user" at (-2.1,-1.5)
Model: box "Local model" "Ollama" at (3.4,-1.5)

arrow from Server.sw to Node.n "artifacts arrive" above
arrow from Node.e to Watcher.w "hand on" above
arrow from Watcher.s to Process.n "launch, deliveries" above
arrow <-> from Process.w to Clone.e "commit, post" above
arrow <-> from Process.e to Model.w "requests, each posted" above
arrow <-> from Clone.n to Server.s "HTTPS sync" above

A node on another host has the same parts, its repository a clone that pulls runs and pushes reports; nothing in either listens for a connection.