Skip to main content

Autonomous Dreaming

A long-lived memory store accumulates stale ideas, duplicate phrasing, and decisions superseded by later ones. Without periodic consolidation it gets noisy, slow, and a poor signal source for the agent. Dreaming is OMEGA's solution: scheduled analyzers walk a store, propose mutations (merges, retirements, dedups), and either queue them for your review or auto-apply against per-store policy. The substrate schedules itself — no cron, no orchestrator, no outbound call.

Every applied dream lands on the same immutable memver_ version chain as a manual edit. A regulator can verify months later: "this scheduled dream ran at T, proposed N changes, M were applied" with cryptographic proof (see the Signed Audit Chain guide).

The four MCP tools

ToolPurpose
omega_dreamRun a dream analyzer over a target store (or the whole store), persist a pending drm_… job with proposed mutations
omega_dream_diffShow the proposed mutations for a pending or applied job — summary + each op with target_id + reason
omega_dream_applyExecute the proposed ops; each one routes through the regular mutation path so the memver_ chain captures it
omega_dream_discardReject a pending job. Proposal is archived in place; no ops execute. Idempotent.

A typical session

# 1. Run an analyzer over a specific store
omega_dream(target_store_id="my_engineering_notes", analyzer="content_dedup")
→ created job drm_a14f… with 12 proposed mutations

# 2. Review what it wants to change
omega_dream_diff(job_id="drm_a14f…")
→ MERGE mem-aaa + mem-bbb (Jaccard 0.94, both describe Postgres lock timeout fix)
  RETIRE mem-ccc (superseded by mem-ddd 2026-04-12)
  ... 10 more

# 3. Approve (applies via the regular mutation path; memver_ records it)
omega_dream_apply(job_id="drm_a14f…")
→ 12 ops applied; memver_ rows 4421..4432

# Or reject without applying
omega_dream_discard(job_id="drm_a14f…")

Per-store scheduling

Each store carries its own dream policy: cadence, analyzers, auto-apply threshold. The substrate scheduler triggers omega_dream on the cadence you set. Pending jobs surface in the welcome briefing so you never miss a proposed change.

The actor on each scheduled job is recorded as actor_kind=dream in the version chain — easy to tell scheduled hygiene from manual edits when reading the audit later.

Why this is a moat

Cloud-only memory systems can't offer this. Anthropic's managed agents memory consolidates on their schedule, in their compute, with their billing meter. OMEGA's dreaming runs on your machine, on a schedule you set, with cryptographic proof of every change. For air-gapped users (defense, healthcare, finance), it's the only viable autonomous-memory substrate.

See also