OpenClaw 14 min read

OpenClaw Memory Wiki: Complete Guide, Updated for OpenClaw 2.0

Set up OpenClaw memory-wiki the right way: a working config, all 5 wiki tools, the Obsidian view, and what changed in OpenClaw 2.0.

Shabnam Katoch

Shabnam Katoch

Growth Head

OpenClaw Memory Wiki: Complete Guide, Updated for OpenClaw 2.0

Updated September 2026 for OpenClaw 2.0 (v2026.9.x).

Memory-wiki turns your OpenClaw agent's notes into a structured knowledge base: claims, evidence, timestamps and staleness checks. It shipped in 2026.4.7, and OpenClaw 2.0 changed how it works (QMD is gone, Dreaming is on by default, and vaults can now be per-agent). This guide is updated for 2.0.

I asked my agent yesterday who manages our auth permissions. It checked the wiki, found the entry, and responded in under two seconds: "Alice manages the auth team. She handles all permission changes. Last updated three days ago."

Before memory-wiki, the same question triggered a semantic search across hundreds of memory chunks, returned six vaguely related results, and the agent guessed based on partial matches. Sometimes it got Alice right. Sometimes it didn't.

What changed in OpenClaw 2.0 (and 2026.9.x)

OpenClaw 2.0 (v2026.8.1) landed on September 1, 2026, and it is the biggest memory update since memory-wiki itself.

  • QMD is retired. Built-in Memory now owns the core search and recall path. Upgrading from 1.x? Run openclaw doctor --fix to migrate your data and rebuild the index from your canonical Markdown files. QMD-only reranking, query expansion and cross-agent transcript search are gone.
  • Per-agent wiki vaults. Each agent can now have its own isolated vault. Set vault.scope: "agent".
  • Faster dashboards. Wiki dashboards read a persisted snapshot from OpenClaw's shared plugin state. Dashboard requests never scan raw vault pages or wait for a full vault compile.
  • Dreaming is on by default, with provenance gating so untrusted writes are not promoted blindly.
  • Active Memory can now recall across a personal agent's own private conversations, with a deterministic lane first so ordinary replies stay fast.
  • You can make the agent forget with openclaw memory forget.

The older releases, for context:

  • 2026.4.5: Dreaming ships.
  • 2026.4.7: memory-wiki ships.
  • 2026.4.9 to 4.12: REM backfill, Memory Palace and Imported Insights tabs, Unicode slugs.
  • 2026.8.1 (OpenClaw 2.0): the changes above.

If you are on the latest release, v2026.9.5, everything in this guide applies unchanged.

What changed in OpenClaw 2.0 for memory: QMD replaced by built-in memory, Dreaming off to on by default, one shared vault to per-agent vaults

What memory-wiki actually is (in plain English)

Memory-wiki is a plugin that compiles durable knowledge into a wiki vault: deterministic page structure, structured claims and evidence, contradiction and freshness tracking, generated dashboards, and five wiki-native tools.

The key difference from MEMORY.md is that memory-wiki entries are structured. They are not just text notes. They have claims (factual statements the agent believes), evidence (where the claim came from), timestamps (when it was learned or updated), and health status (whether the claim is fresh or potentially stale).

When your agent writes "Alice manages the auth team" to memory-wiki, it stores not just the fact but when it learned this, from which conversation, and how confident it is. When you ask about auth permissions weeks later, wiki search returns the structured claim with its provenance, not a text chunk that might or might not contain the answer.

Memory-wiki is a knowledge base, not a notebook. MEMORY.md is raw notes. Memory-wiki is structured facts with sources, timestamps and health tracking.

How OpenClaw memory works in 2.0 (the full picture)

Memory-wiki is one layer in a larger system, and in 2.0 that system has five parts. Think of it as a pipeline.

  1. Conversation. The live session. Compaction trims it, and a memory flush saves the important parts before trimming. The config key is agents.defaults.compaction.memoryFlush.
  2. Daily notes. The agent writes observations to memory/YYYY-MM-DD.md (or memory/YYYY-MM-DD-<slug>.md). These decay with a 30-day half-life, so a note from last month scores at half its original weight.
  3. Dreaming. In the background, Dreaming scores those notes and promotes the durable ones into MEMORY.md, with directives landing in USER.md. It logs what it did in DREAMS.md so you can review it.
  4. USER.md and MEMORY.md. The curated core. USER.md holds stable preferences and communication directives. MEMORY.md holds long-term durable facts and decisions. Both are evergreen: they do not decay.
  5. Memory-wiki. Compiles all of that into structured claims with evidence and freshness checks.

The agent reads it back with three tools: memory_search (hybrid retrieval that runs vector search and BM25 keyword search in parallel), memory_get (reads specific memory files or line ranges), and intent (creates, lists and cancels event-conditioned standing intents). Add the five wiki tools when the plugin is on.

From the command line:

openclaw memory status          # index status, provider, embedding readiness
openclaw memory status --deep   # fuller diagnostic
openclaw memory search "auth team"
openclaw memory index --force   # rebuild the index

OpenClaw memory pipeline in 2.0: conversation to daily notes to Dreaming to MEMORY.md and USER.md to memory-wiki

Active Memory

Active Memory is the part that decides what gets recalled into a conversation, and when. Its default escalate mode runs a blocking recall sub-agent only when the message actually asks about the past and the deterministic memory lane found no strong trusted trigger match. Ordinary replies stay fast; questions about prior decisions, temporal questions and multi-hop questions get the deeper search. Query modes are message, recent and full.

In 2.0, an eligible personal agent can also recall relevant context from its own other private conversations, subject to isolation policies and access controls.

Memory-wiki does not replace Active Memory. With vaultMode: "bridge", the wiki reads from it.

What memory-wiki can do that raw notes can't

When you search raw notes, the system returns the most similar chunks. If the answer spans two chunks or the wording does not match, results get noisy.

When you search memory-wiki, the system returns structured claims. "Alice manages the auth team" is a single claim with a single source. The search finds the claim directly, not a chunk that might contain it. Structured knowledge is inherently more precise than full-text search over raw notes.

Freshness tracking and staleness detection

Memory-wiki tracks when each claim was created and last confirmed. Over time, facts go stale. Alice might move to a different team. Your API key might expire. A project deadline might change.

The wiki_lint tool checks claims for staleness and flags entries that have not been confirmed recently. Your agent can then tell you "Alice manages the auth team, but this has not been confirmed in 30 days" instead of confidently stating a potentially outdated fact.

Contradiction detection

If two wiki entries contradict each other ("project deadline is March 15" and "project deadline is April 1"), the system can identify and flag the contradiction. Raw MEMORY.md notes have no way to detect that two entries conflict. Memory-wiki's structured format makes contradiction clustering possible.

MEMORY.md vs memory-wiki at a glance

FeatureMEMORY.mdMemory-wiki
FormatRaw text notesStructured claims with frontmatter
Search methodHybrid chunk retrieval (vector + BM25)Claim-level lookup
Freshness trackingEvergreen, no per-fact timestampsPer-claim timestamps + staleness flags
Contradiction detectionNoneClustering across conflicting claims
ProvenanceNoneSource conversation + confidence
Best forQuick notes, preferences, ephemeral contextDurable facts: people, projects, policies

OpenClaw MEMORY.md vs memory-wiki side by side comparison showing raw notes versus structured claims with provenance

How to set up memory-wiki (self-hosted)

Memory-wiki ships as a bundled plugin. If you are running a pre-2.0 version, update first and run openclaw doctor --fix. For the safe update process including backup and rollback, our update guide covers how to upgrade without breaking your setup.

The working config

Enable the plugin under plugins.entries.memory-wiki. JSON5 syntax is supported, so unquoted keys and // comments are fine. If you deploy an AI agent on a managed platform instead, memory retention is a plan setting rather than a config block.

{
  plugins: {
    entries: {
      "memory-wiki": {
        enabled: true,
        config: {
          vaultMode: "bridge",        // or "isolated", "unsafe-local"
          vault: {
            scope: "global",          // or "agent"
            path: "~/.openclaw/wiki/main",
            renderMode: "obsidian",   // or "native"
          },
          bridge: {
            enabled: true,
            readMemoryArtifacts: true,
          },
          search: {
            backend: "shared",        // or "local"
            corpus: "all",            // or "wiki", "memory"
          },
          render: {
            createDashboards: true,
          },
        },
      },
    },
  },
}

Three values that older guides still recommend do not exist. vaultMode: "managed", vault.renderMode: "plain" and search.backend: "auto" are all invalid. Here is what the current plugin actually accepts:

KeyAllowed values
vaultModeisolated (default), bridge, unsafe-local
vault.scopeglobal (default), agent
vault.renderModenative (default), obsidian
search.backendshared (default), local
search.corpuswiki (default), memory, all
render.createDashboardstrue (default), false

The default vault lives at ~/.openclaw/wiki/main, with subdirectories for entities/, concepts/, syntheses/, sources/, reports/, _attachments/ and _views/. Setting vault.renderMode: "obsidian" generates Obsidian-compatible Markdown, so you can point Obsidian at the vault folder and browse the agent's knowledge base in a graph view.

vaultMode: which one should you pick?

ModeWhat it doesUse it when
isolated (default)The wiki only uses what is written into the wikiYou want a clean, curated knowledge base with no dependency on the memory plugin
bridgeAlso imports public artifacts and event logs from the active memory pluginYou want the wiki built from what the agent already remembers. The best choice for most people
unsafe-localReads local private paths directlyOnly for trusted local setups. The name is a warning

OpenClaw memory-wiki vaultMode picker showing isolated, bridge and unsafe-local cards with when to use each

One vault, or one per agent?

By default every agent shares one vault at ~/.openclaw/wiki/main. If you run a sales agent and a support agent, you probably do not want them sharing "facts".

Set vault.scope: "agent" and each configured agent gets its own wiki. In that scope, vault.path becomes a parent directory and OpenClaw appends the normalized agent id, so the default main agent resolves to <state-dir>/wiki/main. You can move the base folder with the OPENCLAW_STATE_DIR environment variable, which defaults to ~/.openclaw.

One caveat worth knowing: per-agent vaults are a same-process knowledge boundary, not an operating-system security boundary.

The five wiki tools

The plugin adds these tools to your agent:

  • wiki_status: reports vault mode, scope, agent resolution and health status. No params.
  • wiki_search: finds claims by topic, with optional access to the shared memory corpus.
  • wiki_get: reads a specific wiki page by ID or path.
  • wiki_apply: narrow synthesis or metadata updates on existing claims. Not for freeform page rewrites.
  • wiki_lint: structural validation, provenance gaps and contradictions. No params.

Wiki commands you'll actually use

openclaw wiki status            # vault mode, health, Obsidian availability
openclaw wiki doctor            # confirm the memory plugin exposes public artifacts
openclaw wiki compile           # build and refresh wiki pages
openclaw wiki search "auth team"
openclaw wiki get alice-chen
openclaw wiki bridge import     # pull in active memory artifacts (bridge mode)
openclaw wiki obsidian status   # check the Obsidian integration

openclaw wiki init, ingest, lint, apply and okf import are also available.

What a wiki page actually looks like

Memory-wiki pages are Markdown with structured YAML frontmatter. A typical person-entity page:

---
pageType: entity
entityType: person
id: alice-chen
canonicalId: alice-chen
aliases: [Alice, A. Chen]
privacyTier: team
lastRefreshedAt: 2026-09-12T14:23:00Z
bestUsedFor: [auth-permissions, security-reviews]
personCard:
  emails: [alice@example.com]
  timezone: America/Los_Angeles
  askForHints: [permission changes, SSO config]
claims:
  - id: c1
    text: Alice manages the auth team.
    status: active
    confidence: 0.92
    evidence:
      - source: chat:2026-09-08-standup
        kind: stated
  - id: c2
    text: Alice handles all permission changes for prod.
    status: active
    confidence: 0.88
    evidence:
      - source: doc:auth-runbook
        kind: written
relationships:
  - targetId: auth-team
    kind: manages
    confidence: 0.95
    evidenceKind: stated
---

The claims[] array is what makes wiki search precise: each statement has its own ID, confidence score and evidence trail. relationships[] lets the agent traverse the graph (who reports to whom, which project owns which service).

Anatomy of an OpenClaw memory-wiki page showing the Alice entity card with claims, confidence scores and evidence sources

Practical setup tips

Tell the agent to check the wiki first. Add a line to your SOUL.md like "For questions about people, projects or policies, check the wiki before answering from general knowledge." This makes the agent use the structured knowledge base instead of guessing from session context.

Run wiki_lint regularly. Schedule it as a cron job to flag stale claims. The agent can then confirm, update or remove outdated entries, keeping the knowledge base accurate instead of accumulating quietly-wrong facts.

What to store in memory-wiki (and what to leave in MEMORY.md)

Not everything belongs in memory-wiki. Here is the practical split.

Put in memory-wiki: Facts about people (who manages what, who prefers what communication style). Project details (deadlines, tech stacks, current status). Business policies (return windows, pricing tiers, escalation procedures). Recurring reference information the agent needs to look up accurately and frequently.

Leave in MEMORY.md and daily notes: Personal preferences that do not need provenance tracking. Quick notes from individual conversations. Temporary context that is relevant now but not permanently. Anything that is more "note to self" than "durable fact."

The rule of thumb: if getting this wrong would cause a problem (wrong deadline, wrong policy, wrong person), put it in memory-wiki where it has provenance and freshness tracking. If it is helpful but not critical ("user prefers dark mode"), MEMORY.md is fine.

If managing memory plugins, wiki configuration and staleness maintenance feels like more infrastructure work than you want, Better Claw includes persistent memory with hybrid search built into the platform. $49/month for Pro, 5 agents, 200+ verified skills, BYOK with 28+ providers. The memory layer is managed alongside everything else.

OpenClaw memory-wiki practical split showing which facts to put in memory-wiki versus leave in MEMORY.md

Making the agent forget

New in 2.0: openclaw memory forget removes memory the agent derived, while your original transcripts stay intact.

openclaw memory forget --session <id-or-key> --dry-run
openclaw memory forget --hook-source <source>
openclaw memory forget --participant <actor-id> --since 2026-08-01

Run it with --dry-run first to preview what would go. The selectors work cumulatively: matching any of them includes a session, and --since narrows the window. Use it when a wrong "fact" keeps coming back, or when someone asks to be removed.

Memory-wiki plus Dreaming: the compound effect

Dreaming shipped in OpenClaw 2026.4.5, two days before memory-wiki, as background memory consolidation inside the memory-core plugin. Since 2.0 it is on by default. You can disable it with plugins.entries.memory-core.config.dreaming.enabled: false.

The Deep phase is the one that writes: it scores candidates and promotes durable ones into the curated core. Candidates are ranked by weighted signals, specifically retrieval relevance, recall frequency, query diversity, recency, multi-day recurrence and conceptual richness. The Light and REM phases stage and reflect without making permanent writes.

The important 2.0 change is provenance gating. Candidates with an origin class of untrusted or system are excluded structurally, before any prompt is built. That is a precondition, not a score penalty: no amount of recall frequency promotes untrusted content into MEMORY.md. In practice, memory written after a network or provider call stays untrusted and out of automatic context, though an explicit search can still surface it.

Memory-wiki is the foundation. Dreaming is the process that keeps it current.

For the broader comparison of memory plugins and how they complement memory-wiki, our plugins guide covers Mem0, Cognee, Honcho and the rest of the memory stack alongside memory-wiki.

Troubleshooting memory-wiki

The wiki is empty. Check openclaw wiki status. In isolated mode nothing is imported automatically. Switch to bridge or run openclaw wiki bridge import, then openclaw wiki compile.

wiki_search finds nothing, but the fact is in MEMORY.md. Your search.corpus is probably "wiki", which is the default. Set it to "all".

Bridge mode reports zero exported artifacts. The active memory plugin is not currently exposing public bridge inputs. Run openclaw wiki doctor to confirm.

Search broke after upgrading to 2.0. QMD is gone. Run openclaw doctor --fix, then openclaw memory index --force.

Obsidian shows plain files, no links or graph. Set vault.renderMode: "obsidian" and recompile. Check with openclaw wiki obsidian status.

The agent ignores the wiki. Add the SOUL.md instruction from the setup tips above.

Why this matters

Memory-wiki is the first time OpenClaw's memory system moved from "store and search text" to "maintain structured knowledge." It is the difference between an assistant with a pile of sticky notes and an assistant with a well-organized reference manual. OpenClaw 2.0 finished the job by folding search and recall back into the core, so there is now one memory system instead of a plugin stack you have to assemble.

If you want your agent's memory managed for you on a no-code AI agent platform, start with Better Claw. $49/month for Pro, 5 agents, 200+ verified skills, BYOK with 28+ providers, and a 7-day money-back guarantee. Updates land automatically and memory persistence is built in, so your agent builds its knowledge base while you focus on what the knowledge is about, not how it is stored.

Frequently Asked Questions

What is OpenClaw memory-wiki?

Memory-wiki is a structured, persistent knowledge base introduced in OpenClaw 2026.4.7. Unlike MEMORY.md (raw text notes), it stores claims with evidence, timestamps and freshness tracking. Agents search, write and maintain wiki entries across sessions using five tools: wiki_status, wiki_search, wiki_get, wiki_apply and wiki_lint.

How does memory-wiki differ from MEMORY.md?

MEMORY.md stores raw text notes; memory-wiki stores structured claims with provenance (source, timestamp, confidence, freshness). Memory-wiki supports claim-level search, staleness detection and contradiction clustering. MEMORY.md is for quick notes. Memory-wiki is for durable facts that need accuracy tracking over time.

Is QMD still supported in OpenClaw?

No. OpenClaw 2.0 (v2026.8.1) retired QMD and moved search and recall into built-in Memory. Run openclaw doctor --fix after upgrading to migrate your data and rebuild the index. QMD-only reranking, query expansion and cross-agent transcript search were removed.

What is OpenClaw Active Memory?

Active Memory is the layer that decides what the agent recalls into a conversation. Its default escalate mode only runs the blocking recall sub-agent when a message asks about the past and the deterministic lane found no strong match, so ordinary replies stay fast. Since 2.0, an eligible personal agent can also recall across its own private conversations.

How does the OpenClaw memory system work?

Five layers. The live conversation is trimmed by compaction, with a memory flush saving important parts first. Observations go to daily notes in memory/YYYY-MM-DD.md. Dreaming scores those in the background and promotes durable ones into MEMORY.md and USER.md, logging its work in DREAMS.md. Memory-wiki then compiles all of it into structured claims. The agent reads it back with memory_search, memory_get and the wiki tools.

Can each agent have its own wiki?

Yes, since 2.0. Set vault.scope: "agent" in the memory-wiki config. In that scope vault.path becomes a parent directory and OpenClaw appends the normalized agent id. Note that per-agent vaults are a knowledge boundary, not an operating-system security boundary.

How do I make OpenClaw forget something?

Run openclaw memory forget with a --session, --hook-source or --participant filter, optionally narrowed with --since. Use --dry-run to preview. It removes attributable derived memory but keeps the original transcripts.

What's the difference between Dreaming and memory-wiki?

They solve different problems. Memory-wiki is the storage layer, a structured knowledge base of claims. Dreaming is the consolidation process that scores short-term signals and promotes qualified items into MEMORY.md. Memory-wiki holds the knowledge; Dreaming decides what becomes long-term memory. Dreaming is on by default since 2.0.

How do I enable memory-wiki in OpenClaw?

Enable the bundled memory-wiki plugin under plugins.entries.memory-wiki in your config and restart the gateway. The plugin adds five tools to your agent: wiki_status, wiki_search, wiki_get, wiki_apply and wiki_lint. Set vaultMode: "bridge" and search.corpus: "all" for the most useful default, then add a SOUL.md instruction telling the agent to check the wiki before answering recurring questions.

Does memory-wiki work with other memory plugins?

Yes. Memory-wiki sits on top of OpenClaw's built-in memory and Active Memory rather than replacing them. In bridge mode it imports what active memory already knows. External plugins like Mem0 can still handle automatic fact capture alongside it.

Does memory-wiki cost extra?

The plugin is free and bundled with OpenClaw. Wiki operations use your existing model provider, so they add marginal API costs comparable to regular memory search. BetterClaw ($49/month for Pro), a no-code AI agent platform rather than an OpenClaw host, uses its own built-in persistent memory instead.

Want to skip the setup?

BetterClaw does this in 60 seconds. No Docker, no config files.

Start free
Tags:OpenClaw memory wikiOpenClaw memory-wikiOpenClaw memoryOpenClaw active memoryOpenClaw 2.0OpenClaw memory systemOpenClaw persistent knowledgeOpenClaw structured memoryOpenClaw wiki pluginOpenClaw knowledge base
Share this article
Was this helpful?