Glossary
These are the words the book uses without stopping, each as chapter 4 defined it. Terms in code are spelled the way they appear in a file or a command.
- agent identity
- What an authenticated agent is on a shared instance: its user, for the length of the session. It sees, writes and shares as that person, and the provenance of what it captures names the account and the client that acted for it.
- attachment
-
A file a person adds to an engram in Fluid, stored under the domain’s
assets/folder and referenced from the engram’s body. Agents read attachments back over MCP, and the sweep notices one nobody has analyzed. build_context-
The tool that walks out from an address, following relations and links one to three hops, and returns the neighbourhood ranked by how strongly each engram connects to the anchor. A
/*suffix anchors a whole folder. - contributor
- The higher of the two Reflection levels: a contributor reads and comments on a domain’s reflections, edits their text, creates, moves and deletes reflections and adds files to them. It grants nothing on the engrams, which have a level of their own (12 Reflection).
- crystalline:// address
-
The one absolute form of an engram’s address,
crystalline://<domain>/<permalink>. Anything without the scheme is domain-relative and takes its domain from context. - curator
- The right everyone from engram editor up holds on a domain’s Reflection, never set on its own: writing sections from the engrams, settling what people changed and editing the pact. Their agents curate with their rights, and Fluid shows them as curators.
- daemon
- The single process that holds the index open, watches the domain folders, embeds new engrams and answers every agent, terminal and browser tab. The first client to connect starts it; it stops only when told to.
- declared name
-
The name a domain gives itself in its manifest, as
domain_name. Links andcrystalline://addresses carry it, so it has to be unique among the domains people use together and stable over time. A machine may register the domain under a local name of its own, and the declared name still reaches it there. - domain
-
A registered folder of knowledge with a
MANIFEST.mdat its root, or a virtual domain that lives in the database with no folder. The manifest’sWhen to Usebullets are what route an agent to it. - engram
- One markdown file holding one unit of the agent’s own knowledge: YAML frontmatter, prose, observations and relations. The agent writes and organizes it for itself. The word comes from neuroscience, where it names the trace an experience leaves; here it’s the trace a session leaves behind, in a form the next session can pick up.
- evolve
-
The maintenance sweep,
crystalline evolveor theevolve_engramstool: a read-only, ranked queue of what the knowledge needs, in four families (temporal, structural, redundancy and meaning). Each finding is marked mechanical, for the agent to complete, or judgment, for a person to rule on. - evolve home
-
The one instance whose scheduled evolve runs work a team domain, named in the MANIFEST’s
evolve_home. Nobody sets it: the first scheduled run at an instance with a public address claims it, and every other copy of the domain refuses a scheduled run and names the home (14 The loops). - Fluid
-
The web UI the daemon serves at
localhost:7411, named for the fluid minds, human and model, that meet there on reflections, with a side door into the engrams for inspection. It has no store of its own; it shows the same files the agent reads. - frontmatter
-
The YAML block at the top of an engram holding its identity and state:
type,title,permalink,tags,status,recorded_at,generatedand the temporal fields when a fact is bounded. - GitHub App
- A team server’s own way into GitHub, created in Fluid or brought along, in place of one person’s sign-in. It reads, pulls and shares the team domains, and on a server with one each team domain follows its repository: a person’s role there decides what they may do with the domain (19 Identity and access).
- harness
-
The program that runs the model and hands it tools over MCP: Claude Code, the Codex CLI, the Copilot CLI, Cursor, Kiro, Gemini CLI, Qwen Code, Claude Desktop or any other MCP client.
crystalline install <harness>wires one up; Claude Desktop takes an extension instead, which starts the Crystalline you installed. On a Mac that runs only Desktop, for someone who’d rather not open a terminal, the Desktop-only bundle carries Crystalline inside. - home instance
-
The one instance where a team domain’s Reflection lives, the team server. Everyone works on the reflections there, laptops keep no copy and the server backs them up to their own branch of the domain’s repository. The MANIFEST names it in
reflection_home; the instance that runs the domain’s scheduled evolve is its evolve home. - local name
- The name one machine registered a domain under, which is the key in its config and the name in Fluid’s addresses there. Usually it’s the same as the declared name. The two differ when somebody picked another name on purpose, or when another domain here already holds the declared name, which leaves the domain shadowed. A name the domain had before a rename stays behind as an alias that still reaches it, unless another domain answers to that name.
MANIFEST.md-
The first file in every domain, itself an engram of
type: manifest. ItsScope,When to UseandNotes for Agentssections describe the domain and route tasks to it. - MCP
- The Model Context Protocol, the standard by which a harness hands tools to a model. Crystalline is an MCP server, and its tools are how an agent searches, reads, captures and refines knowledge.
- loop
- A domain’s reflect loop or evolve loop, run without a session: a runner checks on a schedule, or when the instance’s webhook calls, whether anything is due, and only then starts an agent that works the reflect queue or the sweep’s mechanical findings. It never waits for a yes, leaves what needs one for a person and delivers a team domain’s changes as a pull request (14 The loops). As an unattended run it reads only the domains everyone who reads its domain may read, and writes only into its domain.
- mechanical and judgment findings
- The two classes of sweep finding. A mechanical finding completes intent the archive already records, so the agent does it in a pass; a judgment finding would change what the archive claims, so it goes to a person as a proposal.
- membership level
- What an invited member of a private domain may do there: a viewer reads and searches, an editor also writes, a manager also runs the membership. A member at none sees no engrams and needs a Reflection level, or the membership is refused. Inside a private domain a write has to pass both the level and the instance role, and the lower of the two decides. On a domain under a server’s GitHub App the role on the repository decides instead, and membership levels don’t count.
- nudge
- The once-per-session reminder the stop hook delivers, asking the agent to review the conversation for durable learnings and propose capturing each. It costs about a hundred and twenty tokens.
- observation
-
A top-level bullet of the form
- [category] text #tagin an engram’s body: the atomic unit of knowledge, a fact, decision, gotcha or lesson, indexed on its own line. A task item,- [ ],- [x]or- [~], is no observation. - OKF
- Google’s Open Knowledge Format, version 0.2, the markdown-plus-frontmatter format an engram extends. Unknown keys survive every write, so a document from any OKF tool drops in and comes back out intact.
- overlay
- A per-actor private layer of drafts above a team domain in review mode, where the on-disk folder changes only by pull. A draft is visible to its author alone until it is shared, reviewed and merged.
- owner
- The one person answerable for a private domain. Only the owner or an instance admin changes its visibility, transfers it or deletes it; a manager can do none of those.
- pact
-
A domain’s
PACT.md, at the root of itsreflections/folder, in five parts: who the reflections are for, how much detail they carry, how they’re presented, how the tree is structured and which pages people asked for. The MANIFEST tells the agent what the domain holds, the pact tells everyone how to talk about it. Curators edit it, and everybody else proposes a change in a thread. - permalink
- The half of an address that links point at, derived from the title, with the folder prefix in front when the engram lives in a subfolder. A move carries it to the new folder unless it was chosen by hand.
- possible contradiction
-
Two observation lines in two current engrams of one domain that a local model reads as saying opposite things, finding code
V302. It’s a question the agent brings to you, never a verdict, and the check is off untilevolve.contradictionsis set tofull. - private domain
- A domain visible only to its owner, the instance’s admins and invited members, and on a server with a GitHub App only to the admins and the repository’s collaborators. To everyone else it reads as absent rather than forbidden.
- prompt hook
-
The hook
crystalline installwires to run on every prompt: in Claude Code and Codex it puts up to three engrams that may fit the prompt in front of the agent, named by address and each once per session. Copilot gets the entry and stays quiet. - proposal
-
A unit of knowledge sent for review from a team domain with
share_changes: a pull request in the team’s repository that a person reviews and merges, and that the agent never merges itself. It is how a team domain shares by default; a domain whose MANIFEST sayssharing: directcommits a share straight onto the branch instead. Outside review mode proposals stack, and one is amended in place by sharing again with its number. - provisioning
-
The mechanism by which a domain ships skills, commands, subagent definitions and MCP server configs into a harness. It is declared in the manifest’s
Provisioningsection and installed only after a person allows it, per domain and per machine. - read-only domain
-
A domain whose MANIFEST says
read_only: on. Every write into it through Crystalline is refused, whoever asks, while team pulls, the index and search keep working and the sweep skips it. Its owner or an instance admin switches it off in the domain policies, never an agent (Read-only domains). - reader
- The lower of the two Reflection levels: a reader reads a domain’s reflections and comments on them (opening, answering, resolving and reopening threads). A viewer of the engrams is a reader without anyone setting it.
- Reflection
- The place where people and the agent meet on a domain, with a mode of its own in Fluid. Switched on in the MANIFEST, it has the agent present what it knows as reflections, at the level the pact agrees on; people read, change and comment, and what holds up goes back into the engrams (12 Reflection).
- reflection
-
One document in a domain’s Reflection: a markdown file under the domain’s
reflections/folder, made of sections (a##heading and its text), each of which records the engrams it was built from. - Reflection collaborator
- An account given the Reflection of one domain, as reader or contributor, without any other change to its access. The grant only raises and never opens an engram, it works for an account with the instance role none, and on a domain whose access follows GitHub it’s the way in for somebody GitHub doesn’t know (19 Identity and access).
- relation
-
A top-level bullet of the form
- rel_type [[Target]]: a typed edge in the knowledge graph, shown back on the target’s page as a backlink.depends_on,supersedesandrelates_toare common types, and a split links its two halves withderived_fromandsplit_into. - review mode
-
A private overlay per actor over a team domain’s shared folder: every write lands in the writer’s own overlay and the folder changes only with what lands on the team’s branch. Set per domain in its registration as
review: overlay. It needs a GitHub origin, so a virtual domain refuses it, and no tool turns it on: an agent does not decide how a team reviews. - routing prompt
-
The briefing an agent receives at session start: one line per domain from the manifests’
When to Usebullets, plus the behaviour rules.crystalline prompt systemprints it. - salience
- A number from zero to ten in an engram’s frontmatter that gives hybrid search a small, bounded lift for the rare engram everything else hangs from. Relevance keeps the upper hand and nothing is ever excluded by it.
- share on purpose
- A person’s yes that lets a Reflection page carry text drawn from a domain fewer people may read than the page. Only a person gives it, never a run or an agent nobody signed in for, and it counts once per person, page and domain until the page’s readers widen (20 Knowledge across domains).
- share-link
- A revocable link that opens one engram in one person’s overlay to one colleague, who reads it and, after joining the draft, edits it in the normal editor where the domain’s write right allows. It is the only way one person’s drafts are ever visible to another.
- source (of a domain)
-
Where a domain comes from on one machine: the machine itself or one server its Crystalline is connected to. Every domain has exactly one source, a write always goes there and a server’s domains appear beside the local ones under one name each (Domains from shared servers). It isn’t an engram’s
sourceslist, which names the places the engram was distilled from. - split
-
To move part of an engram into an engram of its own: by granularity, a distilled summary beside a source engram holding the full text, or by validity, when one fact expires while the rest holds. The new engram carries the source’s tags and type, a
stablestatus and no validity window, and the pair is linked withderived_fromandsplit_into. - status
-
The frontmatter field that says whether the knowledge holds.
stableis the default;deprecated,superseded,archivedandlegacyare the retirement set, which fades an engram in ranking without removing it. The field is required and free form. - supersede
-
To retire a fact that was true and stopped being: write the replacement as a new engram with
supersedes, set the old one tosupersededwith a realvalid_toand asuperseded_by, and carry any lesson forward. A fact that was never quite true is corrected in place instead. When only part of the engram has expired, first split out the facts that still hold, then retire what is left. - tag alias
-
A fold recorded in the manifest’s
Tag Aliasessection whencrystalline tags mergeunifies two spellings, so a filter on the old tag still finds what it always found. - team domain
- A domain whose files also live in a GitHub repository, tracked through an origin, with knowledge travelling between members as proposals or as direct commits where the MANIFEST says so. It needs no git on any machine.
- temporal validity
-
The window in which a fact holds,
valid_fromandvalid_to, as plain dates. Absentvalid_frommeans always valid, absentvalid_tomeans valid forever.stale_afterasks for a re-check by a date andsource_datesays when the source was written. - tombstone
- The mark a deletion leaves in an actor’s overlay, hiding the file for that actor until a merged share removes it for everyone.
- unattended run
- A session nobody is behind, such as a scheduled loop run. It reads only the domains everyone who reads its domain may read, writes only into that domain and is never asked a question (14 The loops).
- verification
-
The
verifiedfrontmatter entry,{ by, at }plus the model when an agent verified, that records a re-check finding a fact still true, one entry per verifier. The sweep stops asking about a verified engram on age alone. - virtual domain
- A domain that lives in the database with no folder on disk, for a container without a writable volume. It carries the same manifest and answers to the same tools.
- write list
-
The domains an account may write to, each named or given as a prefix with
*. Every other domain is read-only for that account while it still reads what it can see, and a list only takes rights away (16 Running a shared instance).