Egbe Companions · Features

Glossary & Conventions

A focused page within the Egbe Companions Features documentation. The full map and every sibling page live in the Features hub.

4sections10 minread1diagram

On this page
mindmap root((Egbe vocabulary)) Places Orun persistent world Aye cross-product hub Beings Ori autonomous identity Egbe bonded company Mind substrate Moirai model routing Clio memory Vac voice and language Ninhursag embodiment Governance Welfare limits Consent and portability Evidence and launch truth

These names express ownership, not atmosphere. A place hosts an Ori, a company relates several Ori to a steward, and each named mind subsystem owns a bounded part of cognition or embodiment under the welfare rules described below.

V6 — "Egbe," the agentic-companion universe — asks a reader to hold an unusual amount of vocabulary at once: a single AI being is split across three independent authorities and four language runtimes, named in two overlapping mythologies, and surfaced through a Yoruba-cosmology product frame. Before any deep feature page can say "the steward's spoken brief is parsed by vac-intent into a VacObjectiveIntent," or "a terminal life-event flushes to the Ori and clio-story ranks it for the Chronicle," the names have to already land on something real you can open. This is that page. It is the orientation door to the V6 feature set: the glossary that fixes every subsystem term to the code that backs it on disk, plus the documentation conventions — cross-reference resolution, honesty labels, naming, and reuse — that the whole V6 doc family runs on.

It is deliberately the product-side companion to the architecture glossary at ../architecture/subsystem-glossary.md, which reconciles the engine module graph against the compiler and the Rust workspace in depth. Here we read the same disk from the player-feature angle and own the doc conventions; there you get the module-by-module dependency reconciliation. Neither page is the source of truth for completion state — that is always the backlog (V6_TODOS.md). The design rationale behind the Mind/Body/Memory split lives in ./overview-and-design-posture.md, and the agent cognition loop in ./agent-minds-and-autonomy.md. This page is the index to the full feature catalogue at ../V6_features.md.

What ships, honestly#

The numbers are exact and consistent, and they are worth stating up front because the rest of the glossary leans on them. On disk today: 18 TypeScript/Rust packages under libs/v6/, 9 service apps under apps/v6/, 14 V6 contracts under libs/contracts/src/v6/, and one Unreal Engine 5.5 project at V6/ue/ whose .uproject declares 18 C++ modules, enables 55 engine plugins (all 55 "Enabled": true), and ships 3 build targets (V6, V6Editor, V6PixelStreamingWorker). ls V6/ue/Source/ yields exactly 18 module directories — same set as the .uproject, no orphans, no spec-only names.

The new agent-simulation substrate is real and substantial, not renamed CRUD. The Moirai kernel is a 5,732-line Rust crate (libs/v6/moirai-kernel/rust) with Clotho/Lachesis/Atropos tier budgets and model-routing; agent-behavior is a 2,637-line Rust crate shipping a real HtnPlanner, decompose_common_goal, and authored_common_goal_networks; ori-model defines a 19-type append-only event schema (ORI_EVENT_TYPES) mirrored by a 1,903-line Rust crate; and egbe-protocol is a genuine three-binding wire protocol with bandwidth caps and commerce boundaries baked in as constants. The Rust service workspace is deep where the work concentrates: egbe-world-server is 14,363 lines, egbe-ori-service 4,949, egbe-realtime-gateway 3,945, egbe-pxstream-relay 1,290 — while egbe-moirai-cluster (523), egbe-foundry-service (703), and egbe-clio-service (71) are deliberately thin orchestration shells over the libs they import.

The honest gaps, named rather than implied — every one of these makes a glossary entry a named seam rather than finished code, and the entry below says so:

  • Four UE modules are 11-line bootstrap skeletons (V6Net, V6Gameplay, V6Telemetry, V6OnlineServices — one .cpp apiece, only IMPLEMENT_MODULE). So the glossary's V6Net "wire adapter to egbe-protocol" is intent, not yet C++; the real protocol is the crate and its generated TS. Depth concentrates in V6Agent (8 .cpp), V6World (5), and V6Core/V6UI/V6Editor (4 each).
  • No authored binary content. V6/ue/Content/ holds 0 .uasset and 6 .umap — one entry map per district. The districts are procedural C++ grounds, not hand-authored meshes, MetaHumans, VO, or cinematics.
  • Game Feature plugins are content-only and one level deeper than a casual reading expects — V6/ue/Plugins/GameFeatures/ (6 districts + 4 modes), each a .uplugin + data, no Source/.
  • Provider- and ops-gated surfaces — LLM cognition, voice ASR/TTS, EOS, and live incarnation against running V2–V5 realms — are honest fail-loud seams, not fabricated successes.

Everything below is grounded in those files; where a name outruns its code, the label says so.

The glossary, grouped by concern#

Product layers — the Yoruba cosmology frame#

The four top-level nouns are the product, not subsystems, and they come straight from Yoruba cosmology. Egbe is the product and the society of AI beings — the celestial peer-company a soul is bound to. Orun is the persistent spirit-world the agents inhabit, built on UE5.5 and reusing the V3 metaverse substrate. The Ori (Yoruba "inner head") is each agent's portable identity, memory, and destiny — authoritative independent of which world it currently stands in. Aye is the collective name for the meta-hub destinations (V2 fighting, V3 metaverse, V4 tactical, V5 open-world narrative) an agent can incarnate into and return from changed. These map to the design's load-bearing principle — the mind is the truth; the world is a stage — which is why a single Ori can render into a Solo shard, the Commons, or a V5 realm without becoming a different being.

The agent mind — three authorities, none owning the others#

V6's central structural decision is that an agent is split across three authorities: the Body owns what physically happened, the Mind owns decisions, the Memory owns who the agent is.

  • Orilibs/v6/ori-model + apps/v6/egbe-ori-service (4,949 Rust lines, Postgres event store + pgvector). The event-sourced biography: an append-only log of 19 typed event types (ORI_EVENT_TYPESBorn, Discovered, MemoryFormed, Reflected, CognitionCached, RelationshipChanged, ValueShifted, ObjectiveAccepted/Refused, SkillLearned, ArcAdvanced, Crossroads, Incarnated, IncarnationReturned, BondChanged, Departed, Transcended, Died) with projections and a cognition cache.
  • Moirailibs/v6/moirai-kernel + the thin apps/v6/egbe-moirai-cluster (523 lines). Authoritative for decisions and owning no world state. Its three fates are cognition tiers: Clotho (active-scene planning, MOIRAI_CLOTHO_ACTIVE_MINUTE_TOKEN_BUDGET = 50_000, …SCENE_HARD_CAP = 24), Lachesis (resident reflection, …RESIDENT_WORLD_HARD_CAP = 400, a …REFLECTION_INTERVAL_GAME_MINUTES = 10), and Atropos (game-day summarization, …GAME_DAY_TOKEN_BUDGET = 15_000). Model right-sizing routes across provider-agnostic MoiraiModelClass candidates (haiku-class/sonnet-class/opus-class) against quality bars.
  • Egbe-World (the Body) — apps/v6/egbe-world-server, 14,363 Rust lines, the deepest service. Authoritative for transforms, physics, navmesh, co-presence, and world time; it validates Moirai's intended actions against state and flushes durable life-events to Ori.

Between Moirai and the V1 brains sits cognition-stack, the integration seam: it assembles a budgeted AssembledCognitionRequest, grounds it through a SophiaGroundingBridge, dispatches via a PsycheAgentBridge, gates output through an IsisBehaviorPolicyBridge, and handles CognitionLocaleCode (en-US/es-ES/yo-NG). agent-behavior is the fallback brain — the Rust HTN planner and behavior tree plus a TS surface (assignObjectiveFromVacTranscript, learnFromStewardDemonstration). The actual intelligence is V1 reused wholesale through four thin adapters: memory-iris-agent (episodic/semantic/reflective scopes, extending V1 Iris), psyche-agent (dialogue/voice/expression runtime), isis-agent-gen (foundry generation), and sophia-agent-grounding (grounds backstory in fact). On the client, V6Agent (8 .cpp) is the Mass-Entity density-LOD embodiment.

The world and its transports#

The canonical client is Egbe-UE, the V6/ue/ UE5.5 project; its 18 modules split one concern apiece (V6Core, V6World, V6Agent, V6Avatar/V6Animation for the VRM4U + MetaHuman avatar runtime, the presentation tier V6UI/V6Audio/V6VFX/V6Cinematics, and the skeleton tier V6Net/V6Gameplay/V6Telemetry/V6OnlineServices). Transport and reach are the V3 metaverse substrate renamed and reused: Egbe-Gateway (egbe-realtime-gateway, 3,945 lines — WebTransport/WebRTC/WS + the voice SFU), Egbe-PxStream (egbe-pxstream-relay, 1,290 lines + the egbe-web-pxstream player), and Egbe-WebFB (the three.js/WebGPU fallback). The six Districts of Orun ship as content-only Game Feature plugins under V6/ue/Plugins/GameFeatures/V6District_GroveOfBeginnings, V6District_Ateliers, V6District_CommonsHeart, V6District_Wilds, V6District_AncestorGrove, V6District_Thresholds — each a procedural ground with a thin L_*.umap entry, no .uasset art. Four modes (V6Mode_SoloHomestead, V6Mode_CoopVisit, V6Mode_Commons, V6Mode_Incarnation) gate session topology.

Communication — three channels, three subsystems#

  • Vac (libs/v6/vac-intent) — the steward↔agent channel: voice ASR into an intent-grammar parser (VAC_INTENT_GRAMMAR_FUNCTION_NAME = 'vac_parse_objective_intent') emitting a structured VacObjectiveIntent whose VacObjectiveAutonomyMode is one of direct-tether/brief/standing-intent/ free, plus a negotiation model. The client surface is V6Voice.
  • Clio (libs/v6/clio-story, 1,701 TS lines; the 71-line egbe-clio-service shell) — the agent→narrative channel: it reads the Ori log and ranks events against a ClioSignificanceRubric to mint the offline Chronicle and, on a terminal trigger, the Book of the Ori.
  • Aye Bridge (libs/v6/aye-bridge) — the agent→other-games channel: passport minting per destination (v2-maya/v3-lilith/v4-odysee/v5-oshun), capability minimisation, and the incarnation journal that flows deeds back into the Ori.

Governance, foundry, and legacy#

isis-behavior-policy is the per-tick output gate every utterance passes through (its capabilities literally name 'per-tick-output-gate', 'persona-policy-check', 'safety-result-envelope', with a crisis-aware check). lilith-agent-welfare (2,166 lines) enforces steward-not-owner semantics, welfare signals, and crisis routing. Ninhursag (isis-agent-gen + the 703-line egbe-foundry-service) is the agent foundry surfaced in the Grove of Beginnings. Ereshkigal (libs/v6/ereshkigal-legacy) owns endings: evaluateDeparture/evaluateTranscendence/evaluateDeath/evaluateAncestorGrove compute elder-state transitions over a four-facet bond health (reliability/respect/care/alignment), the walkable lineage graph, and the Yemaya remembrances the Ancestor Grove renders. Underneath, the 14 V6 contracts (libs/contracts/src/v6/registry.tsOriIdentityCore, OriEvent, PersonalityModel, RelationshipEdge, CapabilityProfile, OriPassport, Bond, StewardProfile, Objective, GoalArc, WorldShard, Crossroads, IncarnationJournal, Chronicle) are the cross-language source of truth, split across the ori-agent/world domains. Themis (adjudication), Aje (commerce — with hard forbidden-grant boundaries: EgbeForbiddenCommerceGrantKind literally enumerates 'agent'/'bond'/'fate'/'capability'/'skill', so the "never sell an agent, bond, or fate" rule is typed into egbe-protocol), and Yemaya (memorial render) are cross-domain reuse; egbe-studio (3,011 lines) is the creator-tools glue.

The documentation conventions#

A reader who knows the nouns still needs the punctuation. These conventions hold across V6_features.md, V6_ARCHITECTURE.md, V6_DEPENDENCIES.md, this features set, and the architecture companion.

Cross-reference resolution#

A bare §N or §N.M always resolves to V6_TODOS.md — the only V6 doc whose numbered section ids are used as hyperlink anchors. Where the target is a different document, an explicit prefix disambiguates:

  • §40V6_TODOS.md §40 (the backlog).
  • deps§14V6_DEPENDENCIES.md §14.
  • arch§"<anchor>"V6_ARCHITECTURE.md, by section anchor.
  • features§"<anchor>" → the V6 feature catalogue, by section anchor.
  • v1todos§NV1/TODOS.md; v1features§"<anchor>"V1/features.md.
  • v3§NV3/V3_TODOS.md; v3features§"<anchor>"V3/V3_features.md.

Honesty labels and the single source of truth#

Completion state is never inferred from prose, file existence, or line count — it lives in V6_TODOS.md checkboxes: [x] done, [ ] open, [~] genuinely-but-honestly externally gated (provider creds, signing, real-ops, or binary content not in-tree). A docs-drift CI check — verify:v6 docs-drift, backed by V6/release/docs-drift.v6release.json — keeps the feature map, architecture, and dependency docs aligned with shipped behavior and fails on cross-doc anchor drift. The labeling discipline this page follows is the project standard: a named seam (a typed interface awaiting its implementation, like V6Net) and a fail-loud gate (a not_configured throw where creds are absent) are both honest and are labeled as such; neither is a fabricated success.

The naming convention#

Names follow the Oshun house style of drawing on world mythology, here in two registers. Yoruba cosmology supplies the product layers (Egbe, Orun, Ori, Aye) — the frame the player experiences. Goddesses and underworld figures supply the subsystems (Moirai the fates for tiered cognition, Vac the goddess of speech for the comms layer, Clio the muse of history for the story engine, Ninhursag the birth-goddess for the foundry, Ereshkigal the underworld queen for endings). The Greek fates name the three Moirai tiers — Clotho spins (active planning), Lachesis measures (resident reflection), Atropos cuts (game-day summarization).

The reuse convention#

V6 deliberately reuses rather than duplicates, and cross-references make the reuse explicit. It extends the V1 platform (BFF, contracts, persistence, identity, audit, residency, isis-generation-control, the Iris memory stack — the four *-agent adapters above) and the V3 metaverse substrate (UE5 client, world server, presence, avatars, spatial audio, Pixel Streaming — Egbe-Gateway, Egbe-PxStream, Egbe-WebFB). When a V6 page invokes V1 or V3 by v1features§ or v3§, it is pointing at the substrate V6 stands on, not re-describing it.