Documentation Index
Fetch the complete documentation index at: https://docs.mem0.ai/llms.txt
Use this file to discover all available pages before exploring further.
New Features:
- Skills-mode auto-setup:
enableSkillsConfig()now runs automatically after onboarding — enables triage, recall (with reranking + keyword search), and dream consolidation withtools.profile = "full"and disables the built-in session-memory hook to avoid conflicts - Memory runtime capability: Plugin now exposes
runtime.getMemorySearchManager()andresolveMemoryBackendConfig()on the registered memory capability, enabling OpenClaw gateway to query memory status and backend config directly - Dimension-aware collections: OSS wizard detects embedder dimension changes and creates a new collection (
mem0_<dims>d) automatically, with a warning about old memories being inaccessible under the new embedder - Tool documentation in skills: Both
memory-triageandmemory-dreamSKILL.md files now include full tool reference sections listing all available tools with parameters
- Auto-capture and auto-recall default to enabled:
autoCaptureandautoRecallnow default totrue(wasfalse). Manifest descriptions updated accordingly. Ignored in skills mode memory_updateover delete+add: Skills now prefermemory_updatefor in-place edits — atomic and preserves edit history. Consolidation pattern updated: update best memory, delete redundant ones- Search threshold lowered: Default
searchThresholdreduced from0.5to0.1for broader recall. Removed hardcoded0.6recall-specific override — all searches now use the configured threshold - Embedder dimension propagation: Vector store config auto-resolves dimensions from embedder config when not explicitly set. Syncs
dimensionandembeddingModelDimsfields for Qdrant/PGVector compatibility - Config file write safety:
writeFullConfig()now re-reads and deep-merges thepluginssection before writing, preservinginstallsandslotswritten by the OpenClaw gateway - Additional embedder models: Added
mxbai-embed-large(1024),all-minilm(384), andsnowflake-arctic-embed(1024) to known embedder dimensions
- Bumped
protobufjsto>=7.5.5via pnpm overrides (GHSA-xq3m-2v4x-88gg) (#5012)
- Moved
bootstrapTelemetryFlag()and removedensureInstallRecord()from module-level side effects — both now run insideregister()to avoid crashes when loaded outside OpenClaw gateway - Fixed OSS history DB path resolution: absolute paths no longer passed through
resolvePath(), preventing double-prefix bugs - Manifest
providerAuthEnvVarsreplaced with spec-compliantsetup.providersformat usingid+envVars
- Bumped
mem0aifrom3.0.1to3.0.2 - Bumped
pluginApiandminGatewayVersioncompat to>=2026.4.24
Security:
- Telemetry
distinct_idnow uses SHA-256 instead of MD5 — prevents rainbow-table reversal of API key hashes - User email is now SHA-256 hashed before sending as
distinct_id— no PII in telemetry payloads - Declared PostHog telemetry endpoint (
us.i.posthog.com) inproviderEndpoints
- Fixed version-pinned install records preventing plugin updates.
ensureInstallRecord()now detects semver-pinned specs (e.g.@mem0/[email protected]) and rewrites them to@latestorclawhub:prefix soopenclaw plugins updateresolves to the newest release - Fixed
searchThresholddefault inconsistency: standardized to0.3across docs, README, and manifest PLUGIN_VERSIONnow injected at build time via tsupdefinefrompackage.json— no more hardcoded version strings
- Removed non-spec fields:
requiredEnvVars,dataLocations,privacy,setup(withexternalEndpoints,providers,requiresRuntime,postInstallHint) - Replaced
setup.externalEndpointswith spec-compliantproviderEndpointsusingendpointClass+hostsformat - Env var declarations now rely solely on
providerAuthEnvVars(already spec-compliant)
- Fixed
openclaw plugins updatecommand: uses plugin ID (openclaw-mem0), not npm package name (@mem0/openclaw-mem0) - Added update section to README
- Removed redundant “Key Features” and “Conclusion” sections from integration docs
Security & Compliance:
- Added top-level
requiredEnvVarsto plugin manifest, declaring env vars per mode (platform, OSS OpenAI, OSS Anthropic, OSS Ollama). Fixes ClaHub scanner “required env vars: none” mismatch - Added
sensitive: trueand descriptions toapiKeyanduserEmailinconfigSchema— previously only declared inuiHints - Added
default: falsewith descriptions toautoCaptureandautoRecallinconfigSchemaso scanner can confirm opt-in defaults - Added
dataLocationsfield to manifest declaring all persistence paths (config, vectorStore, historyDb, dreamState) - Added
privacyfield to manifest documenting data flow for platform vs open-source mode and credential storage guidance - Added
externalEndpointstosetupsection declaring api.mem0.ai and app.mem0.ai with purpose and requirement context
- Replaced direct
process.envaccess intests/cli-commands.test.tsandtests/fs-safe.test.tswithvi.stubEnv/vi.unstubAllEnvs. Fixes ClaHub static analysis flag for “environment variable access combined with network send” - 421 tests across 15 test files
New Features:
- OSS Onboarding Wizard: New guided 4-step interactive setup for open-source mode — walks through LLM provider, embedding provider, vector store, and user ID selection with prefilled defaults
- Agent-Friendly CLI: Added
--jsonflag to all 16 CLI commands for machine-readable output. Agents can callopenclaw mem0 help --jsonto discover every command and flag - Non-Interactive OSS Setup: Added
--mode open-sourcewith--oss-llm,--oss-embedder,--oss-vectorflags for fully automated OSS configuration without prompts - JSON Helpers Module: New
cli/json-helpers.tswithjsonOut,jsonErr, andredactSecretsutilities for consistent structured output
- Init Flow Redesigned: Replaced 3-option flat menu with 2-level structure: Platform (email login or API key) and Open Source (guided wizard)
- Provider Selection: LLM providers: OpenAI, Ollama, Anthropic. Embedding providers: OpenAI, Ollama. Vector stores: Qdrant, PGVector
- Input Prefill: All prompts with defaults (base URL, user ID) now prefill the input field instead of showing defaults in brackets
- Smart Reuse: When LLM and embedder use the same provider, API key and base URL are automatically reused from the LLM step
- Default Model: Updated default LLM model to
gpt-5-mini - Manifest Compliance: Removed undocumented fields, aligned env var declarations between SKILL.md and manifest, fixed
configSchema.requiredfor clean installs
- 404 tests across 15 test files (+3 new:
json-helpers.test.ts,oss-wizard.test.ts,cli-commands.test.ts)
New Features:
- Chat-Based Setup: Added chat-based Platform setup flow — users can now configure the plugin conversationally instead of editing config files manually
- Installation Docs Rewrite: Rewrote README and integration docs with chat-first setup, numbered manual steps.
Bug Fixes:
- Telemetry: Replaced shared
"anonymous-openclaw"fallback with a persistent per-machine random hash (openclaw-anon-<uuid>), so anonymous plugin users are counted individually in PostHog (#4790) - Telemetry: Added PostHog
$identifyevent on first authenticated run to stitch anonymous history onto the authenticated profile (#4790) - Telemetry: Fixed event loss on short-lived CLI invocations — added
beforeExithandler to flush queued events before the process exits (#4790) - Telemetry: Added lazy
/v1/ping/email resolution so users who configure API key outsidemem0 initshow as their email in PostHog, not an md5 hash (#4790) - Telemetry: Unified CLI event prefix from
openclaw.<cmd>toopenclaw.cli.<cmd>on the needsSetup branch to match the authenticated branch (#4790)
- API: Added
source: "OPENCLAW"to all provider calls (add,search,getAll) across tools, CLI commands, recall, and the OSS backend adapter (#4790)
Bug Fixes:
- Init interactive choice bug: Fixed number selection in
openclaw mem0 init— entering 1/2/3 now correctly selects the corresponding option (was broken by readline prefill concatenating with user input) - OSS pgvector crash (#4727): Fixed “Client has already been connected” cascade when using pgvector in OSS mode. The warmup call swallowed errors leaving a half-initialized pg client; concurrent recall/capture then all hit
client.connect()on the same client. Fix: let warmup errors propagate (soinitPromiseresets and retries with a fresh Memory + fresh pg client) and build fresh config objects per attempt instead of mutating shared state.
orgId/projectIdconfig parameters: Removed from config schema, CLI (config show/get/set), init display, and providers. The API key is project-scoped, so separate org/project IDs are unnecessary and could cause access errors if mismatched.enableGraphconfig parameter: Removed from all config surfaces, providers, backend, and tools. Graph memory is being deprecated — removing the flag avoids unnecessary exposure.
New Features:
- Interactive init flow:
openclaw mem0 initwith interactive menu (email verification or direct API key). Non-interactive modes:--api-key,--email,--email --code memory_addtool: Replacesmemory_store— name now matchesmem0CLI and platform APImemory_deletetool: Unified delete — single ID, search-then-delete, bulk, entity cascade. Replacesmemory_forgetandmemory_delete_all- CLI subcommands:
openclaw mem0 init,openclaw mem0 status,openclaw mem0 config show,openclaw mem0 config set importCLI command: Bulk-import memories from a JSON file with--user-idand--agent-idoverridesevent list/event statusCLI commands: Monitor background processing eventsfs-safe.tsmodule: Isolated filesystem wrappers in a separate entry pointbackend/module:PlatformBackendwith direct HTTP API access for CLI commands- Plugin manifest: Added
contracts.tools,configSchema, anduiHintstoopenclaw.plugin.json - Test suite: 329 tests across 10 test files
- Modular architecture: Extracted tools into
tools/directory (6 files) and CLI intocli/commands.ts - Code splitting: tsup builds with
splitting: trueand two entry points - Skills updated: All SKILL.md files reference new tool names (
memory_add,memory_delete) - Auto-recall timeout: Recall wrapped in 8-second
Promise.race - Auto-capture fire-and-forget:
provider.add()runs in background via.then()/.catch() - Auto-capture minimum content gate: Skips extraction when total user content is fewer than 50 chars
memory_storetool — replaced bymemory_addmemory_forgettool — replaced bymemory_deletememory_delete_alltool — merged intomemory_deletememory_historytool andhistoryCLI command — deprecated
Bug Fixes:
- Security: Added
safePath()containment helper toreadSkillFileandreadDomainOverlayinskill-loader.ts— prevents directory traversal - Noise filter: Reverted incorrect
After-Compactionregex rename back toPost-Compaction
- Supply-chain hardening: Pinned
mem0aidependency to exact2.3.0(was^2.3.0)
- 12 new tests covering
safePath,readSkillFile,readDomainOverlay, andloadSkillwith traversal inputs
Bug Fixes:
- Security: Removed
resolveEnvVars()andresolveEnvVarsDeep()fromconfig.ts— plugin-side env resolution was redundant and triggered static analysis warnings (#4676)
New Features:
- Skills-based memory architecture: New skill-loader and skill-based extraction pipeline with batched extraction (#4624)
- Dream gate: Memory consolidation and dream-cycle processing during idle periods
- Enhanced recall: New
recall.tsmodule with improved recall logic and skill-aware retrieval - Memory triage skill: Domain-aware memory triage with companion domain support and recall protocol
- Memory dream skill: Skill for memory consolidation during idle periods
- Plugin configuration: Added
openclaw.plugin.jsonmanifest andscripts/configure.pysetup helper
- Extraction pipeline refactored to use skills-based architecture for more contextual and higher quality memory capture
New Features:
- Improved extraction quality: Enhanced noise filtering, deduplication, and better extraction instructions
- Credential detection: Improved detection of credentials, API keys, and secrets in extraction instructions (#4552)
- Standalone timestamps: Prevented extraction of standalone timestamps as memories (#4550)
New Features:
- Non-interactive trigger filtering: Skips recall and capture for
cron,heartbeat,automation, andscheduletriggers - Subagent hallucination prevention: Detects ephemeral subagent sessions and routes recall to parent namespace
- Dynamic recall thresholding: Memories scoring less than 50% of top result are dropped
- SQLite resilience: Init error recovery with automatic retry for OSS mode
disableHistoryconfig option: Newoss.disableHistoryflag- 78 unit tests covering filtering, isolation, trigger filtering, subagent detection, and SQLite resilience
- Auto-recall threshold raised from 0.5 to 0.6 for stricter precision
- Recall candidate pool increased to
topK * 2for better filtering headroom - Relaxed extraction instructions: related facts kept together to preserve context
- Concurrent session race condition: Lifecycle hooks now use
ctx.sessionKeydirectly instead of a shared mutable variable
New Features:
- Message filtering pipeline: Multi-stage noise removal before extraction
- Broad recall for new sessions: Short or new-session prompts trigger secondary broad search
- Client-side threshold filtering: Safety net that drops low-relevance results
- Temporal anchoring: Extraction instructions now include current date
- 55 unit tests covering filtering and isolation helpers
- Extraction window expanded from last 10 to last 20 messages
- Rewritten custom extraction instructions for conciseness and deduplication
- Refactored monolithic
index.ts(1772 lines) into 6 focused modules
Bug Fixes:
- Updated
mem0aidependency with sqlite3 to better-sqlite3 migration (#4270)
New Features:
- Per-agent memory isolation for multi-agent setups via
agentId - “Understanding userId” section in docs
- Updated config examples to use concrete
userIdvalues instead of placeholders
- Migrated platform search to Mem0 v2 API
New Features:
- Source field for openclaw memory entries
- Auto-recall injection and auto-capture message drop
New Features:
- Initial release of the OpenClaw Mem0 plugin
- Platform mode (Mem0 Cloud) and open-source mode support
- Auto-recall: inject relevant memories before each turn
- Auto-capture: store facts after each turn
- Configurable
topK,threshold, andapiVersionoptions