Features

What Munin actually does.

This page shows the loop from old sessions to a usable next step.

The full flow, step by step

Your sessions in. A resume brief out. Proof in the middle.

This is the loop: session history goes in, a short resume comes out, and Munin checks that summary before trusting it.

Flow diagram. Three input moments — took a break, branch switch, interrupted debug — feed into the sessions journal. The journal passes through a rejection taxonomy and a durable authority log, which compile into a kernel. The compiled kernel emits a resume brief and a nudge queue to the agent. A replay-eval oracle sits below the kernel as a proof gate.

Read it top-to-bottom. The three moments at the top are where you lose context. They feed raw session data from Claude Code and Codex. Munin applies a rejection taxonomy (bad-rule, wrong-scope, not-now, contradict) and writes every decision to an append-only log. That log is projected into a compiled kernel — not an index you query, a compiled state the agent reads at session start. The kernel emits a resume brief and a nudge queue. On the right, a replay-eval oracle gates promotion: if the score drops, Munin falls back to deterministic packets instead of shipping a stale kernel.

It reads past sessions.

Munin looks at your old Claude Code and Codex sessions and pulls out the parts that keep mattering.

It starts from the work you already did.

It suggests the next move.

Give Munin your priorities and it can point at the task that matters most now, with a reason.

Less wandering. More useful next steps.

It keeps what still holds up.

Rules get stronger when they keep being right. Weak ones fade instead of hanging around forever.

You can see what looks solid and what does not.

Ingestion → Memory

Raw sessions become ruled memory.

session stream · live
  1. [13:42:11] claude-code · session_b9f2 · started
  2. [13:42:18] corrected prisma.migrationprisma.db.push
  3. [13:42:44] verified via pnpm test
  4. [13:43:02] codex · session_c41a · redirect +3
  5. [13:43:19] confirmed pnpm run lint clean
  6. [13:43:48] reconciled 6 candidates against corpus
promoted rules
  • Use prisma db push for local schema sync
    fresh 0.94 conf 0.88 stab 0.71
  • Run pnpm test before commit on sitesorted
    fresh 0.81 conf 0.92 stab 0.85
  • Legacy webpack override forgotten
    fresh 0.12 conf 0.38 stab 0.22

Workspace organisation per project

Munin keeps separate memory per project, so the agent is less likely to drag old context into the wrong repo.

The right project gets the right memory.

It shows repeated mistakes.

Munin shows what each agent keeps getting wrong so you can fix the pattern instead of correcting it by hand.

Shared memory. Different fixes per agent.

It checks itself.

Munin replays old sessions to see whether the resume still works. If it does not, it falls back.

No quiet failures.

Workspace → Friction

One dashboard per project. Friction named, not guessed.

workspaces
  • sitesorted 3 open loops 12 live claims
  • orchestrator-v2 1 open loop 7 live claims
  • peakflow idle 4 live claims
  • textbee 2 open loops 9 live claims
friction report sitesorted · last 14d
  • codex ignored prettier config ×7
    → inject .prettierrc path in agent preamble
  • claude-code re-invented webhook header ×3
    → pin x-munin-sig rule to memory
  • ide skipped type-check on save ×4
    → add tsc --noEmit to pre-commit gate
Nudge → Proof

Every nudge arrives with its evidence packet.

top nudge · 2026-04-14 confidence 0.82

Land retry-window fix before Thursday freeze.

evidence chain
  • sessions4 referenced in last 6 days
  • corrections2 recorded against current retry loop
  • ticketMUN-214 open, owner @bridget
  • expected effectremoves 1 open loop, closes 1 live claim
Proof packet signed · replay-verified 2026-04-14 · drift <0.02

Ready for early access?