Sleeptime memory consolidation: an agent that edits its own memory and proves it still remembers
Description and use
Nocturne implements controlled forgetting of an agent’s memory through four passes over memory blocks, gating LLM proposals, maintaining an audit trail, and verifying recall with a quiz.
Problem
Agent memory is either an append‑only log that grows too large or a lossy summary that silently rewrites history, preventing deliberate, auditable forgetting and proof that recall still works.
Outcome
All 18/18 verification checks passed with exit 0, demonstrating that the agent can audibly forget while proving recall remains intact.
Workflow
- Chat with the agent mixing signal and noise
- Press Sleep to trigger four passes (Dedupe → Merge → Promote → Forget)
- Each pass calls an LLM to propose changes, which are gated and applied or rejected
- Snapshots before and after each pass are taken
- Diff view shows kept/changed/forgotten items with reasons
- Press Wake to run a quiz of five recall questions and one forgetting question
Evidence
The model proposes. The code applies.
Everything in this post is from the run in the repo: 18/18 verification checks, exit 0.
A rejected proposal is never swallowed. It shows up in the per-pass counts, in the diff panel under Rejected mutations, and in the mutations table with its rejection_reason.
- Record date: 2026-10-03T19:41:01.162Z