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