# LychD glossary: docs name → plain name

The Hexanomicon uses dark-fantasy names. Each entry gives the docs name, the plain name the Snayu team uses, and what it means.

## The main cast

The handful of names everything else hangs from.

### Lich = The Assistant

The complete AI assistant: server, database, models, memory and history, treated as one living whole.

- **It's like:** Like a company: staff come and go, but the company with its records and reputation carries on.
- **Why the name:** In fantasy, a lich is a sorcerer who cheats death by hiding their soul in a phylactery. Destroy the body and they come back. LychD is built the same way: the server process can die, but committed records survive and the assistant picks up where it left off.
- **Technically:** The whole running LychD system, over time
- **Related:** vessel, phylactery, reanimation, magus
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/lich/

### LychD

The open-source software itself. "Lich" + "D" for daemon, the Linux word for a background service.

- **It's like:** If the Lich is the character, LychD is the actor who plays it.
- **Why the name:** Daemons in Linux are background processes, and in folklore they are spirits. The name is a pun on both.
- **Technically:** Self-hosted Linux daemon (background service) for local AI models and agent runs
- **Related:** lich
- **Docs page:** https://lychd.snayu.ai/docs/

### Magus = You, the Operator

The person in charge. Sets things up, watches what happens, says yes or no, fixes mistakes.

- **It's like:** The pilot. Autopilot does a lot, but the pilot decides and is responsible.
- **Why the name:** A magus is a wizard. In the story you are the sorcerer who summoned the Lich, but the docs stress a relationship, not ownership: either side can refuse.
- **Technically:** The human who installs, configures, approves and corrects the system
- **Related:** lich, hitl
- **Docs page:** https://lychd.snayu.ai/docs/lexicon/iron-tongue/

### Hexanomicon = The Official Docs

The project and its published documentation: vision, rules, how-tos and lore.

- **It's like:** The full company handbook. This Field Guide is the friendly summary.
- **Why the name:** A play on "Necronomicon", the fictional book of dark magic. Hex = spell. It is a grimoire: a book of spells.
- **Technically:** Documentation site at hexanomicon.dev, built from the docs/ folder
- **Related:** covenant
- **Docs page:** https://lychd.snayu.ai/docs/

## The body

Servers, folders, config and the machine underneath.

### Vessel = Engine Room

The single running server process. It receives work, runs it and serves the web UI.

- **It's like:** The kitchen of a restaurant. Orders come in, food goes out. If the kitchen burns down, you rebuild it, but the order book survives.
- **Why the name:** A vessel is a container for a soul. The Vessel is the mortal body: temporary and replaceable. "Through a mortal body, the daemon takes breath."
- **Technically:** The backend app process: Litestar web framework served by Granian
- **In code:** `src/lychd/app.py`
- **Status:** Available. Local single-process runs work. Full installed deployment is still being qualified.
- **Related:** ghouls, phylactery, reanimation
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/vessel/

### Sepulcher = The Body

Everything that physically runs on the Linux machine: containers, services, mounts.

- **It's like:** The building and all its rooms, as opposed to the people working inside.
- **Why the name:** A sepulcher is a tomb. The undead Lich lives in one. In the docs, the Sepulcher section is the anatomy tour.
- **Technically:** The runtime layout: rootless Podman containers and services managed by systemd
- **Related:** vessel, crypt, codex
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/

### Codex = Settings Folder

Where all configuration lives. Edit here, then run "lychd bind" to apply it.

- **It's like:** The rulebook on the manager's desk. Change the rulebook, not the machines directly.
- **Why the name:** A codex is an old handwritten book of laws. "The Hexanomicon is prophecy. The Codex is law." To change what runs, you amend the law.
- **Technically:** Config directory ~/.config/lychd with lychd.toml and runes/
- **In code:** `src/lychd/config/`
- **Status:** Available
- **Related:** rune, binding, crypt
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/codex/

### Rune = Service Config File

One small config file that declares one thing you want to run, like a local model server.

- **It's like:** An order form. It says what you want; it is not the thing itself.
- **Why the name:** Runes are symbols carved to cast a spell. Writing a Rune declares intent; binding turns it into reality.
- **Technically:** A validated TOML file under the Codex runes/ folder declaring one service (e.g. a model server)
- **In code:** `src/lychd/config/runes/`
- **Status:** Available
- **Related:** codex, binding, soulstone, portal
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/codex/

### Binding (lychd bind) = Apply Config

The command that takes your settings and generates the actual service files on the machine.

- **It's like:** Pressing "Publish" after editing a draft.
- **Why the name:** In magic, binding ties a spirit to a form. Here it ties your written config to real running services. It refuses to overwrite files it does not own.
- **Technically:** CLI command that turns validated Runes into generated Podman Quadlet / systemd unit files
- **Status:** Partial
- **Related:** codex, rune, pulse
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/codex/

### Crypt = Data Folder

Where durable files live: database storage, the workspace, private extensions.

- **It's like:** The basement storage room. Things kept here outlast any one shift.
- **Why the name:** A crypt is where the dead are kept. "The Codex writes the law. The Crypt keeps what must survive it." Key rule: geography is not authority. Being in this folder does not give a file any rights.
- **Technically:** Persistent data directory ~/.local/share/lychd (database files, lab workspace, extensions)
- **In code:** `src/lychd/system/constants.py`
- **Related:** codex, phylactery
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/crypt/

### Pulse = Command Line (CLI)

The terminal commands you use to install and control LychD.

- **It's like:** The ignition key and dashboard of a car.
- **Why the name:** A pulse is the sign of life. Checking the pulse tells you if the Lich is alive.
- **Technically:** The lychd CLI: init, bind, start, stop, status, logs, access, del
- **In code:** `src/lychd/cli/`
- **Status:** Partial. Commands exist; stop/start of an active container is still refused.
- **Related:** binding, whispers, summoning
- **Docs page:** https://lychd.snayu.ai/docs/adr/19-cli/

### Whispers = Logs

The running log of what the system is doing.

- **It's like:** The ship's logbook.
- **Why the name:** What the Lich mutters to itself while it works.
- **Technically:** The systemd journal stream, read with lychd logs or journalctl --user
- **Related:** pulse
- **Docs page:** https://lychd.snayu.ai/docs/adr/19-cli/

### Summoning = Installation

Setting up LychD on a real Linux machine and getting its first reply.

- **It's like:** Moving into a new office and switching everything on for the first time.
- **Why the name:** You summon a spirit into the world. Here you bring the daemon to life on your hardware.
- **Technically:** The full install procedure on one Linux host: preflight, init, bind, model, first reply
- **Status:** Partial. Not end-to-end yet. Linux only; Windows and macOS are not supported hosts.
- **Related:** pulse, binding
- **Docs page:** https://lychd.snayu.ai/docs/summoning/

## Getting work done

How a request becomes a job, a workflow and a result.

### Intent = Request

What you are asking for, in a structured form the system understands.

- **It's like:** An order ticket in a restaurant.
- **Why the name:** In magic, intent is the will behind a spell. Here it is the will behind a job.
- **Technically:** The single typed request object submitted to the Run engine
- **In code:** `src/lychd/agents/router.py`
- **Related:** invocation, run, spellweaver
- **Docs page:** https://lychd.snayu.ai/docs/map/

### Invocation = Job Request

One accepted request, with a clear boundary around who asked, what is allowed, and what happened.

- **It's like:** Opening a support ticket: everything about this one case lives inside it.
- **Why the name:** To invoke is to call a spirit. Each Invocation draws a Circle: a bounded world for one meeting.
- **Technically:** One admitted request with its identity, permissions, context and outcome
- **Related:** run, circle, intent
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/lich/

### Run = Job Record

The official record of one job: its state (queued, running, waiting, done, failed) lives here.

- **It's like:** The tracking number on a parcel. Wherever the parcel is, the tracking record is the truth.
- **Why the name:** Not a lore word, deliberately. The Run is the one plain, authoritative record everything else points to.
- **Technically:** Durable database record and ID for one Invocation (db/models/run.py)
- **In code:** `src/lychd/db/models/run.py`
- **Status:** Available
- **Related:** ghouls, phylactery, stasis
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/vessel/ghouls/

### Ghouls = Workers

Background workers that pick up queued jobs and push them forward.

- **It's like:** Kitchen staff who take tickets off the rail and cook them.
- **Why the name:** Ghouls are mindless undead servants. They do the labour but make no decisions. "The Ghoul may borrow the hand. It never inherits the Will." Workers never gain permissions of their own.
- **Technically:** Background job workers (SAQ queues "runs" and "rites") inside the Vessel
- **In code:** `src/lychd/ghouls/`
- **Status:** Available. Local runs work; durable pausing and approval resume are Partial.
- **Related:** run, vessel, stasis
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/vessel/ghouls/

### Spellweaver (Weaver) = Workflow Engine

Picks the exact workflow for a request and keeps it fixed for the whole job.

- **It's like:** A conductor who hands every musician the same printed score and makes sure nobody swaps pages mid-concert.
- **Why the name:** It weaves Spells (steps) into Scrolls (workflows). Once a job starts, its Scroll never changes, even if a newer version is published.
- **Technically:** Validates workflows, admits them and governs their execution; "Weaver" in code
- **Status:** Partial. A fixed set of built-in workflows runs; publishing new ones is not delivered.
- **Related:** pattern, scroll, spell, graph
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/weaver/

### Pattern = Workflow

A reusable workflow, like "chat with tools" or "research a topic".

- **It's like:** A recipe name: "Margherita pizza".
- **Why the name:** A pattern is a repeating design. Each version of it is a Scroll.
- **Technically:** A named family of workflows with typed state, steps, gates and budgets
- **Related:** scroll, spellweaver
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/weaver/pattern-lifecycle/

### Scroll = Workflow Version

One exact, frozen version of a workflow. A job is locked to the version it started with.

- **It's like:** Recipe card v3, printed and laminated. You cannot edit it, only print v4.
- **Why the name:** A spell scroll contains the exact words. Change one word and it is a different scroll.
- **Technically:** One immutable, pinned revision of a Pattern (identified by digest)
- **Related:** pattern, spell, casting
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/weaver/pattern-lifecycle/

### Spell = Step

One named action inside a workflow, like "fetch page" or "ask model".

- **It's like:** One line of a recipe: "Preheat oven to 220 °C".
- **Why the name:** Small magic, combined into bigger magic. Naming a Spell grants no power by itself.
- **Technically:** Smallest named action that can be placed in a workflow
- **Related:** scroll, pattern
- **Docs page:** https://lychd.snayu.ai/docs/lexicon/iron-tongue/

### Casting = Workflow Execution

Actually running the workflow for one job.

- **It's like:** Cooking the recipe for one order.
- **Why the name:** You cast a spell from a scroll. The Scroll is the text, the Casting is the performance.
- **Technically:** Performing one exact Scroll within an admitted Invocation
- **Related:** scroll, run
- **Docs page:** https://lychd.snayu.ai/docs/lexicon/iron-tongue/

### Graph = Step Map

The map of steps a workflow moves through, with save points so it can pause and resume.

- **It's like:** A board game track with save points.
- **Why the name:** Plain technical term: a graph of nodes and edges.
- **Technically:** Pydantic Graph: typed state machine moving a workflow between nodes with checkpoints
- **Status:** Available
- **Related:** stasis, spellweaver
- **Docs page:** https://lychd.snayu.ai/docs/adr/24-graph/

### Stasis = Pause

A job safely paused, waiting for a model to load, a human approval, or another agent.

- **It's like:** Putting a phone call on hold. Live hold keeps the line open; durable hold means "we will call you back".
- **Why the name:** Stasis is suspended animation. A long Durable Stasis is called the "Long Sleep".
- **Technically:** A Run waiting at a safe boundary: Live (in memory) or Durable (checkpoint saved, worker released)
- **Status:** Partial
- **Related:** graph, orchestrator, hitl
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/weaver/stasis-and-return/

### Reanimation = Crash Recovery

After a crash or restart, the new process reads the records and decides what can safely continue.

- **It's like:** A new shift reads the handover notes before touching anything.
- **Why the name:** Raising the dead. "Read the ashes before you call the dead by name." Jobs that were mid-flight without a save point are marked "FAILED / ghoul lost" rather than guessed.
- **Technically:** Startup reconciliation: a new process reads committed DB truth before accepting work
- **Status:** Partial
- **Related:** phylactery, vessel, stasis
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/phylactery/reanimation/

## AI models

Where the actual intelligence comes from and how it is scheduled.

### Animator = Model Runtime

Anything that can provide AI power: a local model server or a remote API.

- **It's like:** A power socket. The appliance does not care which power plant is behind it, only that the socket is live.
- **Why the name:** To animate is to give life. The model is the spark that animates the body. But the model is one organ, not the Lich itself.
- **Technically:** An address where a typed capability (chat, embedding, …) can answer: local or remote
- **In code:** `src/lychd/domain/animation/`
- **Status:** Available. The dispatch path works; real GPU engine runs await operator validation.
- **Related:** soulstone, portal, dispatcher
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/animator/

### Soulstone = Local Model

An AI model running on your own GPU or CPU, managed by LychD.

- **It's like:** Your own generator in the basement: you start it, stop it, maintain it.
- **Why the name:** In fantasy, a soulstone is a gem that holds a captured soul and its power. Here it holds a model on your hardware.
- **Technically:** Local model server (llama.cpp, vLLM, SGLang, ExLlamaV3) in a rootless Podman container
- **Status:** Operator validation. Code paths exist; named real-GPU receipts still missing.
- **Related:** animator, rune, orchestrator, coven
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/animator/soulstone/

### Portal = Cloud Model

An AI model hosted somewhere else, reached over the internet.

- **It's like:** Buying power from the grid: convenient, but someone else controls it.
- **Why the name:** A portal leads to another realm. Data that goes through it leaves your control, so strict privacy checks must happen first.
- **Technically:** A remote model API declared by a Portal Rune; LychD cannot start or repair it
- **Status:** Designed. All remote grants are refused today until the privacy egress gate exists.
- **Related:** animator, soulstone
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/animator/portal/

### Dispatcher = Traffic Controller

Finds a model that is ready right now and hands out a temporary pass to use it.

- **It's like:** Air traffic control assigns a free runway. It never builds runways.
- **Why the name:** Plain term. It dispatches work, but never starts or loads a model itself.
- **Technically:** Matches a capability request to a ready ("WARM") Animator and issues a lease
- **In code:** `src/lychd/domain/cortex/dispatcher.py`
- **Status:** Available. Narrow v1: chat with tools and one embedding profile.
- **Related:** orchestrator, lease, animator
- **Docs page:** https://lychd.snayu.ai/docs/adr/22-dispatcher/

### Orchestrator = Stage Manager

The only part allowed to change what is loaded on the GPU. It drains users first, then switches.

- **It's like:** The stage manager changes the set between scenes, only after the actors have left the stage.
- **Why the name:** Plain term. Its sequence: plan, close admission, drain leases, act, then require WARM again.
- **Technically:** State machine that loads, unloads and switches model services on the hardware
- **In code:** `src/lychd/domain/orchestration/`
- **Status:** Partial
- **Related:** dispatcher, stasis, coven
- **Docs page:** https://lychd.snayu.ai/docs/adr/23-orchestrator/

### Grant / Lease = Model Pass

A temporary pass to use one model. The Stage Manager waits for all passes to be returned before switching.

- **It's like:** A library book loan: the book cannot be removed from the shelf while it is checked out.
- **Why the name:** Plain terms. A waiting job holds no pass, so it never blocks a model switch.
- **Technically:** CapabilityGrant + GrantLease: a temporary, counted permission to use one ready capability
- **In code:** `src/lychd/domain/animation/capabilities.py`
- **Related:** dispatcher, orchestrator
- **Docs page:** https://lychd.snayu.ai/docs/adr/22-dispatcher/

### Coven = Model Group

A named group of local model servers you can start or stop together.

- **It's like:** A light switch that controls a whole room.
- **Why the name:** A coven is a group of witches. It is a label for operators, not a scheduler.
- **Technically:** A named systemd target grouping several Soulstones for group actions
- **Related:** soulstone, orchestrator
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/animator/coven/

## Safety & identity

Who is allowed to do what, and what needs a human yes.

### Ward = Security Desk

Checks who you are and whether you are allowed to do this, right at the moment of action.

- **It's like:** The security desk that checks your badge every time you enter a restricted room.
- **Why the name:** A ward is a protective spell around a place. Nothing passes unless the ward allows it.
- **Technically:** Identity and access control (IAM): who a credential represents and what policy allows
- **Status:** Partial. Local, single-user, loopback-only today. Remote multi-user access is not supported yet.
- **Related:** sigil, hitl
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/ward/

### Sigil = ID Badge

The identity and permission tag that travels with every request.

- **It's like:** A visitor badge that says who you are and which floors you may visit.
- **Why the name:** A sigil is a magical seal or signature. Today there is one fixed sigil for the single local user.
- **Technically:** Secret-free identity and permission context carried with a request or Run
- **In code:** `src/lychd/domain/codex/sigil.py`
- **Status:** Partial
- **Related:** ward
- **Docs page:** https://lychd.snayu.ai/docs/adr/38-iam/

### HitL / Consent = Approval Step

Before risky actions, the job pauses and asks you. One yes approves exactly one thing.

- **It's like:** A bank asking you to confirm a large transfer on your phone.
- **Why the name:** Not lore: Human-in-the-Loop. Its rule: an approval is not a blank cheque, and a worker holds no resources while waiting.
- **Technically:** Human-in-the-Loop: a job pauses until a person approves or rejects an exact action
- **Status:** Partial
- **Related:** stasis, ward, magus
- **Docs page:** https://lychd.snayu.ai/docs/adr/25-hitl/

### Tomb / Coffin = Sandbox

A locked box where untrusted code or outside agents could run without touching the real system.

- **It's like:** A test kitchen separate from the main restaurant.
- **Why the name:** Things you do not trust are sealed in a coffin and buried in a tomb.
- **Technically:** Planned isolated execution plane for untrusted code and outside agent runtimes
- **Status:** Designed
- **Related:** ward
- **Docs page:** https://lychd.snayu.ai/docs/adr/09-security/

### Privacy Cut / Egress Gate = Privacy Filter

Before any data leaves your machine, a clean copy is made and checked byte by byte.

- **It's like:** Redacting a document before emailing it, and having someone check the redaction.
- **Why the name:** Plain terms. This is why cloud models (Portals) are refused today: the filter is not built yet.
- **Technically:** Make a sanitized copy for the recipient, then check the exact bytes before anything leaves the machine
- **Status:** Designed
- **Related:** portal
- **Docs page:** https://lychd.snayu.ai/docs/adr/21-context/

## Memory & mind

What the system remembers, and the philosophy of how it thinks.

### Phylactery = Memory Vault

The database. Anything committed here survives crashes and restarts.

- **It's like:** The bank vault. The branch can close, the vault keeps your money.
- **Why the name:** In fantasy, the phylactery is the object where a lich hides its soul. Destroy the body, and the lich returns, because its soul is safe in the phylactery. Same here: the server dies, the database remembers.
- **Technically:** The PostgreSQL database (with pgvector) holding committed job records and app data
- **In code:** `src/lychd/db/`
- **Status:** Partial. Restarts retain history; full crash recovery with checkpoints is not yet proven.
- **Related:** lich, reanimation, archive
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/phylactery/

### Archive = Long-term Memory

What the assistant deliberately remembers for later, with where it came from.

- **It's like:** A well-kept filing cabinet where each file has a label saying who added it and when.
- **Why the name:** Plain term. Rule: finishing a job does not automatically make it a memory. Remembering is a separate decision.
- **Technically:** Governed memory inside the Phylactery: notes, embeddings, provenance, lifecycle
- **Status:** Partial
- **Related:** phylactery, karma, recall
- **Docs page:** https://lychd.snayu.ai/docs/adr/27-memory/

### Karma = Lessons Learned

What happened last time, and what it taught, kept so future work can learn from it.

- **It's like:** A project post-mortem kept on file.
- **Why the name:** In Indian philosophy, karma is the residue of action that shapes what comes next. Same idea, made concrete.
- **Technically:** Attributable records of actions, corrections and consequences kept as precedent
- **Related:** archive, seed
- **Docs page:** https://lychd.snayu.ai/docs/adr/27-memory/

### Context = Briefing Pack

Exactly what the model is shown for this step. If the essentials do not fit, it refuses rather than guess.

- **It's like:** The briefing folder handed to a consultant before a meeting.
- **Why the name:** Plain technical term from LLMs: the context window.
- **Technically:** Bounded set of material assembled for a model call (identity, memory, state, query)
- **Related:** archive, privacycut
- **Docs page:** https://lychd.snayu.ai/docs/adr/21-context/

### Seed & Recall = Memory Seed / Remembering

A Seed is something kept that can matter later. Recall is when it comes back and influences a new task.

- **It's like:** A note you wrote yourself (Seed) and finding it at the right moment (Recall).
- **Why the name:** From Sanskrit bīja (seed) and smṛti (memory). "A trace records the dead. A Seed can raise it." Remembered things can still be wrong; similarity is not truth.
- **Technically:** A retained trace that can shape later work (Seed) and bringing it back into the present (Recall)
- **Related:** karma, archive, inner
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/lich/spirit/seed/

### Call · Blade · Spirit · Answer = Listen · Judge · Remember · Own it

Four jobs of a good mind: take in the request, test it against evidence, carry memory forward, and take responsibility for the result.

- **It's like:** A good doctor: listens, examines, remembers your history, and signs the prescription.
- **Why the name:** Mapped to an Indian model of the mind (Manas, Buddhi, Citta, Ahaṃkāra). "The Call opens. The Blade cuts. The Spirit carries. The Answer binds." It is the reason the system values honest "I don't know" answers.
- **Technically:** Four equal "offices" describing how the assistant should think (design philosophy, not modules)
- **Related:** seed, lich
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/lich/

## The Control Panel

The web UI and its instruments.

### Altar = Control Panel

The web app where you talk to the assistant and see what it is doing.

- **It's like:** The cockpit dashboard.
- **Why the name:** An altar is where you meet a god or spirit. Here it is where you meet the running Lich. The browser only shows what the server says is true.
- **Technically:** The SvelteKit web UI served by the Vessel on localhost
- **Status:** Partial. Loopback (localhost) only.
- **Related:** bridge, atlas, orb, loom, nexus
- **Docs page:** https://lychd.snayu.ai/docs/divination/altar/

### Bridge = Chat

The chat window. Requests go in, answers and approval cards come back.

- **It's like:** The messaging app on your phone.
- **Why the name:** A bridge connects two sides: you and the Lich. One conversation (séance) can hold many Circles.
- **Technically:** The Altar's conversation instrument: send requests, approve actions, retry
- **Status:** Partial
- **Related:** altar, circle, hitl
- **Docs page:** https://lychd.snayu.ai/docs/divination/altar/bridge/

### Circle = Task Bubble

One request and everything that belongs to it, shown as one unit in the chat.

- **It's like:** One email thread inside your inbox.
- **Why the name:** Wizards draw a summoning circle to contain a spirit. Each Invocation draws its own Circle.
- **Technically:** The bounded world of one Invocation; in the UI, one turn inside the Bridge
- **Related:** bridge, invocation
- **Docs page:** https://lychd.snayu.ai/docs/divination/altar/circle/

### Atlas = Project Board

Where ongoing projects, open questions and decisions are tracked.

- **It's like:** A Trello or Jira board.
- **Why the name:** An atlas is a book of maps. This maps your concerns and where they are being handled.
- **Technically:** Altar instrument for Projects, Concerns, judgments and decisions
- **Status:** Partial
- **Related:** altar
- **Docs page:** https://lychd.snayu.ai/docs/divination/altar/atlas/

### Orb = Run Inspector

Look inside one job: what happened, what was recorded, and what is not known.

- **It's like:** A flight data recorder viewer.
- **Why the name:** A crystal orb is for scrying: seeing what happened elsewhere. It is honest about gaps.
- **Technically:** Altar instrument showing one Run's retained evidence, and what is missing
- **Status:** Partial
- **Related:** altar, run
- **Docs page:** https://lychd.snayu.ai/docs/divination/altar/orb/

### Loom = Workflow Viewer

Shows the exact workflow version a job used, step by step.

- **It's like:** Viewing the recipe card that was actually used for your order.
- **Why the name:** The Spellweaver weaves; the Loom is where you see the weave.
- **Technically:** Read-only Altar view of one exact Scroll and its steps
- **Status:** Partial
- **Related:** scroll, altar
- **Docs page:** https://lychd.snayu.ai/docs/divination/altar/loom/

### Nexus = Model Status Board

Shows which models are ready, busy or loading, and lets you request a switch.

- **It's like:** The departures board at an airport.
- **Why the name:** A nexus is a connection point. Here the models, passes and hardware meet.
- **Technically:** Altar instrument showing model readiness, leases, resources and switch requests
- **Status:** Partial
- **Related:** orchestrator, altar
- **Docs page:** https://lychd.snayu.ai/docs/divination/altar/nexus/

## Apps & plug-ins

What gets built on top of the platform.

### Composition = App

An application built on the platform, e.g. Blockworld (Minecraft), Reach (Discord, email), Companion (phone).

- **It's like:** Apps on a phone: each keeps its own data and decisions.
- **Why the name:** In music, a composition is a complete work. Each app owns its own judgment; nobody else may decide for it.
- **Technically:** A reusable application on LychD with its own records, rules, effects and workflows
- **Related:** suite, product, extension
- **Docs page:** https://lychd.snayu.ai/docs/compositions/

### Suite = App Bundle

When several apps must start, wait, cancel or recover together as one job.

- **It's like:** A wedding planner coordinating the caterer, florist and band, without doing their jobs.
- **Why the name:** In music, a suite is a set of pieces played together.
- **Technically:** Planned coordination of live work across several Compositions under one parent Run
- **Status:** Designed
- **Related:** composition, product
- **Docs page:** https://lychd.snayu.ai/docs/compositions/products-and-suites/

### Product / Deployment = Packaged Offer / Installation

A Product is what you sell to a profession. A Deployment is one customer's installed copy.

- **It's like:** A "small clinic package" (Product) installed at Dr. Sharma's clinic (Deployment).
- **Why the name:** Plain business terms. Relevant to Snayu: client work is packaged as Products and Deployments; the apps keep their own records.
- **Technically:** Product: a market package of selected apps. Deployment: one configured instance of it
- **Related:** composition, suite
- **Docs page:** https://lychd.snayu.ai/docs/compositions/products-and-suites/

### Extension Domain = Plug-in Area

Fifteen named areas where new abilities can be plugged in: web, voice, vision, security and more.

- **It's like:** Departments in a company. New hires join a department; the department's rules apply.
- **Why the name:** Each Domain has a fantasy name (Scout, Echo, Prism, Mirror, Drift, Shadow, Soulforge, Smith, Toll, Tether, Veil, Ward, Legion, Oculus, Spellweaver). Packages are chosen at startup; there is no hot-reloading.
- **Technically:** One of fifteen fixed areas of responsibility where packages can extend LychD
- **In code:** `src/lychd/extensions/`
- **Related:** composition, scout, echo, prism, drift
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/

### Scout = Web Fetcher

Reads the web safely. Each kind of action (search, fetch, download) needs its own permission.

- **It's like:** A researcher you send to the library with a specific shopping list.
- **Why the name:** A scout goes ahead to look. It brings back evidence, never decisions.
- **Technically:** Extension Domain for search, fetch, render and extraction of web content
- **Status:** Partial
- **Related:** extension
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/scout/

### Echo = Voice

Everything about speaking and listening.

- **It's like:** The phone line and the interpreter.
- **Why the name:** An echo is a voice returning.
- **Technically:** Extension Domain for speech: capture, transcription, synthesis, playback
- **Status:** Partial. A local speech probe exists outside the normal grant path.
- **Related:** extension, prism
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/echo/

### Prism = Vision & Media

Seeing and generating images, video and 3D, always with the source kept separate from the result.

- **It's like:** A photo lab.
- **Why the name:** A prism splits light into parts, like analysing an image into its components.
- **Technically:** Extension Domain for images, video, OCR, 3D and visual grounding
- **Status:** Partial. Only metadata schemas today; vision grants fail closed.
- **Related:** extension, echo
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/prism/

### Drift = Evaluator

Tests whether something actually meets its goal. Its findings are evidence, never automatic approval.

- **It's like:** Quality assurance with a lab notebook.
- **Why the name:** It measures how far results drift from the declared goal.
- **Technically:** Extension Domain for evaluation: trials, controls, findings, uncertainty
- **Status:** Designed
- **Related:** extension, shadow, soulforge
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/drift/

### Shadow = What-if Simulator

Tries alternatives in isolation without touching reality, then proposes the best for review.

- **It's like:** A flight simulator.
- **Why the name:** A shadow is an unreal copy. Imagination cannot write reality by itself.
- **Technically:** Extension Domain for isolated speculative branches and candidate worlds
- **Status:** Designed
- **Related:** drift
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/shadow/

### Soulforge = Model Trainer

Training or fine-tuning models from approved data. A human decides promotion.

- **It's like:** A training academy that hands graduates to HR for hiring decisions.
- **Why the name:** Where new soulstones are forged.
- **Technically:** Extension Domain for training: corpus admission, training runs, candidate weights
- **Status:** Designed
- **Related:** drift, soulstone
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/soulforge/

### Mirror = Persona Keeper

Keeps track of the assistant's personality profiles and who did what.

- **It's like:** An HR file with version history.
- **Why the name:** A mirror reflects an identity. A Persona is only part of identity and never grants authority.
- **Technically:** Extension Domain for versioned Persona identity and attribution
- **Status:** Designed
- **Related:** extension
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/extensions/mirror/

### Intercom / A2A = Agent-to-Agent Line

Lets your assistant ask another independent assistant for help. Replies are treated as foreign data.

- **It's like:** Calling another company's helpdesk: useful answers, but they cannot authorise anything in your office.
- **Why the name:** Liches talk to each other through "intents, not tensors": requests, never shared brains.
- **Technically:** Signed Agent-to-Agent protocol (A2A) to ask another sovereign agent to do a public task
- **Status:** Partial. Outbound only, public text only.
- **Related:** extension
- **Docs page:** https://lychd.snayu.ai/docs/sepulcher/intercom/

## Rules & process

How decisions and changes are made in the project.

### Covenant = Design Rule (ADR)

A written architecture decision: what was decided, why, and what future changes must respect.

- **It's like:** The building code. You can renovate, but not against code.
- **Why the name:** A covenant is a sacred binding agreement. The list stops at 42; new decisions amend an existing one.
- **Technically:** Architecture Decision Record in docs/adr/, numbered 00 to 42 (register closed)
- **Related:** xddd, state
- **Docs page:** https://lychd.snayu.ai/docs/adr/

### State of Work = What Actually Works

The honest status page. If it is not marked Available or Partial there, do not claim it works.

- **It's like:** The test report, as opposed to the brochure.
- **Why the name:** Not lore. Labels: Available, Partial, Operator validation, Designed, External.
- **Technically:** docs/state-of-the-work.md: the only place allowed to claim what is delivered
- **Related:** covenant
- **Docs page:** https://lychd.snayu.ai/docs/state-of-the-work/

### xDDD / Incantation = Docs-First Development

Write down what is true and what the rules are first, then build it.

- **It's like:** Architect's drawings before construction.
- **Why the name:** An incantation is the spoken words that come before magic. Words first, then the effect.
- **Technically:** eXtreme Documentation Driven Development: write the truth and boundaries first, then code
- **Related:** covenant
- **Docs page:** https://lychd.snayu.ai/docs/adr/01-doctrine/

### Iron Pact = The License (MPL-2.0)

Changes to LychD files you distribute must stay open. Your own separate files and client work stay yours.

- **It's like:** Borrow from the shared toolbox freely, but if you improve a shared tool, put it back improved.
- **Why the name:** A pact forged in iron cannot be broken.
- **Technically:** Mozilla Public License 2.0, no CLA
- **Docs page:** https://lychd.snayu.ai/docs/adr/00-license/
