Three commands, end to end.
Munin is a single Rust binary. Install, initialise, resume. Everything else is optional.
01Install
Munin compiles from source. No prebuilt binaries, no package manager hops. You get what you built.
$ cargo install --path . --force
02Initialise a workspace
Run once in each project root. Munin scans your session directories, reconciles history, and seeds a per-project kernel.
$ munin init
ok scanned 847 prior sessions across 3 agents
ok reconciled 12,481 events into .munin/journal
ok seeded project kernel: 3 open loops, 12 live claims
03Resume on session start
Pipe the brief straight into your agent's system prompt. Every agent sees the same continuity surface.
$ munin resume --format prompt
<startup_memory_brief>
project: sitesorted
open_loops: 3 (P0: Stripe idempotency)
next_question: Which retry window matches the refund SLA?
first_verify: pnpm test -- src/billing/retry.spec.ts
</startup_memory_brief>
04Inspect a nudge
When the agent asks "what should I do next", Munin surfaces a ranked suggestion with evidence.
$ munin nudge
#1 (confidence 0.82)
Land retry-window fix before Thursday freeze.
evidence: 4 past sessions, 2 corrections, 1 ticket
expected effect: closes P0 open loop, unblocks merge
05Promote a claim to a rule
Claims start observe-only. Once you confirm the pattern holds, promote it. Munin attaches the evidence and enforces it via a pre-edit hook.
$ munin promote "integration tests use real Postgres"
ok promoted to rule (freshness 0.94, stability 0.91)
ok attached 7 supporting sessions
ok registered pre-edit hook on test files
06Run a friction report
Per-agent corrections, redirect statistics, and behaviour-change recommendations. Read what each agent gets wrong most often.
$ munin friction --agent codex
redirects: 24 in last 30 days (41% on import style)
top issue: rewrites prettier config-compliant imports
suggest: per-agent directive enforcing repo prettier