From e36fa26eb145a4437c9b840d076c5ee9116b0fff Mon Sep 17 00:00:00 2001 From: kartik-mem0 Date: Wed, 8 Apr 2026 14:52:32 +0530 Subject: [PATCH] docs: removing the changelog.mdx file adn replacing it with new changelog system --- docs/changelog/highlights.mdx | 103 ++++++++ docs/changelog/openclaw.mdx | 173 +++++++++++++ docs/changelog/platform.mdx | 290 +++++++++++++++++++++ docs/{changelog.mdx => changelog/sdk.mdx} | 296 +--------------------- docs/docs.json | 9 +- openclaw/CHANGELOG.md | 168 ------------ 6 files changed, 576 insertions(+), 463 deletions(-) create mode 100644 docs/changelog/highlights.mdx create mode 100644 docs/changelog/openclaw.mdx create mode 100644 docs/changelog/platform.mdx rename docs/{changelog.mdx => changelog/sdk.mdx} (86%) delete mode 100644 openclaw/CHANGELOG.md diff --git a/docs/changelog/highlights.mdx b/docs/changelog/highlights.mdx new file mode 100644 index 000000000..9eeac95e8 --- /dev/null +++ b/docs/changelog/highlights.mdx @@ -0,0 +1,103 @@ +--- +title: "Highlights" +description: "Major product launches, headline features, and milestones for Mem0." +mode: "wide" +--- + + + +**Mem0 Skill Graph for AI Coding Agents** + +Launched three interconnected skills that give Claude Code, Cursor, and Codex agents structured access to Mem0: + +- **mem0 Core Skill** — Python/TypeScript SDK reference, REST API patterns, and framework integration guides +- **mem0-cli Skill** — Terminal command reference, configuration workflows, and CI/CD recipes +- **mem0-vercel-ai-sdk Skill** — Vercel AI SDK provider API docs, memory utilities, and usage patterns + +Skills enable agents to use Mem0 without needing to search docs — memory operations, configuration, and best practices are available in-context. + + + + + +**OpenClaw Plugin — Production-Ready Release** + +The OpenClaw Mem0 plugin reached production readiness with a rapid v1.0.0 through v1.0.4 release cycle: + +- **Skills-based memory architecture** — Complete extraction pipeline refactor with skill-loader, batched extraction, and domain-aware memory triage +- **Dream gate** — Memory consolidation during idle periods for higher-quality long-term memory +- **Interactive CLI** — `openclaw mem0 init` with email verification, plus subcommands for status, config, import, and event monitoring +- **Security hardening** — Path traversal protection, pinned dependencies, removed redundant env var resolution +- **329 tests** across 10 test files + + + + + +**Official Mem0 CLI — Available on PyPI and npm** + +Launched the Mem0 command-line interface for both Python (`mem0-cli`) and Node.js (`@mem0/cli`): + +- **Full command suite** — `add`, `search`, `list`, `get`, `update`, `delete`, `import`, `config`, `init`, `status`, `entity`, `event` +- **Email verification login** — `mem0 init` with interactive setup +- **Platform and OSS modes** — Works with Mem0 Cloud or self-hosted deployments +- **JSON output** — `--json` flag for scripting and CI/CD pipelines +- **Available now** — `pip install mem0-cli` or `npm install -g @mem0/cli` + + + + + +**Mem0 Plugins for Claude Code, Cursor, and Codex** + +Launched official Mem0 plugins for major AI development environments: + +- **MCP server integration** — 9 memory management tools (add, search, update, delete, bulk operations, entity management) +- **Lifecycle hooks** — Automatic memory capture at session start, context compaction, task completion, and session end +- **Cloud MCP server** — Replaced local MCP and Smithery with managed cloud endpoint at `mcp.mem0.ai` +- **Streamable HTTP transport** — Real-time data streaming for MCP protocol + + + + + +**NemoClaw + Mem0 Plugin** + +Added NemoClaw integration with setup scripts and quickstart guide, expanding the plugin ecosystem to NVIDIA's agent framework. + + + + + +**Turbopuffer, MiniMax, and pgvector for Node.js** + +Expanded the provider ecosystem across both SDKs: + +- **Turbopuffer** — New vector database provider for Python SDK +- **MiniMax** — New LLM provider with AWS Bedrock support +- **pgvector for Node.js** — PostgreSQL vector support added to the TypeScript OSS SDK +- **Reasoning models** — Added `reasoning_effort` parameter for OpenAI o1/o3 models + + + + + +**TypeScript SDK — SQLite Migration (Breaking Change)** + +Migrated from `sqlite3` to `better-sqlite3` to fix native binding resolution failures in plugin systems and container environments. Minimum Node.js version for OSS sqlite features is now Node 20+. + + + + + +**Python SDK v1.0.0** + +Major milestone release with: + +- **Reranker support** — Cohere, ZeroEntropy, Hugging Face, Sentence Transformers, and LLM-based rerankers +- **New vector stores** — Azure MySQL and Azure AI Search +- **Metadata filtering** for self-hosted deployments +- **Async mode as default** — Better performance out of the box +- **OpenAI 2.x compatibility** + + diff --git a/docs/changelog/openclaw.mdx b/docs/changelog/openclaw.mdx new file mode 100644 index 000000000..f5b062eab --- /dev/null +++ b/docs/changelog/openclaw.mdx @@ -0,0 +1,173 @@ +--- +title: "OpenClaw" +description: "Release notes for the OpenClaw plugin and agent harness." +mode: "wide" +--- + + + +**New Features:** +- **Interactive init flow**: `openclaw mem0 init` with interactive menu (email verification or direct API key). Non-interactive modes: `--api-key`, `--email`, `--email --code` +- **`memory_add` tool**: Replaces `memory_store` — name now matches `mem0` CLI and platform API +- **`memory_delete` tool**: Unified delete — single ID, search-then-delete, bulk, entity cascade. Replaces `memory_forget` and `memory_delete_all` +- **CLI subcommands**: `openclaw mem0 init`, `openclaw mem0 status`, `openclaw mem0 config show`, `openclaw mem0 config set` +- **`import` CLI command**: Bulk-import memories from a JSON file with `--user-id` and `--agent-id` overrides +- **`event list` / `event status` CLI commands**: Monitor background processing events +- **`fs-safe.ts` module**: Isolated filesystem wrappers in a separate entry point +- **`backend/` module**: `PlatformBackend` with direct HTTP API access for CLI commands +- **Plugin manifest**: Added `contracts.tools`, `configSchema`, and `uiHints` to `openclaw.plugin.json` +- **Test suite**: 329 tests across 10 test files + +**Changes:** +- **Modular architecture**: Extracted tools into `tools/` directory (6 files) and CLI into `cli/commands.ts` +- **Code splitting**: tsup builds with `splitting: true` and 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 + +**Removed:** +- `memory_store` tool — replaced by `memory_add` +- `memory_forget` tool — replaced by `memory_delete` +- `memory_delete_all` tool — merged into `memory_delete` +- `memory_history` tool and `history` CLI command — deprecated + + + + + +**Bug Fixes:** +- **Security**: Added `safePath()` containment helper to `readSkillFile` and `readDomainOverlay` in `skill-loader.ts` — prevents directory traversal +- **Noise filter**: Reverted incorrect `After-Compaction` regex rename back to `Post-Compaction` + +**Changes:** +- **Supply-chain hardening**: Pinned `mem0ai` dependency to exact `2.3.0` (was `^2.3.0`) + +**Tests:** +- 12 new tests covering `safePath`, `readSkillFile`, `readDomainOverlay`, and `loadSkill` with traversal inputs + + + + + +**Bug Fixes:** +- **Security**: Removed `resolveEnvVars()` and `resolveEnvVarsDeep()` from `config.ts` — plugin-side env resolution was redundant and triggered static analysis warnings ([#4676](https://github.com/mem0ai/mem0/pull/4676)) + + + + + +**New Features:** +- **CD workflow**: Added continuous deployment workflow with OIDC trusted publishing ([#4672](https://github.com/mem0ai/mem0/pull/4672)) +- **Plugin configuration manifest**: Added `compat` and `build` metadata to `package.json` ([#4667](https://github.com/mem0ai/mem0/pull/4667)) +- **LICENSE**: Added Apache-2.0 license file ([#4667](https://github.com/mem0ai/mem0/pull/4667)) + +**Bug Fixes:** +- **Dream gate**: Fixed cheap-first ordering, session isolation, and verified completion ([#4666](https://github.com/mem0ai/mem0/pull/4666)) +- **Graceful startup**: Plugin now starts gracefully when no API key is configured ([#4669](https://github.com/mem0ai/mem0/pull/4669)) + + + + + +**New Features:** +- **Skills-based memory architecture**: New skill-loader and skill-based extraction pipeline with batched extraction ([#4624](https://github.com/mem0ai/mem0/pull/4624)) +- **Dream gate**: Memory consolidation and dream-cycle processing during idle periods +- **Enhanced recall**: New `recall.ts` module 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.json` manifest and `scripts/configure.py` setup helper + +**Changes:** +- 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 + +**Bug Fixes:** +- **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`, and `schedule` triggers +- **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 +- **`disableHistory` config option**: New `oss.disableHistory` flag +- 78 unit tests covering filtering, isolation, trigger filtering, subagent detection, and SQLite resilience + +**Changes:** +- Auto-recall threshold raised from 0.5 to 0.6 for stricter precision +- Recall candidate pool increased to `topK * 2` for better filtering headroom +- Relaxed extraction instructions: related facts kept together to preserve context + +**Bug Fixes:** +- **Concurrent session race condition**: Lifecycle hooks now use `ctx.sessionKey` directly 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 + +**Changes:** +- 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 `mem0ai` dependency with sqlite3 to better-sqlite3 migration (#4270) + + + + + +**New Features:** +- Per-agent memory isolation for multi-agent setups via `agentId` +- "Understanding userId" section in docs + +**Changes:** +- Updated config examples to use concrete `userId` values instead of placeholders + +**Bug Fixes:** +- Migrated platform search to Mem0 v2 API + + + + + +**New Features:** +- Source field for openclaw memory entries + +**Bug Fixes:** +- 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`, and `apiVersion` options + + diff --git a/docs/changelog/platform.mdx b/docs/changelog/platform.mdx new file mode 100644 index 000000000..70e8839d1 --- /dev/null +++ b/docs/changelog/platform.mdx @@ -0,0 +1,290 @@ +--- +title: "Platform" +description: "Release notes for the Mem0 hosted platform — backend, dashboard, billing, and infrastructure changes." +mode: "wide" +--- + + + +**Bug Fixes:** +- **Memory:** Fixed ADD functionality + + + + + +**New Features:** +- **UI:** Added Settings UI and latency display +- **Performance:** Neo4j query optimization + +**Bug Fixes:** +- **OpenMemory:** Fixed OMM raising unnecessary exceptions + + + + + +**Improvements:** +- **UI:** Updated Event UI +- **Performance:** Fixed N+1 query issue in semantic_search_v2 by optimizing MemorySerializer field selection + +**Bug Fixes:** +- **Memory:** Fixed duplicate memory index sentry error + + + + + +**New Features:** +- **UI:** New Settings Page +- **Memory:** Duplicate memories entities support + +**Improvements:** +- **Performance:** Optimized semantic search and get_all APIs by eliminating N+1 queries + + + + + +**New Features:** +- **Database:** Implemented read replica routing with enhanced logging and app-specific DB routing + +**Improvements:** +- **Performance:** Improved query performance in search v2 and get all v2 endpoints + +**Bug Fixes:** +- **API:** Fixed pagination for get all API + + + + + +**Bug Fixes:** +- **Graph:** Fixed social graph bugs and connection issues + + + + + +**Improvements:** +- **Rate Limiting:** New rate limit for V2 Search + +**Bug Fixes:** +- **Slack:** Fixed Slack rate limit error with backend improvements + + + + + +**Improvements:** +- **Performance:** + - Changed connection pooling time to 5 minutes + - Separated graph lambdas for better performance + + + + + +**Improvements:** +- **Graph:** Graph Optimizations V2 and memory improvements + + + + + +**New Features:** +- **Database:** Added read replica support for improved database performance +- **UI:** Implemented UI changes for Users Page +- **Feedback:** Enabled feedback functionality + +**Bug Fixes:** +- **Serializer:** Fixed GET ALL Serializer + + + + + +**New Features:** +- **UI:** User Page Revamp and New Users Page + + + + + +**New Features:** +- **Users:** New Users Page implementation +- **Tools:** Added script to backfill memory categories + +**Bug Fixes:** +- **Filters:** Fixed Filters Get All functionality + + + + + +**Improvements:** +- **Graph:** Graph Memory optimization +- **Memory:** Fixed exact memories and semantically similar memories retrieval + + + + + +**Improvements:** +- **Categorization:** Refactored categorization logic to utilize Gemini 2.5 Flash and improve message handling + + + + + +**Bug Fixes:** +- **Memory:** Fixed old_memory issue in Async memory addition lambda +- **Events:** Fixed missing events + + + + + +**Improvements:** +- **Graph:** Improvements to graph memory and added user to LTM-STM + + + + + +**New Features:** +- **Graph:** Added support for SQS in graph memory addition +- **Testing:** Added Locust load testing script and Grafana Dashboard + + + + + +**Improvements:** +- **Rate Limiting:** Updated rate limiting for ADD API to 1000/min +- **Performance:** Improved Neo4j performance + + + + + +**New Features:** +- **Memory:** Edit Memory From Drawer functionality +- **API:** Added Topic Suggestions API Endpoint + + + + + +**New Features:** +- **Group Chat:** Group-Chat v2 with Actor-Aware Memories +- **Memory:** Editable Metadata in Memories +- **UI:** Memory Actions Badges + + + + + +**New Features:** +- **Rate Limiting:** Implemented comprehensive rate limiting system + +**Improvements:** +- **Performance:** Added performance indexes for memory stats query + +**Bug Fixes:** +- **Search:** Fixed search events not respecting top-k parameter + + + + + +**New Features:** +- **Memory Management:** Implemented OpenAI Batch API for Memory Cleaning with fallback +- **Playground:** Added Claude 4 support on Playground + +**Improvements:** +- **Memory:** Added ability to update memory metadata + + + + + +**New Features:** +- **UI:** New Memories Page UI design + + + + + +**Improvements:** +- **Infrastructure:** Migrated to Application Load Balancer (ALB) + + + + + +**Improvements:** +- **Memory Management:** Enhanced Memory Management with Cosine Similarity Fallback + + + + + +**New Features:** +- **OMM:** Added OMM Script and UI functionality + +**Improvements:** +- **API:** Added filters validation to semantic_search_v2 endpoint + + + + + +**New Features:** +- **Intercom:** Set Intercom events for ADD and SEARCH operations +- **OpenMemory:** Added Posthog integration and feedback functionality +- **MCP:** New JavaScript MCP Server with feedback support + +**Improvements:** +- **Structured Data:** Enhanced structured data handling in memory management + + + + + +**New Features:** +- **OAuth:** Added Mem0 OAuth integration +- **OMM:** Added OMM-Mem0 sync for deleted memories + + + + + +**New Features:** +- **Filters:** Implemented Wildcard Filters and refactored filter logic in V2 Views + + + + + +**New Features:** +- **OpenMemory Cloud:** Added OpenMemory Cloud support +- **Structured Data:** Added 'structured_attributes' field to Memory model + + + + + +**New Features:** +- **Projects:** Added version and enable_graph to project views +- **OpenMemory:** Added Postgres support for OpenMemory + + + + + +**Bug Fixes:** +- **Core:** Fixed unicode error in user_id, agent_id, run_id and app_id + + + diff --git a/docs/changelog.mdx b/docs/changelog/sdk.mdx similarity index 86% rename from docs/changelog.mdx rename to docs/changelog/sdk.mdx index 6384a79c8..c5d534876 100644 --- a/docs/changelog.mdx +++ b/docs/changelog/sdk.mdx @@ -1,10 +1,9 @@ --- -title: "Product Updates" -description: "Latest releases, bug fixes, and improvements for the Mem0 Python and TypeScript SDKs." +title: "SDK" +description: "Release notes for the Mem0 Python SDK, TypeScript SDK, and Vercel AI SDK." mode: "wide" --- - @@ -844,7 +843,6 @@ mode: "wide" - **New Features & Updates:** @@ -1160,294 +1158,6 @@ mode: "wide" - - - - -**Bug Fixes:** -- **Memory:** Fixed ADD functionality - - - - - -**New Features:** -- **UI:** Added Settings UI and latency display -- **Performance:** Neo4j query optimization - -**Bug Fixes:** -- **OpenMemory:** Fixed OMM raising unnecessary exceptions - - - - - -**Improvements:** -- **UI:** Updated Event UI -- **Performance:** Fixed N+1 query issue in semantic_search_v2 by optimizing MemorySerializer field selection - -**Bug Fixes:** -- **Memory:** Fixed duplicate memory index sentry error - - - - - -**New Features:** -- **UI:** New Settings Page -- **Memory:** Duplicate memories entities support - -**Improvements:** -- **Performance:** Optimized semantic search and get_all APIs by eliminating N+1 queries - - - - - -**New Features:** -- **Database:** Implemented read replica routing with enhanced logging and app-specific DB routing - -**Improvements:** -- **Performance:** Improved query performance in search v2 and get all v2 endpoints - -**Bug Fixes:** -- **API:** Fixed pagination for get all API - - - - - -**Bug Fixes:** -- **Graph:** Fixed social graph bugs and connection issues - - - - - -**Improvements:** -- **Rate Limiting:** New rate limit for V2 Search - -**Bug Fixes:** -- **Slack:** Fixed Slack rate limit error with backend improvements - - - - - -**Improvements:** -- **Performance:** - - Changed connection pooling time to 5 minutes - - Separated graph lambdas for better performance - - - - - -**Improvements:** -- **Graph:** Graph Optimizations V2 and memory improvements - - - - - -**New Features:** -- **Database:** Added read replica support for improved database performance -- **UI:** Implemented UI changes for Users Page -- **Feedback:** Enabled feedback functionality - -**Bug Fixes:** -- **Serializer:** Fixed GET ALL Serializer - - - - - -**New Features:** -- **UI:** User Page Revamp and New Users Page - - - - - -**New Features:** -- **Users:** New Users Page implementation -- **Tools:** Added script to backfill memory categories - -**Bug Fixes:** -- **Filters:** Fixed Filters Get All functionality - - - - - -**Improvements:** -- **Graph:** Graph Memory optimization -- **Memory:** Fixed exact memories and semantically similar memories retrieval - - - - - -**Improvements:** -- **Categorization:** Refactored categorization logic to utilize Gemini 2.5 Flash and improve message handling - - - - - -**Bug Fixes:** -- **Memory:** Fixed old_memory issue in Async memory addition lambda -- **Events:** Fixed missing events - - - - - -**Improvements:** -- **Graph:** Improvements to graph memory and added user to LTM-STM - - - - - -**New Features:** -- **Graph:** Added support for SQS in graph memory addition -- **Testing:** Added Locust load testing script and Grafana Dashboard - - - - - -**Improvements:** -- **Rate Limiting:** Updated rate limiting for ADD API to 1000/min -- **Performance:** Improved Neo4j performance - - - - - -**New Features:** -- **Memory:** Edit Memory From Drawer functionality -- **API:** Added Topic Suggestions API Endpoint - - - - - -**New Features:** -- **Group Chat:** Group-Chat v2 with Actor-Aware Memories -- **Memory:** Editable Metadata in Memories -- **UI:** Memory Actions Badges - - - - - -**New Features:** -- **Rate Limiting:** Implemented comprehensive rate limiting system - -**Improvements:** -- **Performance:** Added performance indexes for memory stats query - -**Bug Fixes:** -- **Search:** Fixed search events not respecting top-k parameter - - - - - -**New Features:** -- **Memory Management:** Implemented OpenAI Batch API for Memory Cleaning with fallback -- **Playground:** Added Claude 4 support on Playground - -**Improvements:** -- **Memory:** Added ability to update memory metadata - - - - - -**New Features:** -- **UI:** New Memories Page UI design - - - - - -**Improvements:** -- **Infrastructure:** Migrated to Application Load Balancer (ALB) - - - - - -**Improvements:** -- **Memory Management:** Enhanced Memory Management with Cosine Similarity Fallback - - - - - -**New Features:** -- **OMM:** Added OMM Script and UI functionality - -**Improvements:** -- **API:** Added filters validation to semantic_search_v2 endpoint - - - - - -**New Features:** -- **Intercom:** Set Intercom events for ADD and SEARCH operations -- **OpenMemory:** Added Posthog integration and feedback functionality -- **MCP:** New JavaScript MCP Server with feedback support - -**Improvements:** -- **Structured Data:** Enhanced structured data handling in memory management - - - - - -**New Features:** -- **OAuth:** Added Mem0 OAuth integration -- **OMM:** Added OMM-Mem0 sync for deleted memories - - - - - -**New Features:** -- **Filters:** Implemented Wildcard Filters and refactored filter logic in V2 Views - - - - - -**New Features:** -- **OpenMemory Cloud:** Added OpenMemory Cloud support -- **Structured Data:** Added 'structured_attributes' field to Memory model - - - - - -**New Features:** -- **Projects:** Added version and enable_graph to project views -- **OpenMemory:** Added Postgres support for OpenMemory - - - - - -**Bug Fixes:** -- **Core:** Fixed unicode error in user_id, agent_id, run_id and app_id - - - - - @@ -1506,6 +1216,4 @@ mode: "wide" - - diff --git a/docs/docs.json b/docs/docs.json index afeaaa955..70a0e8077 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -138,7 +138,10 @@ "group": "Release Notes", "icon": "rocket", "pages": [ - "changelog" + "changelog/highlights", + "changelog/sdk", + "changelog/platform", + "changelog/openclaw" ] } ] @@ -608,6 +611,10 @@ ] }, "redirects": [ + { + "source": "/changelog", + "destination": "/changelog/highlights" + }, { "source": "/api-reference/memory/v2-search-memories", "destination": "/api-reference/memory/search-memories" diff --git a/openclaw/CHANGELOG.md b/openclaw/CHANGELOG.md deleted file mode 100644 index bc9742379..000000000 --- a/openclaw/CHANGELOG.md +++ /dev/null @@ -1,168 +0,0 @@ -# Changelog - -All notable changes to the `@mem0/openclaw-mem0` plugin will be documented in this file. - -## [1.0.4] - 2026-04-04 - -### Added -- **Interactive init flow**: `openclaw mem0 init` with interactive menu (email verification or direct API key). Non-interactive modes: `--api-key`, `--email`, `--email --code` -- **`memory_add` tool**: Replaces `memory_store` — name now matches `mem0` CLI and platform API -- **`memory_delete` tool**: Unified delete — single ID, search-then-delete, bulk, entity cascade. Replaces `memory_forget` and `memory_delete_all` -- **CLI subcommands**: `openclaw mem0 init`, `openclaw mem0 status` (renamed from `stats`), `openclaw mem0 config show`, `openclaw mem0 config set` -- **`import` CLI command**: Bulk-import memories from a JSON file with `--user-id` and `--agent-id` overrides -- **`event list` / `event status` CLI commands**: Monitor background processing events -- **`fs-safe.ts` module**: Isolated filesystem wrappers (sync read/write/exists/mkdir/unlink) in a separate entry point — keeps file I/O out of the main bundle -- **`backend/` module**: `PlatformBackend` with direct HTTP API access for CLI commands -- **`cli/config-file.ts`**: Persistent plugin auth storage in `~/.openclaw/openclaw.json` -- **Plugin manifest**: Added `contracts.tools`, `configSchema`, and `uiHints` to `openclaw.plugin.json` -- **Test suite**: 329 tests across 10 test files covering tools, CLI, config, dream gate, providers, and skill-loader - -### Changed -- **Modular architecture**: Extracted tools into `tools/` directory (6 files) and CLI into `cli/commands.ts` — `index.ts` down from ~1700 to ~890 lines -- **Code splitting**: tsup builds with `splitting: true` and two entry points (`index.ts`, `fs-safe.ts`), separating filesystem I/O from the main bundle -- **Skills updated**: All SKILL.md files reference new tool names (`memory_add`, `memory_delete`) matching the plugin manifest -- **WRITE_TOOLS updated**: Dream gate tracks `memory_delete` and `memory_add` instead of `memory_forget` and `memory_store` -- **`mem0ai` dependency**: Updated from `2.3.0` to `2.4.5` -- **Auto-recall timeout**: Recall wrapped in 8-second `Promise.race` — if the LLM takes too long, recall is skipped instead of stalling the gateway -- **Auto-capture fire-and-forget**: `provider.add()` now runs in the background via `.then()/.catch()` — the `agent_end` hook returns immediately, zero event loop blocking -- **Auto-capture minimum content gate**: Skips extraction when total user content is <50 chars after filtering — trivial conversations ("ok", "thanks") no longer trigger LLM calls -- **CLI search**: Lowered threshold to 0.3 so explicit searches are more permissive than auto-recall -- **Init defaults**: Choice defaults to `1` (email login) on Enter, User ID defaults to OS username — no more empty values -- **Init no longer stores `baseUrl`**: Uses `https://api.mem0.ai` directly instead of persisting it to config -- **Help output reordered**: `openclaw mem0 help` now shows high-value commands first (search, add) instead of alphabetical - -### Removed -- `memory_store` tool — replaced by `memory_add` -- `memory_forget` tool — replaced by `memory_delete` -- `memory_delete_all` tool — merged into `memory_delete` -- `memory_history` tool and `history` CLI command — deprecated -- **`custom_instructions` / `custom_categories` in `buildAddOptions`**: No longer injected into every auto-capture API call. Config fields (`customInstructions`, `customCategories`) remain as user-configurable options. - -## [1.0.3] - 2026-04-03 - -### Fixed -- **Path traversal vulnerability**: Added `safePath()` containment helper to `readSkillFile` and `readDomainOverlay` in `skill-loader.ts` — prevents directory traversal via `config.domain` or the exported `loadSkill` API -- **Noise filter regression**: Reverted incorrect `After-Compaction` regex rename back to `Post-Compaction` so the filter correctly matches real upstream compaction audit messages -- **Cosmetic revert**: Restored `// Over-fetch for ranking` comment in `recall.ts` (was changed to work around a false-positive scanner match on the substring `fetch`) - -### Changed -- **Supply-chain hardening**: Pinned `mem0ai` dependency to exact `2.3.0` (was `^2.3.0`) - -### Added -- **Path traversal tests**: 12 new tests covering `safePath`, `readSkillFile`, `readDomainOverlay`, and `loadSkill` with traversal inputs - -## [1.0.2] - 2026-04-02 - -### Fixed -- **Security scanner warning**: Removed `resolveEnvVars()` and `resolveEnvVarsDeep()` from `config.ts` — OpenClaw already resolves `${VAR}` in `openclaw.json` before passing config to the plugin, so plugin-side env resolution was redundant and triggered the "credential harvesting" static analysis warning ([#4676](https://github.com/mem0ai/mem0/pull/4676)) - -## [1.0.1] - 2026-04-02 - -### Added -- **CD workflow**: Added continuous deployment workflow for `@mem0/openclaw-mem0` with OIDC trusted publishing ([#4672](https://github.com/mem0ai/mem0/pull/4672)) -- **Plugin configuration manifest**: Added `compat` and `build` metadata to `package.json` specifying minimum gateway version and OpenClaw SDK compatibility (`>=2026.3.24-beta.2`) ([#4667](https://github.com/mem0ai/mem0/pull/4667)) -- **LICENSE**: Added Apache-2.0 license file to the package ([#4667](https://github.com/mem0ai/mem0/pull/4667)) - -### Fixed -- **Dream gate correctness**: Fixed cheap-first ordering, session isolation, and verified completion in the dream gate memory consolidation pipeline ([#4666](https://github.com/mem0ai/mem0/pull/4666)) -- **Graceful startup without API key**: Plugin now starts gracefully when no API key is configured instead of crashing on init ([#4669](https://github.com/mem0ai/mem0/pull/4669)) - -## [1.0.0] - 2026-04-01 - -### Added -- **Skills-based memory architecture**: New skill-loader and skill-based extraction pipeline with batched extraction for higher quality memory capture ([#4624](https://github.com/mem0ai/mem0/pull/4624)) -- **Dream gate**: Added `dream-gate.ts` for memory consolidation and dream-cycle processing -- **Enhanced recall**: New `recall.ts` module 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.json` manifest and `scripts/configure.py` setup helper - -### Changed -- Extraction pipeline refactored to use skills-based architecture for more contextual and higher quality memory capture - -## [0.4.1] - 2026-03-26 - -### Added -- **Improved extraction quality**: Enhanced noise filtering, deduplication, and better extraction instructions for higher-quality memory capture (#4302) - -### Fixed -- **Credential detection in extraction**: Improved detection of credentials, API keys, and secrets in extraction instructions to prevent them from being stored as memories (#4552) -- **Standalone timestamp extraction**: Prevented extraction of standalone timestamps as memories when no meaningful content accompanies them (#4550) - -## [0.4.0] - 2026-03-16 - -### Added -- **Non-interactive trigger filtering**: Skips recall and capture for `cron`, `heartbeat`, `automation`, and `schedule` triggers — prevents system-generated noise from polluting memory -- **Subagent hallucination prevention**: `isSubagentSession()` detects ephemeral subagent sessions and routes recall to the parent (main user) namespace instead of empty ephemeral namespaces; skips capture to prevent orphaned memories -- **Subagent-specific preamble**: Subagents receive "You are a subagent — use these memories for context but do not assume you are this user" to prevent identity assumption -- **User identity in recall preamble**: Recalled memories now include `userId` attribution for better context -- **User identity in extraction preamble**: Extraction context includes user identity and current date for accurate attribution and temporal anchoring -- **User-content guard**: Skips extraction when no meaningful user messages remain after filtering -- **Dynamic recall thresholding**: Memories scoring less than 50% of the top result are dropped to filter out the long tail of weak matches -- **SQLite resilience for OSS mode**: Init error recovery with automatic retry (history disabled) when native SQLite bindings fail under jiti -- **`disableHistory` config option**: New `oss.disableHistory` flag to explicitly skip history DB initialization -- **Updated minimum package version of mem0ai package**: Updated minimum package version of mem0ai package to ^2.3.0 to force old users to migrate to better-sqlite3 -- 78 unit tests covering filtering, isolation, trigger filtering, subagent detection, and SQLite resilience - -### Changed -- Auto-recall threshold raised from 0.5 to 0.6 for stricter precision during automatic injection (explicit tool searches remain at 0.5) -- Recall candidate pool increased to `topK * 2` for better filtering headroom -- Provider init promises now reset on failure, allowing retry on subsequent calls -- Relaxed extraction instructions: related facts are kept together to preserve context (removed atomic memory requirement) - -### Fixed -- **Concurrent session race condition**: Lifecycle hooks (`before_agent_start`, `agent_end`) now use `ctx.sessionKey` directly from the event context instead of a shared mutable `currentSessionId` variable, preventing cross-session data leaks when multiple sessions run simultaneously - -## [0.3.1] - 2026-03-12 - -### Added -- **Message filtering pipeline**: Multi-stage noise removal before extraction — drops heartbeats, timestamps, single-word acks, system routing metadata, compaction audit logs, and generic assistant acknowledgments -- **Broad recall for new sessions**: Short or new-session prompts trigger a secondary broad search to avoid cold-start blindness -- **Client-side threshold filtering**: Safety net that drops low-relevance results even if the API doesn't honor the threshold parameter -- **Temporal anchoring**: Extraction instructions now include current date so memories are prefixed with "As of YYYY-MM-DD, ..." -- **Summary message inclusion**: Earlier assistant messages containing work summaries are included in extraction context even if outside the recent-message window -- 55 unit tests covering filtering and isolation helpers - -### Changed -- Default `searchThreshold` remains at 0.5, with client-side filtering as a safety net -- Extraction window expanded from last 10 → last 20 messages for richer context -- Rewritten custom extraction instructions: conciseness, outcome-over-intent, deduplication guidance, language preservation -- **Refactored** monolithic `index.ts` (1772 lines) into 6 focused modules: `types.ts`, `providers.ts`, `config.ts`, `filtering.ts`, `isolation.ts`, `index.ts` - -### Fixed -- **README image on npmjs.com**: Changed architecture diagram from relative path to absolute GitHub URL so it renders correctly on the npm registry - -## [0.3.0] - 2026-03-10 - -### Fixed -- Updated `mem0ai` dependency which includes the sqlite3 to better-sqlite3 migration for native binding resolution (#4270) - -## [0.2.0] - 2026-03-09 - -### Added -- "Understanding userId" section in docs clarifying that `userId` is user-defined -- Per-agent memory isolation for multi-agent setups via `agentId` -- Regression tests for per-agent isolation helpers - -### Changed -- Updated config examples to use concrete `userId` values instead of placeholders - -### Fixed -- Migrated platform search to Mem0 v2 API - -## [0.1.2] - 2026-02-19 - -### Added -- Source field for openclaw memory entries - -### Fixed -- Auto-recall injection and auto-capture message drop - -## [0.1.0] - 2026-02-02 - -### Added -- 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`, and `apiVersion` options