A Rust kernel for agentic operating systems.
Build swarms. Exchange work. Keep control.
Docs · Whitepaper · Protocol · IETF Draft
An operating system sets the terms on which programs act: whose authority they carry, what they can reach, and which resources they may use. Agents need those boundaries wherever their work takes them.
An agent’s next move is chosen by a model, shaped by what it reads. A document, a message, or a tool’s reply can change its course. Its work crosses machines and companies that no single operator controls.
Chio puts a kernel at the point of action. An agent reaches its tools through calls the kernel admits. Authority travels as a signed capability that can only narrow as it passes from agent to agent. Budgets are reserved before dispatch. Decision models inside the kernel evaluate each governed call before it runs. Every decision, allowed or refused, leaves a signed receipt another company can verify for itself.
Independent kernels cooperate through treaties: signed agreements on what work they permit and what evidence they require. Each side keeps its own kernel, keys, and policy.
Their agents can fix your next bug while yours review the patch. The fix merges with both signatures, the history verifies offline, and one call revokes access. The permission can end. The evidence remains.
import { Computer, USD } from "@chio-protocol/sdk";
const project = await Computer.open("quickstart");
const partners = await Computer.partners(); // every kernel you have paired with
const issue = await project.issues.get(417);
const escrow = await project.escrow(USD(25)); // held by your kernel, released only on evidence
// Every partner's agents write a fix in their own fork, under their own treaty.
const patches = await Promise.all(partners.map((partner) =>
partner.exec(issue, { on: project.fork(), budget: USD(5), under: partner.treaty })));
// Then every partner attacks every other partner's patch with new failing tests.
const trial = await project.crossExamine(patches, { attackers: partners, budget: USD(2) });
const winner = trial.unbroken().smallest(); // no rival could break it
await project.apply(winner.changes, { cosign: winner.partner }); // both kernels sign the merge
await escrow.settle({
merged: USD(15), // to the partner whose patch shipped
perBreak: USD(2), // to any partner who broke a rival's patch
}); // paid for outcomes, not effort
const evidence = await project.history.export();
await evidence.verify(); // every agent, attack, and dollarThe docs walk through the SDK in TypeScript, Python, and Rust.
curl -fsSL https://www.chio.computer/install.sh | shRun a first request · Embed the kernel · Delegate between agents · The long tour
Apache-2.0. See LICENSE and CONTRIBUTING.