From 7bbe680c6a1b1cd6937c068e7d23b6f6da1758c2 Mon Sep 17 00:00:00 2001 From: Mahesh Sanikommu Date: Tue, 6 Oct 2026 10:06:19 -0700 Subject: [PATCH 1/2] fix(tools): keep 2.x Claude memory files visible after the upgrade The 3.0 Claude memory tool required a new metadata.source marker that files written by 2.x do not have, so an upgraded user saw an empty memory directory. Files are now matched by claude_memory_type and file_path, which both versions write; new files still get the source marker. --- packages/tools/README.md | 2 +- packages/tools/src/claude-memory.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/tools/README.md b/packages/tools/README.md index 87a9dab2c..faf2bead2 100644 --- a/packages/tools/README.md +++ b/packages/tools/README.md @@ -33,7 +33,7 @@ Requires Node 18 or later and a `SUPERMEMORY_API_KEY` from [console.supermemory. - **`getProfile`** returns v5 profile entries (`{ id, memory }`), so profile IDs can be passed to `memoryForget`. With a `query`, `searchResults` is the v5 search `results` array. - **`documentList`** returns v5 documents; status is under `system.status`. - **Conversations** saved by the middlewares are stored as one document per conversation (document `id` = the `id` you pass), instead of through `/v4/conversations`. -- **Claude memory tool** drops `memoryContainerTag`. Its files live in the configured namespace and are marked with `metadata.source = "claude-memory"`. Files written by 2.x are not migrated. +- **Claude memory tool** drops `memoryContainerTag`. Its files live in the configured namespace. New files are marked with `metadata.source = "claude-memory"`; files written by 2.x are still found, because both versions stamp `claude_memory_type` and `file_path`. - **VoltAgent** search options use v5 shapes: `filters` → typed `filter`, `rerank` is `"none" | "order" | "aggregate"`, `searchMode: "documents"` → `"chunks"`, `include` keys are `documents`, `related`, `forgotten`, and `entityContext` → `supportingContext`. ## Usage diff --git a/packages/tools/src/claude-memory.ts b/packages/tools/src/claude-memory.ts index 7b5d1d11b..4ae16f02d 100644 --- a/packages/tools/src/claude-memory.ts +++ b/packages/tools/src/claude-memory.ts @@ -194,7 +194,7 @@ export class ClaudeMemoryTool { filter: { operator: "and", operands: [ - { field: "source", operator: "eq", value: CLAUDE_MEMORY_SOURCE }, + // 2.x files have no `source`; claude_memory_type + file_path identify files in both versions { field: "claude_memory_type", operator: "eq", value: "file" }, { field: "file_path", operator: "contains", value: dirPath }, ], @@ -572,7 +572,7 @@ export class ClaudeMemoryTool { // Different paths can normalize to the same ID; only the exact file counts. if ( - document.metadata?.source !== CLAUDE_MEMORY_SOURCE || + document.metadata?.claude_memory_type !== "file" || this.getDocumentFilePath(document) !== filePath ) { return { success: false, error: `File not found: ${filePath}` } From 327be6cd26026f8694b7976240f1f1d36edd0135 Mon Sep 17 00:00:00 2001 From: Mahesh Sanikommu Date: Tue, 6 Oct 2026 10:07:44 -0700 Subject: [PATCH 2/2] chore(tools): 3.0.1 Patch release so the Claude memory compatibility fix publishes. --- packages/tools/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/tools/package.json b/packages/tools/package.json index ec8aa63a6..d67d55652 100644 --- a/packages/tools/package.json +++ b/packages/tools/package.json @@ -1,7 +1,7 @@ { "name": "@supermemory/tools", "type": "module", - "version": "3.0.0", + "version": "3.0.1", "description": "Memory tools for AI SDK, OpenAI, Voltagent and Mastra with supermemory", "scripts": { "build": "tsdown",