The playful docs twin of irinity.com

Five stones.
Strict separation
of powers.

The complete operator manual for IRIN's local-first deliberation stack. Every command, key, and switch, explained.

Sentinel Council Gateway Worker Librarian
You

Five primitives ship as stones. The Reality slot is reserved for the sovereign operator. That is you.

One signal chain, no shortcuts

Watch is cheap. Thought is rare. Action is final. Each tier earns the next, and no primitive may do another's job. Solid arrows are the supported path today; dashed arrows are deliberately not built in v0.1.

The rule that holds the gauntlet together

A Sentinel that needs an LLM to decide something is interesting is a Worker wearing the wrong label. Observer is not judge; judge is not actor. Budgets are the security model expressed as time and money: a fire decision costs at most 100 milliseconds, deliberation at most 120 seconds, and a Worker lives at most 30 minutes.

The five stones

Each stone is one primitive with one verb and one hard budget. Click any card for its full reference: duties, knobs, endpoints, and fine print.

Assemble the stack

Three ways in. Run every make command from the IRIN repository root. The full command reference lives on the Commands page.

macOS: the whole gauntlet

git clone https://github.com/irinityhq/irin.git
cd irin
make setup

OperatorPrepares private config and signing material, builds and starts Council, War Room Web, and Gateway, enables login recovery, then prints your service URLs. Preserves operator-owned values you already set.

make app-install

OptionalBuilds, atomically installs, and launches the native macOS desktop shell. It reuses the runtime make setup already started; it never starts a competing backend.

Ubuntu: browser War Room

make warroom

OperatorBuilds and starts Council plus War Room Web in the foreground on loopback. Open http://127.0.0.1:3010, stop with Ctrl+C. This path does not install login recovery, configure Tailscale, start Gateway, or provide the desktop app.

Either OS: prove the loop

make verify
make verify-down

ProofRuns the Sentinel-to-signed-directive path end to end in an isolated stack: no provider keys, no hardware arming, own ports, own volumes. One signed mock directive lands in the Outbox. Details on the Ceremony page.

Where things listen

Surface
Address and notes
War Room Web
http://127.0.0.1:3010 - the browser UI for deliberation.
Council API + WebSocket
http://127.0.0.1:8765 - deliberation engine, REST and streaming.
Gateway
http://127.0.0.1:18080 - with macOS make setup, or started separately on Ubuntu.
Desktop app
Council War Room.app on macOS, same backend as above.
Private phone
https://<your-device>.<tailnet>.ts.net - macOS make setup only, when Tailscale is installed and connected. Never a public URL.

The rule of this site

Every option you can click here explains itself: what it does, what it costs, and what it refuses to do. If a switch ever leaves you guessing, that is a bug in the docs, not a personality trait.

The main site is the serious one. This one is allowed to have fun, but it is not allowed to invent: budgets, defaults, and limits are quoted from the product's own docs and code. Where the product is honest about a boundary, these pages repeat that boundary word for word. IRIN is local-first software for one operator, pre-release, best-effort, and deliberation does not guarantee correctness.