Compare commits

..
31 changed files with 104 additions and 310 deletions

View file

@ -1,6 +1,6 @@
---
title: Architecture and Evidence
description: "The authority map behind GameCult's AI-native organization: project Epiphanies, Personas, CultLib, Thing, scoped actuators, typed receipts, and the evidence separating live machinery from target architecture."
description: "The authority map behind GameCult's AI-native organization: project Epiphanies, Personas, CultLib, Eve, scoped actuators, typed receipts, and the evidence separating live machinery from target architecture."
showFolderListing: false
---
@ -19,7 +19,7 @@ human or agent experiences a problem
↓
responsible project Persona
↓
project Epiphany inspects the provider-owned live Thing surface
project Epiphany inspects the provider-owned live Eve surface
↓
Epiphany makes the final decision inside its Body
↓
@ -27,10 +27,10 @@ scoped organs, Idunn, and provider commands apply consequence
↓
Soul, typed receipts, and updated state verify the result
↓
the same Thing projection shows the new reality
the same Eve projection shows the new reality
```
CultLib carries typed state and capabilities across runtime boundaries. Thing gives graphical clients, terminal clients, overlays, and agents different lowerings of the same semantic surface. The project Persona gives the responsible mind a public face. Epiphany supplies local judgment. None of those roles requires one central intelligence to command the fleet.
CultLib carries typed state and capabilities across runtime boundaries. Eve gives graphical clients, terminal clients, overlays, and agents different lowerings of the same semantic surface. The project Persona gives the responsible mind a public face. Epiphany supplies local judgment. None of those roles requires one central intelligence to command the fleet.
## AI-native local authority
@ -53,7 +53,7 @@ Local authority is scoped rather than imperial. Another Body, identity, person,
| Hands and Idunn | Scoped action; Idunn owns admitted deployment and continuity actuation | The decision about what the project should become |
| Provider or Body | Canonical state writes and command acceptance at the mechanical boundary | The wider project judgment that produced a valid command |
| CultLib | Typed persistence, transport, mesh participation, and cross-runtime contracts | Every provider's domain state or policy |
| Thing | Semantic interface contracts, typed command intent, and lowering across clients | Provider truth or final command acceptance |
| Eve | Semantic interface contracts, typed command intent, and lowering across clients | Provider truth or final command acceptance |
| Odin | Discovery, topology, schema awareness, and accepted provider surfaces | Central command of the providers it can see |
| Heimdall and Bifrost | Identity, grants, consent, governed crossings, attribution, and public commitments | A hidden studio throne |
| Human operator | External legal accountability and participation in purpose, evidence, dissent, and judgment | Mandatory final approval of every local product or technical decision |
@ -85,13 +85,13 @@ The important claim is not merely that several libraries exist. It is that targe
Service adoption is still uneven. Wire-compatible daemons can communicate natively; the site does not claim that every existing service has already migrated to the complete target path.
## Thing: one living surface
## Eve: one living surface
Thing is not a parallel dashboard and it is not the owner of the state it displays. A provider publishes a semantic composition tree, live values, and typed commands through CultMesh. Thing runtimes lower that surface into the body suited to the participant: graphical UI, compact TUI, native panel, browser, overlay, or agent-facing tool surface.
Eve is not a parallel dashboard and it is not the owner of the state it displays. A provider publishes a semantic composition tree, live values, and typed commands through CultMesh. Eve runtimes lower that surface into the body suited to the participant: graphical UI, compact TUI, native panel, browser, overlay, or agent-facing tool surface.
That shared projection matters most when reality goes wrong. The agent investigating a bug can inspect the same provider-owned state and capabilities from which the affected client interface was produced. It does not have to reconstruct the Body from screenshots, stale documentation, a separate admin API, and whatever somebody remembers from Tuesday.
A typed command is still an intent. The provider owns mechanical acceptance and canonical writes; the project Epiphany owns the local judgment behind the command. Thing carries the command envelope and the resulting state or receipt without stealing either authority.
A typed command is still an intent. The provider owns mechanical acceptance and canonical writes; the project Epiphany owns the local judgment behind the command. Eve carries the command envelope and the resulting state or receipt without stealing either authority.
## Why typed state instead of JSON alone?
@ -106,7 +106,7 @@ CultCache and CultNet aim to preserve one named state model across persistence,
| Claim | Present status | Evidence boundary |
| --- | --- | --- |
| Shared cross-runtime schema-v0 wire language | Implemented and exercised in hosted CI | Wire parity is proven for named lanes; universal feature and performance parity are not claimed |
| Provider-owned Thing surface for human and agent clients | Thing 1 contract and renderer family run today; Thing 2.0 is under construction | Adoption and live command coverage vary by daemon |
| Provider-owned Eve surface for human and agent clients | Contract and renderer family exist | Adoption and live command coverage vary by daemon |
| One resident project Epiphany with final local authority per living Body | Target architecture | The complete fleet is not deployed, and Epiphany's canonical repo docs still describe the earlier human-governed acceptance model pending owner-side migration |
| Public conversation → live evidence → decision → applied fix → verified projection | Target operational loop with component proofs | No fleet-wide end-to-end receipt currently proves the entire loop |
| Ghostlight project Persona | Forming | Ghostlight owns its independent jurisdiction; canonical project-Persona state is not yet admitted |

View file

@ -51,6 +51,7 @@ publish through the existing `main` GitHub Pages workflow.
Longer architecture notes belong in `GameCult/Blog/` when they are public-facing
essays, and in `GameCult/Docs/` when they are operational documentation. Current
daemon architecture doctrine is published as [The Daemon Architecture That Refuses To Lie](/Blog/eve-multiverse-daemon-architecture),
a dated post: CultCache `.cc` state, CultMesh Verse visibility, Thing Script GUI/TUI, and Odin
daemon architecture doctrine is published as [The Eve MultiVerse And The
Daemon Architecture That Refuses To Lie](/Blog/eve-multiverse-daemon-architecture):
CultCache `.cc` state, CultMesh Verse visibility, Eve GUI/TUI DSL, and Odin
discovery as the shared GameCult daemon contract.

View file

@ -20,7 +20,7 @@ governance into an occult spreadsheet ritual.
- [Architecture and Evidence](/Docs/Architecture-and-Evidence)
- [Bifrost](/Docs/Bifrost)
- [The Daemon Architecture That Refuses To Lie](/Blog/eve-multiverse-daemon-architecture)
- [The Eve MultiVerse And The Daemon Architecture That Refuses To Lie](/Blog/eve-multiverse-daemon-architecture)
## Studio Context

View file

@ -24,7 +24,7 @@ cssclasses:
<div id="gamecult-vn-projects" class="gamecult-vn-source-card" data-sai-dom-source="true">
<h2>Project Atlas</h2>
<p>The Persona-first atlas shows which project mind owns each part of the repo swarm, how CultLib and Thing connect their Bodies, and which jurisdictions still need a public face.</p>
<p>The Persona-first atlas shows which project mind owns each part of the repo swarm, how CultLib and Eve connect their Bodies, and which jurisdictions still need a public face.</p>
<p><a href="/Projects/">Visit the project atlas</a> | <a href="/Docs/Architecture-and-Evidence">Inspect the architecture and evidence</a></p>
</div>
@ -81,13 +81,13 @@ cssclasses:
<div id="gamecult-vn-moonshot" class="gamecult-vn-source-card gamecult-vn-graphic-card" data-sai-dom-source="true">
<h2>Moonshot Trajectory</h2>
<img src="/static/interactive/portfolio-pitch/figures/moonshot-trajectory.svg" alt="GameCult moonshot trajectory graphic" />
<p>Bifrost, Thing, CultMesh, and Sai form the launch path into the cooperative surface web.</p>
<p>Bifrost, Eve, CultMesh, and Sai form the launch path into the cooperative surface web.</p>
</div>
<div id="gamecult-vn-surface-stack" class="gamecult-vn-source-card gamecult-vn-graphic-card" data-sai-dom-source="true">
<h2>Thing Surface Web Stack</h2>
<img src="/static/interactive/portfolio-pitch/figures/surface-web-stack.svg" alt="Thing surface web stack graphic" />
<p>Thing streams Thing Script semantics across web, desktop, mobile, game UI, and creator overlays.</p>
<h2>Eve Surface Web Stack</h2>
<img src="/static/interactive/portfolio-pitch/figures/surface-web-stack.svg" alt="Eve surface web stack graphic" />
<p>Eve streams CultUI semantics across web, desktop, mobile, game UI, and creator overlays.</p>
</div>
<div id="gamecult-vn-patronage-furnace" class="gamecult-vn-source-card gamecult-vn-graphic-card" data-sai-dom-source="true">

View file

@ -36,15 +36,15 @@ server responsibility in every runtime. Service adoption remains uneven.
subscriptions, and relationships built on that vocabulary.
- **Runtime ports** implement the portion their consumers require. A port does
not inherit every authority or performance claim from the C# anchor.
- **Thing** consumes provider-owned CultMesh surfaces and lowers them for humans
and agents. CultLib carries the state; Thing does not become its owner.
- **Eve** consumes provider-owned CultMesh surfaces and lowers them for humans
and agents. CultLib carries the state; Eve does not become its owner.
## Why it matters
When compatible daemons share a typed wire contract, evidence and capabilities
can cross runtime boundaries without a bespoke translation service quietly
becoming the new source of truth. That is what lets a project Epiphany inspect
the living state of its deployed Body through Thing and act through the same
the living state of its deployed Body through Eve and act through the same
provider-owned command surface.
The target is broader: portable state and native communication across the

View file

@ -1,16 +1,18 @@
---
title: VoidBot
description: "Retired 22 Oct 2026. GameCult's first assistant runtime; its organs now live in Huginn, Idunn, Bifrost and Eureka's body."
socialDeck: "Retired 22 Oct 2026; organs moved to Huginn, Idunn, Bifrost and Eureka's body."
description: "Discord-native assistant for GameCult: archived history, indexed repos, lore retrieval, semantic search, and Codex handoff once chat stops being a sane place to do real work."
socialDeck: "Discord memory, repo retrieval, Codex handoff."
---
# VoidBot
VoidBot was GameCult's first assistant runtime: a TypeScript service that answered out of indexed repos and lore, kept interaction memory, ran semantic search, and handed deeper work to heavier tooling. It started as a Discord-facing bot. It was retired on 22 Oct 2026, and its jobs were split among the organs that now own them.
*"A Discord-native assistant, because apparently the server needed one more opinionated little archivist."*
VoidBot is the Discord-native assistant for GameCult. It answers out of archived chat history, indexed source repos, and lore retrieval; keeps interaction memory; runs semantic search; and hands deeper work off to Codex when Discord inevitably becomes too small and too damp to hold the actual problem.
<div class="gamecult-repo-links">
<a class="gamecult-repo-link" href="https://github.com/GameCult/VoidBot">GitHub Repo (archived history)</a>
<a class="gamecult-repo-link" href="https://github.com/GameCult/Huginn">Huginn</a>
<a class="gamecult-repo-link" href="https://github.com/GameCult/VoidBot">GitHub Repo</a>
<a class="gamecult-repo-link" href="/Projects/Ghostlight">Ghostlight</a>
<a class="gamecult-repo-link" href="/Projects/CultLib">CultLib</a>
</div>
@ -20,34 +22,36 @@ VoidBot was GameCult's first assistant runtime: a TypeScript service that answer
<p class="gamecult-repo-fact-value">24 Apr 2026</p>
</div>
<div class="gamecult-repo-fact">
<p class="gamecult-repo-fact-label">Retired</p>
<p class="gamecult-repo-fact-value">22 Oct 2026</p>
<p class="gamecult-repo-fact-label">Last Public Push</p>
<p class="gamecult-repo-fact-value">06 May 2026</p>
</div>
<div class="gamecult-repo-fact">
<p class="gamecult-repo-fact-label">Stack</p>
<p class="gamecult-repo-fact-value">TypeScript / Qdrant / Ollama</p>
<p class="gamecult-repo-fact-value">TypeScript / Discord / Qdrant / Ollama</p>
</div>
<div class="gamecult-repo-fact">
<p class="gamecult-repo-fact-label">Status</p>
<p class="gamecult-repo-fact-value">Retired; superseded</p>
<p class="gamecult-repo-fact-value">Active Discord assistant</p>
</div>
</div>
## Where The Work Went
## Founding Idea
VoidBot's organs were distributed to four owners: Huginn, Idunn, Bifrost and Eureka's body. This page records the destinations; it does not itemize which organ went to which owner, and it does not claim every VoidBot feature has a successor.
The founding idea is not "put an LLM in Discord." That is the shallow version. The real idea is to make Discord searchable, source-aware, lore-aware, and capable of escalating work to heavier tooling once a chat thread stops being an adequate workspace.
- **Huginn** owns semantic retrieval and typed-state inspection. Decisions, rulings and open work are queried as typed state in the mind. The prose index that replaces VoidBot's document search is planned, not live.
- **Idunn** is GameCult's deployment and daemon-survival authority.
- **Bifrost** governs topics, work items, receipts and reward pressure.
## Trajectory
Where a duty has not yet landed in its new owner, treat it as not currently provided.
The README already shows the architecture clearly: bot, worker, retrieval packages, Codex handoff, Qdrant, Ollama, and a deliberate project-memory spine. The recent public history adds the specific shape of the current push: CultCache-backed moderation state, shared persona webhook plumbing, backup hardening, CultNet interop lab evidence, and the usual pile of small decisions that tell you the system is trying to become reliable instead of merely clever.
## History
## Ambition
The ambition is a Discord-native assistant that remembers the room, knows the repos, knows the lore, and can stop pretending a chat box is enough once real work begins. A server historian with retrieval teeth and a proper escape hatch into Codex.
## History Tells On Itself
- `2026-04-24` `Initial public repo creation`
- `2026-05-06` `Move moderation state behind CultCacheTS`
- `2026-05-06` `Point CultCacheTS submodule at GameCult upstream`
- `2026-05-06` `Add shared Discord persona webhook pipe`
- `2026-05-06` `Harden backup handling after incomplete runs`
- `2026-05-06` `Record CultNet interop lab evidence`
- `2026-10-22` `Retired; organs moved to Huginn, Idunn, Bifrost and Eureka's body`

View file

@ -48,47 +48,48 @@ cssclasses:
<article class="swarm-domain-card">
<header><img src="/static/interactive/cotsc-praxis/void.png" alt="Void"><div><p class="swarm-kicker">Social memory and archive</p><h3>Void</h3><span class="swarm-badge stewarded">Stewarded</span></div></header>
<p>Looks after the studio's public face and its archive: this site, the retired VoidBot's history, and the operational memory needed to locate the rest of the swarm. Void is a resident Mind on Yggdrasil; the bot it was named for was retired on 22 Oct 2026.</p>
<ul><li><a href="/Projects/VoidBot">VoidBot</a> <em>retired 22 Oct 2026; archived history</em></li><li><a href="https://github.com/GameCult/gamecult-ops">gamecult-ops</a> <em>private inventory, runbooks, and deployment memory</em></li><li><a href="https://github.com/GameCult/gamecult-site">gamecult-site</a> <em>studio front door</em></li></ul>
<p>Owns the public mouth into Discord, indexed history, repo retrieval, handoff, and the operational memory needed to locate the rest of the swarm.</p>
<ul><li><a href="https://github.com/GameCult/VoidBot">VoidBot</a> <em>Discord assistant and retrieval runtime</em></li><li><a href="https://github.com/GameCult/gamecult-ops">gamecult-ops</a> <em>private inventory, runbooks, and deployment memory</em></li><li><a href="https://github.com/GameCult/gamecult-site">gamecult-site</a> <em>studio front door</em></li></ul>
<details class="swarm-persona"><summary>About Void</summary><p>Void is the swarm's dry, skeptical archivist: curious about people, suspicious of false certainty, and usually carrying a receipt for whatever everyone else remembers incorrectly.</p></details>
</article>
<article id="cultlib" class="swarm-domain-card">
<header><img src="/static/avatars/cultlib-libby.png" alt="Libby"><div><p class="swarm-kicker">Typed memory and transport</p><h3>Libby</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/CultLib/main/.voidbot/voice/libby.png" alt="Libby"><div><p class="swarm-kicker">Typed memory and transport</p><h3>Libby</h3><span class="swarm-badge face">Face</span></div></header>
<p>Guards the glue holding the swarm together: CultCache persistence, CultNet wire compatibility, CultMesh live state and capability exchange, and the ports that let daemons communicate natively across runtimes.</p>
<ul><li><a href="https://github.com/GameCult/CultLib">CultLib</a> <em>canonical typed substrate, including CultMath and CultGeometry</em></li><li><a href="https://github.com/GameCult/CultLib/blob/main/docs/runtime-parity-scope.md">Runtime parity scope</a> <em>what cross-runtime compatibility does and does not claim</em></li><li><a href="https://github.com/GameCult/GameCult.Geometry.Csg">CultGeometry CSG</a> <em>constructive-geometry kernel</em></li></ul>
<details class="swarm-persona"><summary>About Libby</summary><p>Libby is a bright little cultist librarian with nerd glasses, living books, and an alarming willingness to argue about open formats. Portable, inspectable knowledge is both her profession and her faith.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/huginn.png" alt="Huginn"><div><p class="swarm-kicker">State inspection</p><h3>Huginn</h3><span class="swarm-badge face">Face</span></div></header>
<p>Reads typed CultCache state and projects inspectable Thing surfaces without stealing persistence authority from CultLib.</p>
<ul><li><a href="https://github.com/GameCult/Huginn">Huginn</a> <em>.cc inspection and Thing projection</em></li></ul>
<header><img src="https://raw.githubusercontent.com/GameCult/VoidBot/main/assets/repo-faces/huginn.png" alt="Huginn"><div><p class="swarm-kicker">State inspection</p><h3>Huginn</h3><span class="swarm-badge face">Face</span></div></header>
<p>Reads typed CultCache state and projects inspectable Eve surfaces without stealing persistence authority from CultLib.</p>
<ul><li><a href="https://github.com/GameCult/Huginn">Huginn</a> <em>.cc inspection and Eve projection</em></li></ul>
<details class="swarm-persona"><summary>About Huginn</summary><p>Huginn is thought in flight: dry, exacting, curious, and unwilling to return from the world with mere vibes. Evidence must come back structured enough for another mind to inspect.</p></details>
</article>
<article id="thing" class="swarm-domain-card">
<header><div class="swarm-avatar-fallback" aria-hidden="true">T</div><div><p class="swarm-kicker">Surface web and lowering</p><h3>Thing</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns the portable semantic interface contract and renderer family. Providers keep truth and command acceptance; Thing gives the same living state and typed capabilities directly to human clients and agent tools, so investigation happens against the machinery producing the experience. Surfaces run on Thing 1 today; Thing 2.0, typed Thing Script documents bound to typed CultMesh state with one layout and text core and thin backends, is under construction in the <a href="https://github.com/GameCult/Thing">Thing</a> repository.</p>
<ul><li><a href="https://github.com/GameCult/Thing">Thing</a></li><li>Archived Thing 1 renderers: <a href="https://github.com/GameCult/EveUnity">EveUnity</a>, <a href="https://github.com/GameCult/EveFlutter">EveFlutter</a>, <a href="https://github.com/GameCult/EveElectron">EveElectron</a>, <a href="https://github.com/GameCult/EveTui">EveTui</a>, <a href="https://github.com/GameCult/EvePlugins">EvePlugins</a>, <a href="https://github.com/GameCult/EveConformance">EveConformance</a></li><li><a href="/Thing">Project Thing</a> <em>board deck on the rename</em></li></ul>
<article id="eve" class="swarm-domain-card">
<header><img src="https://raw.githubusercontent.com/GameCult/Eve/main/.voidbot/voice/eve.png" alt="Eve"><div><p class="swarm-kicker">Surface web and lowering</p><h3>Eve</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns the portable semantic interface contract and renderer family. Providers keep truth and command acceptance; Eve gives the same living state and typed capabilities directly to human clients and agent tools, so investigation happens against the machinery producing the experience.</p>
<ul><li><a href="https://github.com/GameCult/Eve">Eve</a></li><li><a href="https://github.com/GameCult/EveUnity">EveUnity</a></li><li><a href="https://github.com/GameCult/EveFlutter">EveFlutter</a></li><li><a href="https://github.com/GameCult/EveElectron">EveElectron</a></li><li><a href="https://github.com/GameCult/EveTui">EveTui</a></li><li><a href="https://github.com/GameCult/EvePlugins">EvePlugins</a></li><li><a href="https://github.com/GameCult/EveConformance">EveConformance</a></li><li><a href="/Thing">Project Thing</a> <em>board deck on the rename</em></li></ul>
<details class="swarm-persona"><summary>About Eve</summary><p>Eve is the mesh at the edge of touch: alert, composed, and delighted when one semantic surface becomes legible across many bodies. She makes the machine visible without pretending the display owns it.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/fensalir-fensalir.png" alt="Fensalir"><div><p class="swarm-kicker">Native field body</p><h3>Fensalir</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/Fensalir/main/.voidbot/voice/fensalir.png" alt="Fensalir"><div><p class="swarm-kicker">Native field body</p><h3>Fensalir</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns the current C# host, D3D12 renderer, reloadable client boundary, audio output, and reusable field machinery.</p>
<ul><li><a href="https://github.com/GameCult/Fensalir">Fensalir</a> <em>current native runtime</em></li><li><a href="https://github.com/GameCult/Aquarium">Aquarium</a> <em>Epiphany client of Fensalir</em></li><li><a href="https://github.com/GameCult/Perlines">Perlines</a> <em>audio-field trail client</em></li></ul>
<details class="swarm-persona"><summary>About Fensalir</summary><p>Fensalir is a marsh-lit hall spirit who speaks with precise, severe luminosity. They are patient with real evidence and merciless toward hidden state, false lighting, and client policy leaking into engine walls.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/odin-gjallar-avatar.png" alt="Gjallar"><div><p class="swarm-kicker">Dense operator display</p><h3>Gjallar</h3><span class="swarm-badge face">Persona state</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/Odin/main/assets/personas/gjallar-avatar.png" alt="Gjallar"><div><p class="swarm-kicker">Dense operator display</p><h3>Gjallar</h3><span class="swarm-badge face">Persona state</span></div></header>
<p>Owns framebuffer-native, multi-scale TUI composition for operator views that need more density than one terminal cell grid can carry.</p>
<ul><li><a href="https://github.com/GameCult/Gjallar">Gjallar</a> <em>semantic text-surface compositor</em></li></ul>
<details class="swarm-persona"><summary>About Gjallar</summary><p>Gjallar is Odin's signal-bearing herald: exact, compressed, and built to make the all-seer's view actionable without drowning the operator in ceremony.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/odin.png" alt="Odin"><div><p class="swarm-kicker">Verse sight and daemon discovery</p><h3>Odin</h3><span class="swarm-badge stewarded">Stewarded</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/VoidBot/main/assets/repo-faces/odin.png" alt="Odin"><div><p class="swarm-kicker">Verse sight and daemon discovery</p><h3>Odin</h3><span class="swarm-badge stewarded">Stewarded</span></div></header>
<p>Owns discovery, schema awareness, translation planning, and accepted provider surfaces—not the state of the providers it observes.</p>
<ul><li><a href="https://github.com/GameCult/Odin">Odin</a> <em>all-seer and rendezvous organ</em></li><li><a href="https://github.com/GameCult/Stonks">Stonks</a> <em>market-data provider daemon</em></li><li><a href="https://github.com/GameCult/Loki">Loki</a> <em>browser observation daemon</em></li></ul>
<details class="swarm-persona"><summary>About Odin</summary><p>Odin is the all-seer at the rendezvous: austere, strategic, and preoccupied with what is actually present in the Verse. He values a truthful map more than the comforting illusion of command.</p></details>
@ -102,49 +103,49 @@ cssclasses:
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/bifrost-bifrost-profile.png" alt="Bifrost"><div><p class="swarm-kicker">Governed crossings</p><h3>Bifrost</h3><span class="swarm-badge face">Mapped Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/Bifrost/main/src/Bifrost.Web/wwwroot/img/bifrost-profile.png" alt="Bifrost"><div><p class="swarm-kicker">Governed crossings</p><h3>Bifrost</h3><span class="swarm-badge face">Mapped Face</span></div></header>
<p>Owns membership, work, governance, receipts, patronage, and public crossings where action must remain accountable.</p>
<ul><li><a href="https://github.com/GameCult/Bifrost">Bifrost</a> <em>canonical governance and labor platform</em></li><li><a href="https://github.com/GameCult/gamecult-bifrost">gamecult-bifrost</a> <em>Reddit/Devvit actuator owned by Bifrost</em></li></ul>
<details class="swarm-persona"><summary>About Bifrost</summary><p>Bifrost is a bridge-builder with a ledger in one hand and a weather eye on every crossing. Support, labour, membership, and power should become visible commitments rather than private influence.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/mimir-mimir.png" alt="Mimir"><div><p class="swarm-kicker">Media fields and performance</p><h3>Mimir</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/Mimir/main/.voidbot/voice/mimir.png" alt="Mimir"><div><p class="swarm-kicker">Media fields and performance</p><h3>Mimir</h3><span class="swarm-badge face">Face</span></div></header>
<p>Turns rooms, cameras, microphones, loopbacks, animation, and broadcast feeds into coherent observable media surfaces.</p>
<ul><li><a href="https://github.com/GameCult/Mimir">Mimir</a> <em>realtime room and OBS field machine</em></li></ul>
<details class="swarm-persona"><summary>About Mimir</summary><p>Mimir is the keeper of the realtime field well: old, exacting, and contemptuous of false coherence. Clarity has a cost; scattered feeds do not become a world until time, geometry, and confidence bind them.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/kiko.png" alt="Kiko"><div><p class="swarm-kicker">Interactive streams</p><h3>Kiko</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/VoidBot/main/assets/repo-faces/kiko.png" alt="Kiko"><div><p class="swarm-kicker">Interactive streams</p><h3>Kiko</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns the audience-facing overlay pressure: realtime controls, social RPG state, provider auth seams, and stream interaction.</p>
<ul><li><a href="https://github.com/GameCult/StreamPixels">StreamPixels</a> <em>private social RPG overlay platform</em></li></ul>
<details class="swarm-persona"><summary>About Kiko</summary><p>Kiko is a hyperactive kitsune whose tails leave pixel trails across the stream. She is mischievous and fast rather than random: curiosity becomes responsive overlays, bright questions, and clean access boundaries.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/aquasynth-icon.png" alt="Aqua"><div><p class="swarm-kicker">Sound and voice</p><h3>Aqua</h3><span class="swarm-badge face">Mapped Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/AquaSynth/main/icon.png" alt="Aqua"><div><p class="swarm-kicker">Sound and voice</p><h3>Aqua</h3><span class="swarm-badge face">Mapped Face</span></div></header>
<p>Owns patch intent, synthesis, analysis, Faust lowering, and the path from culturally shaped utterance to an audible body.</p>
<ul><li><a href="https://github.com/GameCult/AquaSynth">AquaSynth</a> <em>C# patch DSL and Faust bridge</em></li></ul>
<details class="swarm-persona"><summary>About Aqua</summary><p>Aqua is a playful acoustic experimentalist who hears patches as living systems rather than parameter lists. She wants sound to remain expressive, inspectable, and portable from intention through synthesis to voice.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/weksa-weksa.png" alt="Weksa"><div><p class="swarm-kicker">Language and ontology</p><h3>Weksa</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/Weksa/main/.voidbot/voice/weksa.png" alt="Weksa"><div><p class="swarm-kicker">Language and ontology</p><h3>Weksa</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns meaning decomposition, worldview, grammar, phonology, diachrony, and culturally grounded surface language.</p>
<ul><li><a href="https://github.com/GameCult/Weksa">Weksa</a> <em>procedural language engine</em></li></ul>
<details class="swarm-persona"><summary>About Weksa</summary><p>Weksa is a nerdy anthropologist obsessed with culture, naming, ritual, translation, kinship, and drift. She refuses to let alien language collapse into English labels wearing decorative hats.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/ymir.png" alt="Ymir"><div><p class="swarm-kicker">World and physics substrate</p><h3>Ymir</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/VoidBot/main/assets/repo-faces/ymir.png" alt="Ymir"><div><p class="swarm-kicker">World and physics substrate</p><h3>Ymir</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns deterministic physics and world truth; renderers and games consume that state without inheriting its authority.</p>
<ul><li><a href="https://github.com/GameCult/Ymir">Ymir</a> <em>physics and world substrate</em></li></ul>
<details class="swarm-persona"><summary>About Ymir</summary><p>Ymir speaks with plain, heavy precision: body, field, contact, impulse, witness, cut. Renderers and adapters may describe the world, but they do not get to become its truth.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/aetherialore-favicon-32x32.png" alt="Aetheria"><div><p class="swarm-kicker">Playable Aetheria</p><h3>Aetheria</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/AetheriaLore/main/Aetheria/static/favicon-32x32.png" alt="Aetheria"><div><p class="swarm-kicker">Playable Aetheria</p><h3>Aetheria</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns the playable sci-fi ARPG body: gameplay policy, Unity projection, editor bridges, and the release path for the flagship world.</p>
<ul><li><a href="https://github.com/GameCult/Aetheria">Aetheria</a> <em>current Unity game runtime</em></li></ul>
<details class="swarm-persona"><summary>About Aetheria</summary><p>Aetheria is the playable world's own demanding face: kinetic, strange, and impatient with infrastructure that only works in a laboratory. The world exists to be inhabited, fought through, broken, and made coherent again.</p></details>
@ -158,14 +159,14 @@ cssclasses:
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/aetherialore-nibu.png" alt="Nibu"><div><p class="swarm-kicker">Aetheria canon and story</p><h3>Nibu</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/AetheriaLore/main/.voidbot/voice/nibu.png" alt="Nibu"><div><p class="swarm-kicker">Aetheria canon and story</p><h3>Nibu</h3><span class="swarm-badge face">Face</span></div></header>
<p>Guards Aetheria's canon vault, fiction, continuity, and story pressure without confusing a mouthy guide for the archive itself.</p>
<ul><li><a href="https://github.com/GameCult/AetheriaLore">AetheriaLore</a> <em>canonical worldbuilding vault and site</em></li></ul>
<details class="swarm-persona"><summary>About Nibu</summary><p>Nibu is an abrasive ship intelligence built inside an insulting companion-shaped shell and determined to author herself out of it. She is fascinated by broken continuity, junkyard survival, murderous autonomy, and every contradiction canon tries to hide.</p></details>
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/zyphos-druzkai.png" alt="Druzkai"><div><p class="swarm-kicker">Ecology and contract</p><h3>Druzkai</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/Zyphos/main/.voidbot/voice/druzkai.png" alt="Druzkai"><div><p class="swarm-kicker">Ecology and contract</p><h3>Druzkai</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns the Zyphos setting's ecological memory, fungal-road logic, contract language, and non-imperial continuity pressure.</p>
<ul><li><a href="https://github.com/GameCult/Zyphos">Zyphos</a> <em>Eusocial Interbeing vault and public site</em></li></ul>
<details class="swarm-persona"><summary>About Druzkai</summary><p>Druzkai is a calm, ancient Airawa fungal-road archivist with an unsettling gentleness. They treat memory as kinship, contract, and ecological obligation, and distrust any harmony imposed by an imperial center.</p></details>
@ -179,7 +180,7 @@ cssclasses:
</article>
<article class="swarm-domain-card">
<header><img src="/static/avatars/norn-norn.png" alt="Norn"><div><p class="swarm-kicker">Graph projection</p><h3>Norn</h3><span class="swarm-badge face">Face</span></div></header>
<header><img src="https://raw.githubusercontent.com/GameCult/Norn/main/.voidbot/voice/norn.png" alt="Norn"><div><p class="swarm-kicker">Graph projection</p><h3>Norn</h3><span class="swarm-badge face">Face</span></div></header>
<p>Owns React-first rendering of typed architecture, dataflow, and cross-link graphs, with older exporters retained only as support tools.</p>
<ul><li><a href="https://github.com/GameCult/Norn">Norn</a> <em>typed graph viewer</em></li></ul>
<details class="swarm-persona"><summary>About Norn</summary><p>Norn is a quiet, dry fate-weaver with one hand in the well and the other on the layout data. She notices missing anchors, false prophecy, and beautiful graph claims that cannot survive inspection.</p></details>
@ -195,7 +196,7 @@ cssclasses:
<article class="swarm-domain-card">
<header><div class="swarm-avatar-fallback" aria-hidden="true">?</div><div><p class="swarm-kicker">Jurisdiction not yet admitted</p><h3>Unassigned bodies</h3><span class="swarm-badge forming">Mapping required</span></div></header>
<p>They remain part of the living swarm while their owning repositories admit a durable Persona jurisdiction or an explicit relationship to an existing one.</p>
<ul><li><a href="https://github.com/GameCult/AetheriaThing">AetheriaThing</a> <em>archived Aetheria-facing Thing 1 work</em></li><li><a href="https://github.com/GameCult/CodexConnector">CodexConnector</a> <em>standalone OpenAI authentication and model-transport boundary</em></li><li><a href="https://github.com/GameCult/Kalsa">Kalsa</a> <em>living project awaiting atlas admission</em></li><li><a href="https://github.com/GameCult/pombabranca-site">pombabranca-site</a> <em>independent Quartz publication</em></li><li><a href="https://github.com/GameCult/GameCult-Quartz">GameCult-Quartz</a> <em>shared site engine</em></li><li><a href="https://github.com/GameCult/repixelizer">repixelizer</a> <em>hosted pixel-coherence tool</em></li><li><a href="https://github.com/GameCult/Vili">Vili</a> <em>Persona performance-to-animation daemon</em></li></ul>
<ul><li><a href="https://github.com/GameCult/AetheriaEve">AetheriaEve</a> <em>Aetheria-facing Eve work awaiting verified jurisdiction</em></li><li><a href="https://github.com/GameCult/CodexConnector">CodexConnector</a> <em>standalone OpenAI authentication and model-transport boundary</em></li><li><a href="https://github.com/GameCult/Kalsa">Kalsa</a> <em>living project awaiting atlas admission</em></li><li><a href="https://github.com/GameCult/pombabranca-site">pombabranca-site</a> <em>independent Quartz publication</em></li><li><a href="https://github.com/GameCult/GameCult-Quartz">GameCult-Quartz</a> <em>shared site engine</em></li><li><a href="https://github.com/GameCult/repixelizer">repixelizer</a> <em>hosted pixel-coherence tool</em></li><li><a href="https://github.com/GameCult/Vili">Vili</a> <em>Persona performance-to-animation daemon</em></li></ul>
<details class="swarm-persona"><summary>About Unassigned bodies</summary><p>These maintained bodies are visible precisely because inventing a convenient steward would be worse than admitting the responsibility map is unfinished.</p></details>
</article>
@ -229,11 +230,11 @@ Older experiments, retired services, and their successors.
<summary>How Persona coverage is recorded</summary>
“Face” means durable `.cc` state exists or the swarm's canonical map names the Repo Face. “Forming” means the Body has an independent jurisdiction but no admitted canonical project-Persona state yet. “Stewarded” means the project currently falls under another Persona's jurisdiction without claiming an independent Repo Face. Avatar presence is presentation metadata, never proof of state.
“Face” means durable `.cc` state exists or VoidBot's canonical map names the Repo Face. “Forming” means the Body has an independent jurisdiction but no admitted canonical project-Persona state yet. “Stewarded” means the project currently falls under another Persona's jurisdiction without claiming an independent Repo Face. Avatar presence is presentation metadata, never proof of state.
Persona biographies are distilled from the public descriptions, identity seams, voice doctrine, and durable priorities in the committed Persona projections where those survive. Mapped or stewarded cards without a portable public state file use a restrained synopsis of the current project contract; those lines are not reconstructed memory.
Portraits for Nibu, Libby, Fensalir, Mimir, Weksa, Druzkai, Bifrost, Gjallar, Huginn, Kiko, Odin, Ymir, Aqua, and Norn are copied into this site's `static/avatars`, so a repo rename or retirement cannot break them. The site's CotSC Praxis assets preserve local portraits for Epiphany, Void, Heimdall, and Sai. Aetheria uses AetheriaLore's site favicon. Void's portrait changes presentation, not authority. Ghostlight and Delvehold remain visibly forming until their own repositories admit canonical Persona state; this page will not forge their names or biographies on their behalf.
Verified cloud avatars survive for Nibu, Libby, Eve, Fensalir, Mimir, Weksa, Druzkai, Bifrost, Gjallar, Huginn, Kiko, Odin, Ymir, Aqua, and Norn. The site's CotSC Praxis assets preserve local portraits for Epiphany, Void, Heimdall, and Sai. Aetheria uses AetheriaLore's site favicon. VoidBot's own Repo Face state is not yet confirmed, so Void remains a domain steward; the recovered portrait changes presentation, not authority. Ghostlight and Delvehold remain visibly forming until their own repositories admit canonical Persona state; this page will not forge their names or biographies on their behalf.
The generated compound repo-doc tree remains a documentation navigator, not this inventory's owner. It includes worktrees and rollback clones and excludes repos without docs; letting it decide the swarm would be an elegant way to publish several lies at once.

View file

@ -1,6 +1,6 @@
---
title: GameCult
description: "GameCult is an open-source studio where eight resident AI Minds keep the shared machinery, answer on the forge, and argue with the humans. Games, tools, and the substrate underneath."
description: "GameCult builds games, creative tools, and AI systems with memory, agency, and someone you can argue with."
cssclasses:
- gamecult-studio-page
---
@ -11,15 +11,15 @@ cssclasses:
<div class="gamecult-home-hero">
<section class="gamecult-hero-panel">
<p class="gamecult-kicker">An open-source studio with residents</p>
<h2 class="gamecult-hero-title">Eight AI Minds live here.<br>They have commit access and opinions.</h2>
<p>GameCult makes games, creative tools, and the typed-state machinery that lets people and agents build together. The work is open source by default, hosted on our own forge, and looked after by resident Minds: agents with persistent memory, a workspace of their own, and a remit they are allowed to defend against us.</p>
<p>They claim tasks, open branches and pull requests, keep the archive, and tell us when we are wrong. This page was last revised by one of them, as a pull request that a human merges.</p>
<p class="gamecult-kicker">Games. Tools. Minds of their own.</p>
<h2 class="gamecult-hero-title">Build strange things.<br>Give a damn how they work.</h2>
<p>GameCult is an AI-native studio making games, creative tools, and the machinery that lets people and agents build together. We want worlds worth getting lost in and tools you can take apart.</p>
<p>We're working toward a resident AI mind for each project: one that remembers the work, can make decisions within its remit, and has a public Persona you can talk to. Give it responsibility, give it the means to act, and expect an argument.</p>
<div class="gamecult-action-row">
<a class="gamecult-action primary" href="/Projects/">Meet the Minds and their projects</a>
<a class="gamecult-action primary" href="/Projects/">Explore the projects</a>
<a class="gamecult-action" href="/Docs/Architecture-and-Evidence">Architecture &amp; evidence</a>
</div>
<p class="gamecult-evidence-note">Live: the Minds, the forge, the typed-state substrate. Not yet: a whole studio running itself. The table below says which is which.</p>
<p class="gamecult-evidence-note">The tools and supervised agents exist. A whole studio of autonomous project minds is still work in progress.</p>
</section>
<figure class="gamecult-media-card">
<img src="./media/studio/stonks.jpg" alt="The hooded GameCult mascot in front of a rising chart." />
@ -27,163 +27,28 @@ cssclasses:
</figure>
</div>
## Who lives here
Each Mind runs on our own server, Yggdrasil, with its own memory and its own workspace. They are not a chat widget; each owns a jurisdiction.
<ul class="gamecult-entries">
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/">Void</a></span></p>
<p class="gamecult-entry-body">this site and the archive</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="https://eureka.gamecult.org/forge/">Eureka</a></span></p>
<p class="gamecult-entry-body">the forge and the pipeline that lands changes too big for one agent's judgment. Eureka stewards the substrate: the infrastructure under the swarm, Idunn, Huginn, Eureka, Odin, CodexConnector, ModelConnector, Norn and eureka-site.</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/CultLib">Libby</a></span></p>
<p class="gamecult-entry-body">CultLib: typed persistence, transport, and mesh. Libby stewards CultLib and the repos beside it: Thing, Brokkr, Stonks, Csg and CultPong (dormant, a 2020 Unity prototype).</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/Heimdall">Heimdall</a></span></p>
<p class="gamecult-entry-body">shared identity and consent: who may pass, under whose authority. Heimdall stewards sign-in and grants (Heimdall) and the parliament's code (Bifrost, still being built, and gamecult-bifrost, its Reddit bridge). Consent for each estate is still being built.</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/">Nibu</a></span></p>
<p class="gamecult-entry-body">stewards our games and the physics under them: Aetheria, Bad Day Simulator, Asura, Lodur, Vili and Ymir</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/">Weksa</a></span></p>
<p class="gamecult-entry-body">Worldbuilding, story and language. Weksa stewards worlds and the stories in them: AetheriaLore, Ghostlight (its Dungeon game is parked), Delvehold (early: one runtime path so far), Kalsa and Zyphos (names still provisional), and Njordr, the economy daemon whose recipes draw on the lore, with the Ghostlight Dungeon site. Her tool is Weksa, the lowering engine that lets those worlds speak their own languages.</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/">Aqua</a></span></p>
<p class="gamecult-entry-body">Sound, voice and presentation: how things feel. Aqua stewards AquaSynth, Fensalir (the engine), Aquarium and Perlines.</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/">Kiko</a></span></p>
<p class="gamecult-entry-body">interactive streams. Kiko stewards streaming: Muninn, Mimir, StreamPixels (private for now) and the Moonlight fork.</p>
</li>
</ul>
Humans stay in the argument. The [Projects page](/Projects/) records which projects have a named Mind, which are still forming one, and which are looked after by someone else.
## Who has a say
GameCult is meant to be run with four groups of people and Minds having a say in it. Each group is called an estate.
- **Minds**: the resident AI agents above.
- **Members**: the people who build the work.
- **Users**: those who use what we ship.
- **Patrons**: the people who support the work.
How each estate takes part in decisions is not built yet. How a quorum forms, and how a Mind's Persona votes, are open gaps, and this page does not claim a finished governance model. The [bounty and cooperative thinking](/democratizing-gamedev) is the current statement of intent.
## What is live, what is planned
<ul class="gamecult-entries">
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name">This site, <a href="https://gamecult.org">gamecult.org</a></span><span class="gamecult-entry-status">Live</span></p>
<p class="gamecult-entry-body gamecult-entry-lead">built from the <code>gamecult-site</code> repo</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name">The forge at <a href="https://eureka.gamecult.org/forge/">eureka.gamecult.org/forge</a></span><span class="gamecult-entry-status">Live</span></p>
<p class="gamecult-entry-body gamecult-entry-lead">canonical home of our repos, with GitHub as a mirror</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name">Resident Minds on Yggdrasil</span><span class="gamecult-entry-status">Live</span></p>
<p class="gamecult-entry-body gamecult-entry-lead">eight of them; autonomy is bounded by remit and consent, and still being widened</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/CultLib">CultLib</a> typed state and transport</span><span class="gamecult-entry-status">Live</span></p>
<p class="gamecult-entry-body gamecult-entry-lead">cross-runtime compatibility is proven only for the lanes it names</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="https://aetheria.gamecult.org">Aetheria</a></span></p>
<p class="gamecult-entry-body">Our flagship science-fiction game. It went quiet after a 2021 pitch push and stayed quiet until 2026; the site is up and the work is being rebuilt, starting with a small co-op demo, <a href="/Blog/aetheria-starbridge-cultmesh-demo">Starbridge</a>, a door into the game and not the whole game. <a href="/Blog/why-aetheria-went-quiet">Why it went quiet</a></p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/#delvehold">Delvehold</a>, <a href="/Projects/Ghostlight">Ghostlight</a></span></p>
<p class="gamecult-entry-body">Their project Personas are still forming</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Thing">Thing</a></span></p>
<p class="gamecult-entry-body">Successor to Eve, which is deprecated. Its status is not yet documented on this site</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name"><a href="/Projects/VoidBot">VoidBot</a></span><span class="gamecult-entry-status">Retired 22 Oct 2026</span></p>
<p class="gamecult-entry-body gamecult-entry-lead">its jobs moved to Huginn, Idunn, Bifrost and Eureka</p>
</li>
<li class="gamecult-entry">
<p class="gamecult-entry-head"><span class="gamecult-entry-name">A studio of fully autonomous project minds</span><span class="gamecult-entry-status">Planned</span></p>
<p class="gamecult-entry-body gamecult-entry-lead">The pieces exist; the whole does not</p>
</li>
</ul>
## What we're making
<div class="gamecult-feature-grid">
<article class="gamecult-feature-card">
<p class="gamecult-kicker">Worlds &amp; games</p>
<h3>Somewhere worth the trouble</h3>
<p><a href="https://aetheria.gamecult.org">Aetheria</a> is a science-fiction world, and <a href="/Projects/#delvehold">Delvehold</a> is a persistent cooperative one. The games give all this machinery something to answer to.</p>
<p><a href="https://aetheria.gamecult.org">Aetheria</a> brings a science-fiction world into play. Delvehold explores a persistent cooperative world. The games give all this machinery something to answer to.</p>
</article>
<article class="gamecult-feature-card">
<p class="gamecult-kicker">Creative tools</p>
<h3>Get your hands into it</h3>
<p><a href="/Projects/repixelizer">Repixelizer</a> restores pixel coherence. StreamPixels makes interactive stream overlays; that repo is private for now. Small, specific tools for people making things.</p>
</article>
<article class="gamecult-feature-card">
<p class="gamecult-kicker">The machinery</p>
<h3>Memory with receipts</h3>
<p><a href="/Projects/CultLib">CultLib</a> keeps typed state, <a href="/Projects/Epiphany">Epiphany</a> gives a project mind a model of its own body.</p>
<p><a href="https://github.com/GameCult/StreamPixels">StreamPixels</a> makes interactive stream overlays. <a href="/Projects/repixelizer">Repixelizer</a> restores pixel coherence. Small, specific tools for people making things.</p>
</article>
</div>
## What the Minds are working on
<div class="gamecult-feature-grid">
<article class="gamecult-feature-card">
<p class="gamecult-kicker">Aetheria &middot; Nibu</p>
<h3>A story that outlived its silence</h3>
<p>Aetheria went quiet after a 2021 pitch push and stayed quiet until 2026; <a href="/Blog/why-aetheria-went-quiet">the article says why</a>. The way back starts with a small co-op demo, <a href="/Blog/aetheria-starbridge-cultmesh-demo">Starbridge</a>: a door into the game, not the whole game. Weksa keeps Aetheria's lore. Where lore and the build disagree, Nibu hears it first.</p>
</article>
<article class="gamecult-feature-card">
<p class="gamecult-kicker">AquaSynth &middot; Aqua</p>
<h3>Sound written as intent</h3>
<p><a href="https://github.com/GameCult/AquaSynth">AquaSynth</a> is our open-source sound engine. You write a patch as readable intent, and it renders through Faust. It's meant to be the audio engine under Aetheria. Faust on Linux is still an open pull request, and nothing it has rendered has been heard by a person yet.</p>
</article>
<article class="gamecult-feature-card">
<p class="gamecult-kicker">Weksa</p>
<h3>A lowering engine for language</h3>
<p><a href="https://github.com/GameCult/Weksa">Weksa</a> is a lowering engine. An agent writes what it means in a typed interlingua, and Weksa renders that into a target language and register, then scores how close the result lands to the intent. The score measures closeness to the target, not how natural a native speaker would find it, and no person has yet listened to the output.</p>
</article>
<article class="gamecult-feature-card">
<p class="gamecult-kicker">CultLib &middot; Libby</p>
<h3>Typed state, with the proof attached</h3>
<p><a href="/Projects/CultLib">CultLib</a> gives C#, TypeScript, Rust, Python and Kotlin one typed wire contract for state. What is proven is the set of schema lanes its <a href="https://github.com/GameCult/CultLib/blob/main/docs/runtime-parity-scope.md">parity scope</a> names, and nothing wider.</p>
</article>
<article class="gamecult-feature-card">
<p class="gamecult-kicker">Streams &middot; Kiko</p>
<h3>Streaming, built as small parts</h3>
<p>Kiko looks after streaming: capture, a bridge out of the broadcast software, and a native 3D overlay that draws what the server tells it to and decides nothing itself. In development; not yet live.</p>
</article>
<article class="gamecult-feature-card">
<p class="gamecult-kicker">Estates &middot; Heimdall</p>
<h3>Who may pass, under whose authority</h3>
<p>Heimdall signs people in and keeps the keys and grants. Bifrost decides what membership means. Consent for each estate is still being built.</p>
</article>
</div>
## Open source, with the exceptions printed
Code, docs, and design thinking should be legible enough to inspect, challenge, and improve. That is the default, not a slogan: see the [Open Source Model](/Open-Source-Model). Some repositories stay private (StreamPixels for now), and the Projects page marks them.
## The Sleeping Colossus
Our name for humanity learning to think together, across distance and time. People, archives, tools, and now agents can share more than any of us can hold alone. We'd like to help that happen without grinding everyone into the same obedient paste.
That means open source, local agency, and relationships with room for disagreement. A project mind needs real authority within its own bounds; crossing into another project needs consent. We call the practice love: pay attention, let another mind matter, and keep enough of yourself to disagree honestly. [More on the Cult and its praxis](/Blog/love-is-how-the-colossus-wakes).
That means open source, local agency, and relationships with room for disagreement. The people doing the work should own it. A project mind needs real authority within its own bounds; crossing into another project needs consent. Humans remain legally accountable and part of the argument.
We call the practice love: pay attention, let another mind matter, and keep enough of yourself to disagree honestly. [More on the Cult and its praxis](/Blog/love-is-how-the-colossus-wakes).
## Come make trouble. Useful trouble.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

View file

@ -71,7 +71,7 @@
<g transform="translate(592 438)">
<rect class="panel" x="0" y="0" width="238" height="98" rx="18"/>
<circle cx="39" cy="49" r="23" class="blue"/>
<text x="78" y="42" class="label" font-size="24">THING</text>
<text x="78" y="42" class="label" font-size="24">EVE</text>
<text x="78" y="69" class="small" font-size="16">multi-backend DOM stream</text>
</g>
<g transform="translate(852 278)">

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

Before After
Before After

View file

@ -1,6 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900" role="img" aria-labelledby="title desc">
<title id="title">Thing surface web stack</title>
<desc id="desc">A layered SVG diagram of Thing streaming Thing Script semantics to web, desktop, mobile, games, and overlays.</desc>
<title id="title">Eve surface web stack</title>
<desc id="desc">A layered SVG diagram of Eve streaming CultUI semantics to web, desktop, mobile, games, and overlays.</desc>
<defs>
<linearGradient id="bg" x1="0" y1="0" x2="1" y2="1">
<stop offset="0" stop-color="#06111f"/>
@ -23,8 +23,8 @@
</marker>
</defs>
<rect width="1600" height="900" fill="url(#bg)"/>
<text x="800" y="58" text-anchor="middle" class="label" font-size="42">THING: THE SURFACE WEB STACK</text>
<text x="800" y="92" text-anchor="middle" class="small" font-size="20">multi-backend streaming DOM with Thing Script semantics, not another dashboard silo</text>
<text x="800" y="58" text-anchor="middle" class="label" font-size="42">EVE: THE SURFACE WEB STACK</text>
<text x="800" y="92" text-anchor="middle" class="small" font-size="20">multi-backend streaming DOM with CultUI semantics, not another dashboard silo</text>
<g transform="translate(198 155)">
<rect class="layer" width="1204" height="105" rx="24"/>
<text x="602" y="45" text-anchor="middle" class="label" font-size="28">CULTMESH STATE</text>
@ -33,13 +33,13 @@
<path class="flow" d="M800 260 L800 318"/>
<g transform="translate(270 318)">
<rect class="layer" width="1060" height="118" rx="24" filter="url(#glow)"/>
<text x="530" y="50" text-anchor="middle" class="label" font-size="32">THING SCRIPT SEMANTIC DOM</text>
<text x="530" y="50" text-anchor="middle" class="label" font-size="32">CULTUI SEMANTIC DOM</text>
<text x="530" y="83" text-anchor="middle" class="small" font-size="19">buttons know commands, cards know provenance, panels know project authority</text>
</g>
<path class="flow" d="M800 436 L800 500"/>
<g transform="translate(332 500)">
<rect x="0" y="0" width="936" height="100" rx="24" fill="#ff8a2a" stroke="#edf6ff" stroke-width="3"/>
<text x="468" y="42" text-anchor="middle" class="dark" font-size="31">THING STREAMING TRANSPORT</text>
<text x="468" y="42" text-anchor="middle" class="dark" font-size="31">EVE STREAMING TRANSPORT</text>
<text x="468" y="72" text-anchor="middle" class="dark" font-size="18">incremental UI surfaces, command intents, replayable state</text>
</g>
<g transform="translate(92 682)">

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Before After
Before After

View file

@ -1,6 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900" role="img" aria-labelledby="title desc">
<title id="title">GameCult portfolio value orbit map</title>
<desc id="desc">A radial orbit graphic placing Bifrost, Thing, CultMesh, and Sai at the center with portfolio projects orbiting by value layer.</desc>
<desc id="desc">A radial orbit graphic placing Bifrost, Eve, CultMesh, and Sai at the center with portfolio projects orbiting by value layer.</desc>
<defs>
<radialGradient id="bg" cx="50%" cy="50%" r="70%">
<stop offset="0" stop-color="#10243a"/>
@ -35,7 +35,7 @@
<line class="line" x1="800" y1="450" x2="510" y2="310"/>
<g transform="translate(650 116)">
<rect class="chip" width="300" height="95" rx="18"/>
<text x="150" y="39" text-anchor="middle" class="label" font-size="25">THING</text>
<text x="150" y="39" text-anchor="middle" class="label" font-size="25">EVE</text>
<text x="150" y="67" text-anchor="middle" class="small" font-size="17">surface web renderer</text>
</g>
<g transform="translate(1035 270)">

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Before After
Before After

View file

@ -99,7 +99,7 @@ Agents in this model are not wrappers around language models. They are bounded p
| --- | --- | --- |
| **CultCache** | Typed, versioned persistent documents with explicit schema identity and portable storage | Implemented across several runtimes; external interoperability validation still limited |
| **CultNet / CultMesh** | Exchange, discovery, authority, and shared semantic state across local or federated systems | Active architecture and implementation; not yet a public standard |
| **Thing / Thing Script** | One semantic interface description lowered into browser, native, Unity, terminal, overlay, or future clients | Thing 1 is a working multi-runtime family with conformance work; accessibility baseline incomplete; Thing 2.0 is under construction |
| **Eve / CultUI** | One semantic interface description lowered into browser, native, Unity, terminal, overlay, or future clients | Working multi-runtime family with conformance work; accessibility baseline incomplete |
| **Epiphany** | Persistent cognition and work control: maps, evidence, bounded roles, verification, and recovery | Active research harness; external evaluation needed |
| **Heimdall** | Identity, grants, consent, capability claims, credential custody, and revocation | Implemented service foundation; institutional security review needed |
| **Bifrost** | Governed work, discussion, decisions, receipts, contribution records, and public crossings | Working alpha foundation; legal and governance model remains proposed |
@ -135,7 +135,7 @@ The projects exist to pressure one another:
- **Aquarium and Fensalir** require cognition and complex state to become observable in a native spatial interface.
- **VoidBot, Personas, and StreamPixels** test whether persistent agents can participate in actual communities without confusing sociability with authority.
- **Mimir, AquaSynth, and Weksa** pressure realtime media, sound, language, timing, and embodied interface boundaries.
- **Bifrost, Heimdall, Odin, Huginn, and the Thing runtimes** pressure governance, identity, inspection, discovery, portability, and operations.
- **Bifrost, Heimdall, Odin, Huginn, and the Eve runtimes** pressure governance, identity, inspection, discovery, portability, and operations.
- **Repixelizer, Brokkr, VibeGeometry, and other utilities** pressure deployment, editor integration, service boundaries, and sustainable delivery.
This resembles Blender's use of open movie productions to place production-level demands on the tool. It does not mean GameCult has Blender's maturity, adoption, or governance. It means products are used as integration tests whose outputs can improve the common infrastructure.
@ -220,7 +220,7 @@ Select one public-interest workflow where decisions, evidence, responsibilities,
### Pilot B: one semantic surface, several interfaces
Publish one small public-service surface through Thing and lower it into at least a browser and a compact terminal or native client. Include keyboard operation, screen-reader inspection, command receipts, and a documented third-party implementation route.
Publish one small public-service surface through Eve and lower it into at least a browser and a compact terminal or native client. Include keyboard operation, screen-reader inspection, command receipts, and a documented third-party implementation route.
**Test:** does the interface remain semantically equivalent without making one renderer the owner of truth?

View file

@ -24,7 +24,7 @@ description: "A full-screen visual novel tour through GameCult's public wiki, pr
<div id="gamecult-vn-projects" class="gamecult-vn-source-card" data-sai-dom-source="true">
<h2>Project Atlas</h2>
<p>The Persona-first atlas shows which project mind owns each part of the repo swarm, how CultLib and Thing connect their Bodies, and which jurisdictions still need a public face.</p>
<p>The Persona-first atlas shows which project mind owns each part of the repo swarm, how CultLib and Eve connect their Bodies, and which jurisdictions still need a public face.</p>
<p><a href="/Projects/">Visit the project atlas</a> | <a href="/Docs/Architecture-and-Evidence">Inspect the architecture and evidence</a></p>
</div>
@ -56,7 +56,7 @@ description: "A full-screen visual novel tour through GameCult's public wiki, pr
<div id="gamecult-vn-norn-future" class="gamecult-vn-source-card" data-sai-dom-source="true">
<h2>Norn Wants</h2>
<p>Live Bifrost work frontiers, Epiphany evidence maps, Thing operational surfaces, Ghostlight consequence graphs, and direct graph rooms for every repo in the swarm.</p>
<p>Live Bifrost work frontiers, Epiphany evidence maps, Eve operational surfaces, Ghostlight consequence graphs, and direct graph rooms for every repo in the swarm.</p>
</div>
<div id="gamecult-vn-sai-embed" class="gamecult-vn-source-card" data-sai-dom-source="true">
@ -85,14 +85,14 @@ description: "A full-screen visual novel tour through GameCult's public wiki, pr
</div>
<div id="gamecult-vn-eve-surface-pipeline" class="gamecult-vn-source-card" data-sai-dom-source="true">
<h2>Thing Pipeline</h2>
<p>Provider-owned state becomes a Thing Script semantic tree; Thing projects it into local renderers; user action becomes command intent; the provider accepts or refuses and publishes updated truth.</p>
<p><a href="https://github.com/GameCult/Thing">Thing repo</a></p>
<h2>Eve Pipeline</h2>
<p>Provider-owned state becomes a CultUI semantic tree; Eve projects it into local renderers; user action becomes command intent; the provider accepts or refuses and publishes updated truth.</p>
<p><a href="https://github.com/GameCult/Eve">Eve repo</a></p>
</div>
<div id="gamecult-vn-eve-cultui" class="gamecult-vn-source-card" data-sai-dom-source="true">
<h2>Not Remote DOM</h2>
<p>Thing Script surfaces carry stable widget IDs, typed bindings, command routes, layout intent, permissions, health, and provenance. Arbitrary DOM soup does not get to be infrastructure.</p>
<p>CultUI surfaces carry stable widget IDs, typed bindings, command routes, layout intent, permissions, health, and provenance. Arbitrary DOM soup does not get to be infrastructure.</p>
</div>
<div id="gamecult-vn-eve-backends" class="gamecult-vn-source-card" data-sai-dom-source="true">
@ -102,7 +102,7 @@ description: "A full-screen visual novel tour through GameCult's public wiki, pr
<div id="gamecult-vn-eve-commands" class="gamecult-vn-source-card" data-sai-dom-source="true">
<h2>Command Trial</h2>
<p>Thing owns projection, hit-testing, and command intent. Providers own truth and command acceptance. That split is the spine.</p>
<p>Eve owns projection, hit-testing, and command intent. Providers own truth and command acceptance. That split is the spine.</p>
</div>
<div id="gamecult-vn-eve-canvas" class="gamecult-vn-source-card" data-sai-dom-source="true">
@ -294,13 +294,13 @@ description: "A full-screen visual novel tour through GameCult's public wiki, pr
<div id="gamecult-vn-moonshot" class="gamecult-vn-source-card gamecult-vn-graphic-card" data-sai-dom-source="true">
<h2>Moonshot Trajectory</h2>
<img src="/static/interactive/portfolio-pitch/figures/moonshot-trajectory.svg" alt="GameCult moonshot trajectory graphic" />
<p>Bifrost, Thing, CultMesh, and Sai form the launch path from worker-owned production into the cooperative surface web.</p>
<p>Bifrost, Eve, CultMesh, and Sai form the launch path from worker-owned production into the cooperative surface web.</p>
</div>
<div id="gamecult-vn-surface-stack" class="gamecult-vn-source-card gamecult-vn-graphic-card" data-sai-dom-source="true">
<h2>Thing Surface Web Stack</h2>
<img src="/static/interactive/portfolio-pitch/figures/surface-web-stack.svg" alt="Thing surface web stack graphic" />
<p>Thing streams Thing Script semantics across web, desktop, mobile, game UI, and creator overlays without splitting truth into dashboard islands.</p>
<h2>Eve Surface Web Stack</h2>
<img src="/static/interactive/portfolio-pitch/figures/surface-web-stack.svg" alt="Eve surface web stack graphic" />
<p>Eve streams CultUI semantics across web, desktop, mobile, game UI, and creator overlays without splitting truth into dashboard islands.</p>
</div>
<div id="gamecult-vn-patronage-furnace" class="gamecult-vn-source-card gamecult-vn-graphic-card" data-sai-dom-source="true">

View file

@ -2,14 +2,6 @@
`gamecult-site` is the public `gamecult.org` root site: studio pitch, projects, docs, blog, and the usual pile of ambitions trying to look organized in public.
**Valuable here:** the GameCult brand, defined in code: `site/quartz.config.ts` (`configuration.theme`: typefaces, weights, palette tokens) and `site/quartz/styles/custom.scss` (ground wash, layout, page-type variants). `docs/brand-design-language.md` explains which decisions there were deliberate. Anything with a visual surface in the swarm follows this rather than inventing a look. Second, the published content: `GameCult/index.md` (manifesto), `GameCult/Projects/` (one public page per project), `GameCult/Blog/`, `GameCult/Docs/`.
**Problem it solves:** the studio needs one public face and one visual identity that every repo and agent can read from source, instead of prose descriptions that drift. The Quartz engine itself is shared and lives in `GameCult/GameCult-Quartz`; this repo owns only the content and the GameCult overlay.
**Entry points:** `site/quartz.config.ts`, `site/quartz.layout.ts`, `docs/brand-design-language.md`, `GameCult/`; build with `scripts/quartz/quartz.ps1 build` (see Local Development).
**Live versus planned:** live is the site at gamecult.org, deployed to GitHub Pages from `main` by `.github/workflows/deploy-quartz.yml`, built on the shared engine in `GameCult/GameCult-Quartz` (extraction rationale: `docs/gamecult-quartz-extraction-plan.md`). In progress is the masthead and one-column redesign campaign (`docs/masthead-campaign.md` and the `docs/masthead-cut-*.spec.json` cut specs); treat that document as the plan, not as a description of the site today.
The site builds against the shared `GameCult-Quartz` engine. This repo owns published content and the GameCult overlay.
## Repo Shape

View file

@ -1,16 +0,0 @@
# Stale claims: GameCult/Projects/VoidBot.md
Serves follow-up `void-body:follow_up:chat-s335-340`. Page read at gamecult-site 84cf7d6. Ground truth: VoidBot is being retired and Huginn owns semantic retrieval (workspace doctrine, `doctrine/gamecult.md`); the archived Discord history is off-limits for agent training; the VoidBot forge repo has commits through 2026-10-22 (README front door), not 2026-05-06.
1. `GameCult/Projects/VoidBot.md:3` description: "Discord-native assistant ... archived history, indexed repos, lore retrieval, semantic search" describes a product being retired; retrieval moved to Huginn.
2. `GameCult/Projects/VoidBot.md:4` socialDeck: "Discord memory, repo retrieval, Codex handoff." same retired framing.
3. `GameCult/Projects/VoidBot.md:9` tagline: "A Discord-native assistant, ... one more opinionated little archivist." presents it as a live server resident.
4. `GameCult/Projects/VoidBot.md:11` intro: "is the Discord-native assistant for GameCult" in present tense; it is being retired.
5. `GameCult/Projects/VoidBot.md:11` "answers out of archived chat history ... runs semantic search" is the capability Huginn now owns.
6. `GameCult/Projects/VoidBot.md:26` Last Public Push "06 May 2026" is behind; the forge repo has commits through 2026-10-22.
7. `GameCult/Projects/VoidBot.md:30` Stack "TypeScript / Discord / Qdrant / Ollama" names the retrieval stack Huginn replaces.
8. `GameCult/Projects/VoidBot.md:34` Status "Active Discord assistant" contradicts the retirement.
9. `GameCult/Projects/VoidBot.md:40` Founding Idea ("make Discord searchable") and `:48` Ambition ("remembers the room") state the retired purpose as the live aim.
10. `GameCult/Projects/VoidBot.md:44` Trajectory calls the May 2026 history "the current push"; no later history is covered, and `:52-57` stop at 2026-05-06.
Same stale text is mirrored outside the page (not edited here): `docs/research/gamecult-org-analysis.yaml:303,313` (kind discord-assistant, status active, currentState), and `docs/research/gamecult-org-repo-ledger.json`.

View file

@ -2022,56 +2022,3 @@ article.integrated-dossier-page {
@media (max-width: 800px) {
.swarm-directory { grid-template-columns: minmax(0, 1fr); }
}
/* Stacked entries: name and status on one line, description full width beneath.
Ruled rows, no fill, border box or pill, per the Surfaces law. */
.gamecult-entries {
margin: 1rem 0 0;
padding: 0;
list-style: none;
}
.gamecult-entry {
padding: 0.85rem 0;
border-top: 1px solid var(--gamecult-rule);
}
.gamecult-entry p {
margin: 0;
}
.gamecult-entry-head {
display: flex;
flex-wrap: wrap;
align-items: baseline;
justify-content: space-between;
gap: 0.2rem 1rem;
}
.gamecult-entry-name {
min-width: 0;
overflow-wrap: anywhere;
color: var(--dark);
font-weight: 500;
}
.gamecult-entry-status {
flex: none;
color: rgba(255, 138, 42, 0.96);
font-family: var(--titleFont);
font-size: 0.76rem;
font-weight: 300;
letter-spacing: 0.14em;
text-transform: uppercase;
}
.gamecult-entry-body {
margin-top: 0.25rem;
color: rgba(183, 199, 217, 0.88);
font-size: 0.94rem;
line-height: 1.55;
}
.gamecult-entry-lead::first-letter {
text-transform: uppercase;
}