Skip to content

Latest commit

 

History

48 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Huginn

Huginn reads CultCache .cc state and emits Eve DSL for inspectable witness surfaces.

CultLib owns the CultCache implementation: document registration, MessagePack payloads, schema catalogs, backing stores, and the canonical cultcache.store.v1 snapshot parser/writer. Huginn consumes CultLib's cultcache-ts/inspection surface and projects inspection results into UI documents that Eve-capable runtimes can lower.

Upstream: https://github.com/GameCult/Huginn.git

Authority

  • Owner: Huginn owns .cc inspection projection, not .cc persistence.
  • Input: .cc, .msgpack, or .mpack bytes readable by CultLib.
  • Output: Eve DSL for cultcache.huginn.inspector.
  • Renderers: browser, native, overlay, TUI, or future rooms lower the emitted DSL without becoming state owners.

There is no Electron app, Vite dashboard, React renderer, or Norn-owned presentation path in this repo. If a runtime wants to display Huginn, it should consume the emitted Eve DSL.

Witness Contract

Huginn's useful first artifact is not a dashboard. It is a read-only specimen tray for typed state:

  • which file was inspected
  • which CultCache format decoded
  • which schema/catalog entry owns each record
  • what payload preview survived decoding
  • which failure state stayed visible instead of being polished away

The inspector may make evidence easier to read. It must not mutate canonical bytes, bless missing schemas, or let a renderer become the source of truth.

CLI

npm install
npm run build
npx huginn path/to/state.cc > huginn.eve

The CLI writes Eve DSL to stdout and errors to stderr.

API

import { inspectCultCacheBytes, buildHuginnEveDsl } from "@gamecult/huginn";

const inspection = inspectCultCacheBytes(filePath, bytes);
const eveDsl = buildHuginnEveDsl(inspection);

Persona And Epiphany

Huginn has a repo Persona under .voidbot/voice. The Persona's current jurisdiction is this repository body, E:\Projects\Huginn, and its useful pressure is simple: return from the world with evidence, not vibes.

Epiphany wiring has been smoke-tested through the repo front doors:

cargo run --manifest-path E:\Projects\EpiphanyAgent\epiphany-core\Cargo.toml --bin epiphany-repo -- init --workspace E:\Projects\Huginn
cargo run --manifest-path E:\Projects\EpiphanyAgent\epiphany-core\Cargo.toml --bin epiphany-swarm -- online --workspace E:\Projects\Huginn

Live fire should happen on an epiphany/* or codex/* workbench branch. Publication to main remains a maintainer/Bifrost decision, not something the inspection projection owns.

About

CultCache-style typed persistence for TypeScript with schema-backed polymorphic MessagePack storage.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages