ZMem

Memory Lifecycle

Review, approve, revoke, restore, and inspect the state of agent memory.

ZMem treats memory as governed state. Useful facts can be proposed, reviewed, promoted, revoked, restored, and explained instead of silently becoming permanent context.

Daily Commands

zmem status --summary-only
zmem queue
zmem promote <memory-id>
zmem revoke <memory-id>

Project Stores

Most local workflows use a project store:

zmem --db .zerker/memory.sqlite ui

The local console makes memory status visible: proposed, quarantined, active, expired, deprecated, revoked, forgotten, withheld, injected, or budget-dropped.

An explicit expires_at boundary does not silently delete a memory. Memory Maintenance can move one eligible active memory to the non-cascading expired state and produce a mutation receipt.

A private consolidation summary can be discarded only before admission. Once admitted, it is canonical memory with source parents and a write receipt; remove it through the normal zmem revoke <memory-id> lifecycle so descendants and history remain visible.

Snapshots

Export a portable memory-state snapshot:

zmem snapshot --out-dir .zerker/exports
zmem snapshot verify .zerker/exports/<snapshot>.snapshot.json

Restore into a new empty store:

zmem --db .zerker/restored.sqlite restore .zerker/exports/<snapshot>.snapshot.json

Product Principle

Memory should be easy for agents to use and hard to smuggle into trust. Status, provenance, and revocation need to be first-class product surfaces.

On this page