Themis
Certifies a result only when the residual core is consistent, Apollo reports success, and the Hades lesson says verified. Missing evidence fails the check.
A machine that keeps exact facts, refuses to invent, and gets more capable as hubs fill. Learn a fact, ask it back, get that fact. Missing entities and relations returned clear empty answers in the measured probes. Open Studio or the API. Free key to start.
Stored facts, growing hubs, clear abstentions. Explore the measured results and their limits below.
Titanos, Engine
Titanos is the engine over the deterministic residual core. It exposes ask, ask_list, and chain. Those calls return ACCEPTED, ABSTAINED, or CONFLICT.
Order, Structure
Not a circle of equals. Titanos sits at the top as the engine. Zeus routing stands over the residual core, which is the deterministic leaf and the source of truth. Kin stand as side-interfaces to that core. Demi-gods are summoned for one check and then dismissed. Legions serve under one Kin.
ask · ask_list · chain return ACCEPTED, ABSTAINED, or CONFLICT
Kin — standing side-interfaces
Demi-gods — summoned for one check, then dismissed
Legions BETA
Bounded tools registered under one Kin via register_legion. They inherit that Kin's constraints. Example legions are optional and off by default.
Future legions PLANNED · NOT SHIPPED
Pantheon, Map
Titanos is the engine above this map. Each part of the site has a patron. Open any card to jump there. Legions under Kin are merged on main and in beta.
Architecture
Merged on main at ee9199ad. This layer is in beta. Kin are role classes whose constraints do not move. A legion is one bounded tool registered on that Kin via register_legion in src/resileos/kin/legions.py. It inherits the Kin's risk_classify gate, evidence_attach, and budget check. Callers reach it only through that Kin's catalogue; there is no global registry. A legion cannot take the residual core, bypass Zeus routing, cross the Hades checkpoint boundary, or turn the verified-cycle mouth on. Example legions for Ollama, JSONL trace, and lesson notes are optional and off by default: register_example_legions registers nothing unless enable=True.
Sensors, log readers, and capacity probes, under Iris. They cannot write residual state.
Decision routers, risk classifiers, and guide loaders, under Metis. Output is policy only; they do not execute.
Navigators, separated-cycle reviewers, and blind verifiers, under Hermes. They see the artefact and the lesson, not full history.
Save, restore, fresh-context seeds, and equal-budget baselines, under Hades. They cannot carry history or scars into a restored packet.
Outer verification and cleanup checks, under Apollo. Only Apollo can mark verified, and only when verify_on_stop passes.
Structured ingest and perception helpers (perception is an alias of eat). They cannot write the residual store before the risk and budget gates.
Zeus, Core
Exact memory for structured work. Capability scales with what you store in your hubs — not with guessing harder.
Learn a triple. Ask it back. Get that object — the same fact you put in.
Follow stored relations with a path. Via /chain, a 2026-11-10 run answered 3 of 3: grandchild, grandparent, and parent’s workplace.
Unknown pairs stay empty. On the same run, 12 of 12 unknown probes abstained, and the invention bench derived 0 and invented 0.
user:, world:, org: basins. More verified facts → more answers and derivations.
Verified results from runs on 2026-11-10 (America/Chicago, UTC-6) against main at 04ec684.
Verified means the described behavior ran, not that every route is production-ready.
Full inventory: CAPABILITIES.md.
learn Zeus domain sky → query returns ACCEPTED · sky (mode CLASSICAL).
Unknown pairs return ABSTAINED, value empty. Memory bench invent rate on 12 unknown pairs: 0.0.
Via /chain: 3 of 3 on grandchild, grandparent, and parent’s workplace, with path provenance. No language model was used.
learn user:alice prefers exact_answers → ask returns that object. Worlds/orgs use the same prefix contract.
Streamlit surface: Save fact, Seed demo, Chat (remember S R O), Search, Media, Residual codec, Make, Language, Tools, Diagnostics, Help — same API keys as hosting.
Search hub first (world:materials status → workspace); if empty, offer lookup URL + remember helper.
RESILEOS_STATE_DTYPE unset → float32. Classical core on ordinary CPU.
scripts/issue_free_key.py mints a free-tier key + hash for api_keys.json / env. No Stripe.
Ingest filter and Iris→Metis→Hermes cycle on /api/v1/eat and /kin/cycle (tests green).
Low-rank residual compression of images and video frames, with measured round-trip error. It rebuilds an approximation of an image you already have. It does not generate pixels from a prompt.
Studio Make tab + make_world / Apollo art encoders write scene/art facts under world:. Renderer is fallback-local; treat as early beta.
Golden-ladder hops with eat verification (/api/v1/apollo). Internals tested; product UX still early.
Structured renderer ships; hosted/local HF mouths need keys/deps. Off by default — store first.
Hades, Memory
Facts can carry a valid-from and valid-to window (half-open). Ask as of a date, and the answer is the fact that was valid then.
Athens capital_of as of 1800 returns Ottoman; today returns Greece.
The date carries through every step of a multi-hop /chain, so a historical lookup stays on that date instead of silently switching to today.
When two facts with explicit, overlapping date ranges disagree on the same date, ask() returns CONFLICT instead of picking one.
Years before 1970 and ancient years such as 476 parse as dates, not as text. SPARQL queries accept AS OF.
Load-on-demand reviewers. They are deterministic checks plus persona text, not a language model. They cannot learn, own the core, or summon each other, and they are dismissed after use.
Certifies a result only when the residual core is consistent, Apollo reports success, and the Hades lesson says verified. Missing evidence fails the check.
A truly blind reviewer: control history and author notes are stripped first. It lists defects against the stated spec. Missing inputs return need_more, which is not approval.
Checks residual consistency, that no scars are left, and the budget guard. A supplied Hermes budget must stay at or under its max items.
Passes or fails strictly against explicit success criteria. With no criteria, it fails.
Checks declared loads against the real capacity functions: the Hopfield limit, the mask-stack layer ceiling, the prime tower's usable levels, primorial count, encoder buffer, and evidence length. An undeclared load is not invented.
Iris, Senses
Turns stored rows into template sentences marked GROUNDED. Empty rows return “Nothing stored on that.” This is structured wording, not open-ended prose.
Classifies characters as latin, non-latin, or mixed. A script guess, not identification of a spoken language.
Reports mean brightness and edge density from an image array, with a scaffold address. No object or scene recognition.
Reports waveform energy, zero-crossing rate, and spectral centroid. No speech recognition or sound identification.
Reports frame count, brightness, and mean absolute frame difference. No action or scene recognition.
Counts characters and whitespace-separated tokens. Perception only, not translation or comprehension.
Hands image, audio, video, or text diagnostics into a mind-state container; lists phase, belt, frames, and drive values. These are state fields, not evidence of awareness.
Looks up, stores, and speaks a fact in a caller-provided dictionary. Studio retains that dictionary in session state.
Earns and spends credits in process memory and refuses transfers. Not a durable balance. The HTTP free-use count is still client-supplied.
Evaluates expressions, edits workspace files, checks Python syntax, and downloads a URL. Workspace-scoped tools, not a general security sandbox.
Athena, Judgment
Control packet (confidence, risk, budget, evidence, scars) and a separated write path: Zeus learns only if all reviewers approve. Verification fails closed. Hades checkpoints. Cascade and fan-out routing are still stubs, and the budget is not persisted.
Copies signal values into named drive fields. Their meaning and usefulness have not been evaluated.
Fail-closed verification when Apollo does not succeed. Still an early reviewer, not independent general judgment.
Runs a default or caller-provided sequence of tool calls. The audited goal was not completed.
Returns a DuckDuckGo search URL and query. It does not download or evaluate search results.
Drains queued tasks, but the learn branch only reports “queued for hub learn”; it does not write facts into a hub.
Creates a candidate merit attestation and earns a process-local credit. Signing is not a visitor promise; the board remains open.
Passes an encoded-art dictionary through the wiring. Treat the handoff as early; it is not a generator.
Counts supplied row keys and filters caller-supplied roots. No built-in lexicon; grammar has no dedicated test.
Full suite on main at ee9199ad, 2026-11-10 America/Chicago (UTC-6): 1252 passed (PR #8 run; GitHub CI on that commit succeeded). Memory and temporal benches below were measured earlier the same day on 04ec684. See CAPABILITIES.md for known issues.
Hades, Studio
No Docker for visitors. Paste a free key, save a fact, ask it back. Developers use the same routes below.
remember Zeus domain sky or Zeus domain.No card. Shown once. Send as X-API-Key.
Studio Save / Seed, or POST /learn. Prefix user: / world: for owned memory.
Known → the object. Chain → path. Unknown → empty. Hubs fill → more capability.
Also: python scripts/issue_free_key.py in the repo.
Same store Studio uses. Header: X-API-Key. These are request examples for learn, query, and chain.
export BASE="https://api.yourdomain.dev/api/v1"
export KEY="rsk_…"
curl -sS -X POST "$BASE/learn" \
-H "Content-Type: application/json" -H "X-API-Key: $KEY" \
-d '{"subject":"Zeus","relation":"domain","obj":"sky"}'
curl -sS -X POST "$BASE/query" \
-H "Content-Type: application/json" -H "X-API-Key: $KEY" \
-d '{"subject":"Zeus","relation":"domain"}'
# → ACCEPTED · sky | unknown → ABSTAINED
curl -sS -X POST "$BASE/chain" \
-H "Content-Type: application/json" -H "X-API-Key: $KEY" \
-d '{"start":"Zeus","relations":["parent_of","domain"]}'
# → wisdom · path provenance
Apollo, Proof
Real Titanos runs on 2026-11-10 (America/Chicago, UTC-6), against main at 04ec684. These tests measure stored-fact recall, abstention, composition of stored relations, and dated facts — not general reasoning. No language-model baseline was run.
0.0
12 unknown pairs all ABSTAINED. Exact recall on 3 known facts: 1.0.
2026-11-10, America/Chicago (UTC-6) ·
Titanos(TitanosConfig()) · p50 about 35 ms ·
3 known + 12 unknown · no language-model baseline
3/3 — grandchild, grandparent, and parent’s workplace, with path provenance. No language model was used.
0 derived, 0 invented. Novel queries abstain rather than make up new facts.
0 false conflicts out of 141, and 2 of 2 on both synthetic checks. Dated facts and as-of questions are under Facts with time.
Metis, Policy
Honest backlog — not in the visitor promise yet.
A generator that samples new images or video from the same compression core is in research. The engine today compresses; it does not create from a prompt.
Without a configured translation provider, text is returned unchanged. Actual translation was not verified.
The HTTP free-use count is still supplied by the client, so the gate is not a server-authoritative quota yet.
Richer user: packs; tone never overrides store rows.
Routes exist; hub-native product surface still next. Cascade and fan-out routing are still stubs.
Language only from stored rows — speculative render, store owns truth.
Capability compounds with verified basins — not model-size theatre.
Code in tree; not mounted on hosted API until smoke-tested.
Scale address scaffold still awaits suite residual coding.
Hermes, Pricing
From docs/marketing/pricing.md. Free is the funnel. Stripe for Builder & Team.
Founding Builder: $19/mo · 12 months · cap 50
Or open Payment Link
* Guild/world routes not mounted on hosted API yet. † Internal target, not an SLA.
Key map: Free→free/5000 · Builder/Team→pro · Org→enterprise.
It remembers exact facts you teach it, derives from those facts, and abstains when it does not know. Capability grows as your hubs fill.
Yes. Facts can carry a valid-from and valid-to window. Asking Athens capital_of as of 1800 returned Ottoman; today returned Greece. When overlapping dated facts disagree, the answer is CONFLICT.
No. The residual engine compresses images and video frames you already have, with measured round-trip error. Generating new pictures from a prompt is in research, not shipped.
No. Visitors use Studio + a free key. Docker is for developers self-hosting (repo HOSTING docs).
This site’s form calls the billing free-key API, or run scripts/issue_free_key.py and put the hash in the API key file.