Muninn/docs/muninn.md
2026-06-08 21:01:33 +01:00

1.8 KiB

Muninn

Muninn is Odin's portable local telemetry Verse assembler.

It runs on a device body and publishes a typed CultMesh/CultCache surface for what that body can sense or expose locally: screen capture, loopback audio, microphones, cameras, and future sensors.

Authority

  • Owner: Muninn owns local telemetry discovery, stream affordance publication, and explicit activation of requested local streams.
  • Inputs: cheap local probes, operator or Verse activation requests, and local capture tools such as FFmpeg or WASAPI helpers.
  • Outputs: muninn.telemetry_surface.v1 and active muninn.capture_stream.v1 records.
  • Forbidden writers: daemon startup, Idunn keepalive, Mimir ingest, OBS, Odin, Gjallar, and renderer bodies must not start capture by implication.

Runtime

cargo build -p muninn-daemon
muninn serve --store C:\Meta\Odin\state\muninn.telemetry.cc --interval-seconds 15
muninn --health --store C:\Meta\Odin\state\muninn.telemetry.cc

serve is cheap and idle. It publishes affordances and keeps the local Verse surface fresh without starting FFmpeg, screen capture, microphone capture, or loopback capture.

Muninn also writes an OBS compatibility catalog by default:

C:\Meta\Odin\state\muninn-obs-streams.tsv

That TSV is a lowering of Muninn's typed state for OBS source property lists. It is not the authority; the .cc CultMesh store is. On Starfire, health-muninn.ps1 syncs Raven's catalog to the same local path so the OBS plugin can read it without learning Raven SSH or CultCache internals.

Activation is explicit:

.\scripts\activate-muninn-raven-av-srt.ps1

That Raven activation starts the requested screen and Realtek loopback stream and publishes muninn.capture_stream.v1. Mimir and OBS are stream consumers; they do not own Muninn.