memaxdocs
Core Concepts

Dreams

Memax's background knowledge-organization engine. Clusters, deltas, and reports.

Dreams is Memax's background knowledge-organization engine. It periodically analyzes a hub's memories to group related ones into topics, surface contradictions, and emit a dream report the UI can show.

What the engine produces

For each hub with enough activity, a dream run emits:

  • Topics — clusters of related memories with a shared theme. Topics are hierarchical (parent/child) and hub-scoped.
  • Topic assignments — which memories belong to which topics.
  • Deltas — what changed in the topic tree since the previous run (new topic, memories added/removed, topic merged or split).
  • Contradictions — flagged pairs of memories that appear to disagree (surfaces as a review action in the inbox).

Topics are the user-facing output; the rest is metadata that powers the inbox + review surfaces in the web app.

Triggering

Dreams run on a server-side schedule — you don't have to invoke them. For manual triggering (operators, debugging, memax dreams):

memax dreams trigger --hub platform-team

A hub's subscription / plan controls whether dreams are enabled and how frequently they run automatically.

Inspecting runs

memax dreams list                # recent dream runs on the active hub
memax dreams list --hub <slug>
memax dreams report              # latest report (topics touched, contradictions flagged)

Topics

Topics are the canonical grouping. They're:

  • Auto-generated by the engine on dream runs, then persisted.
  • User-editable — rename, merge, pin, delete via the web app or memax topic commands.
  • Hierarchical — topics can have parents.
  • Hub-scoped — each hub has its own topic tree.

Manage topics directly from the CLI:

memax topic list
memax topic create "Auth & identity"
memax topic set <memory-id> <topic-id-or-prefix>
memax topic clear <memory-id>
memax topic delete <topic-id>

Privacy and scope

Dreams run over a hub's own memories. Cross-hub analysis doesn't happen — a team hub's dream engine never reads your personal memories, and vice versa.

Contradictions show up as review actions in the inbox. Resolving one writes an initiation_type=agent_automatic memory capturing your decision so the next dream run doesn't re-flag it.