mcp-super-memory 0.8.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,75 @@
1
+ // Auto-download for LOCAL custom ONNX models (bge-m3 embedder, bge-reranker-v2-m3).
2
+ //
3
+ // Scope: this is ONLY the local-custom adapter's concern. Online-API backends (OpenAI)
4
+ // and fastembed built-ins (e5, bge-base, …) never reach here, and an existing local model
5
+ // directory is used as-is — so enabling this changes nothing for those paths (backward
6
+ // compatible). It only fills in a model that would otherwise be missing.
7
+ import { homedir } from "node:os";
8
+ import { join, dirname } from "node:path";
9
+ import { existsSync, mkdirSync, createWriteStream, renameSync, statSync } from "node:fs";
10
+ import { Readable } from "node:stream";
11
+ // Known auto-downloadable models. The ONNX graphs come from onnx-community (int8 quantized,
12
+ // ~570MB vs ~2.2GB fp32), but the tokenizer/config come from BAAI/bge-m3 — onnx-community's
13
+ // tokenizer.json uses a serialization fastembed's bundled tokenizer can't parse, while
14
+ // BAAI's loads cleanly. bge-m3 and bge-reranker-v2-m3 share the same XLM-RoBERTa tokenizer.
15
+ export const KNOWN_MODELS = {
16
+ "bge-m3": {
17
+ repo: "BAAI/bge-m3",
18
+ files: [
19
+ { repo: "onnx-community/bge-m3-ONNX", src: "onnx/model_quantized.onnx", dest: "model.onnx" },
20
+ { src: "tokenizer.json", dest: "tokenizer.json" },
21
+ { src: "tokenizer_config.json", dest: "tokenizer_config.json" },
22
+ { src: "config.json", dest: "config.json" },
23
+ { src: "special_tokens_map.json", dest: "special_tokens_map.json" }, // fastembed custom-model requires this
24
+ ],
25
+ },
26
+ reranker: {
27
+ repo: "BAAI/bge-m3", // tokenizer source (shared XLM-RoBERTa)
28
+ files: [
29
+ { repo: "onnx-community/bge-reranker-v2-m3-ONNX", src: "onnx/model_quantized.onnx", dest: "model.onnx" },
30
+ { src: "tokenizer.json", dest: "tokenizer.json" },
31
+ { src: "tokenizer_config.json", dest: "tokenizer_config.json" },
32
+ ],
33
+ },
34
+ };
35
+ export function defaultModelDir(name) {
36
+ return join(homedir(), ".super-memory", "models", name);
37
+ }
38
+ // Stream a URL to a file atomically (.tmp → rename) so a crash never leaves a half file.
39
+ async function httpDownload(url, destPath) {
40
+ const res = await fetch(url);
41
+ if (!res.ok || !res.body)
42
+ throw new Error(`download failed: HTTP ${res.status} for ${url}`);
43
+ mkdirSync(dirname(destPath), { recursive: true });
44
+ const tmp = `${destPath}.tmp`;
45
+ await new Promise((resolve, reject) => {
46
+ const ws = createWriteStream(tmp);
47
+ Readable.fromWeb(res.body).pipe(ws).on("finish", () => resolve()).on("error", reject);
48
+ });
49
+ renameSync(tmp, destPath);
50
+ }
51
+ function present(path) {
52
+ try {
53
+ return existsSync(path) && statSync(path).size > 0;
54
+ }
55
+ catch {
56
+ return false;
57
+ }
58
+ }
59
+ /**
60
+ * Ensure every file of a spec exists in `dir`, downloading only the missing ones.
61
+ * `fetcher` is injectable for tests (no network). Returns the directory.
62
+ */
63
+ export async function ensureModelFiles(spec, dir, fetcher = httpDownload) {
64
+ for (const f of spec.files) {
65
+ const dest = join(dir, f.dest);
66
+ if (present(dest))
67
+ continue;
68
+ const repo = f.repo ?? spec.repo;
69
+ const url = `https://huggingface.co/${repo}/resolve/main/${f.src}`;
70
+ console.error(`[super-memory] model file missing — downloading ${f.dest} from ${repo} (one-time)…`);
71
+ await fetcher(url, dest);
72
+ }
73
+ return dir;
74
+ }
75
+ //# sourceMappingURL=modelDownload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelDownload.js","sourceRoot":"","sources":["../src/modelDownload.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,EAAE;AACF,uFAAuF;AACvF,0FAA0F;AAC1F,uFAAuF;AACvF,yEAAyE;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAOvC,4FAA4F;AAC5F,4FAA4F;AAC5F,uFAAuF;AACvF,4FAA4F;AAC5F,MAAM,CAAC,MAAM,YAAY,GAAiC;IACxD,QAAQ,EAAE;QACR,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE;YACL,EAAE,IAAI,EAAE,4BAA4B,EAAE,GAAG,EAAE,2BAA2B,EAAE,IAAI,EAAE,YAAY,EAAE;YAC5F,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,EAAE;YACjD,EAAE,GAAG,EAAE,uBAAuB,EAAE,IAAI,EAAE,uBAAuB,EAAE;YAC/D,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE;YAC3C,EAAE,GAAG,EAAE,yBAAyB,EAAE,IAAI,EAAE,yBAAyB,EAAE,EAAE,uCAAuC;SAC7G;KACF;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,aAAa,EAAE,wCAAwC;QAC7D,KAAK,EAAE;YACL,EAAE,IAAI,EAAE,wCAAwC,EAAE,GAAG,EAAE,2BAA2B,EAAE,IAAI,EAAE,YAAY,EAAE;YACxG,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,EAAE;YACjD,EAAE,GAAG,EAAE,uBAAuB,EAAE,IAAI,EAAE,uBAAuB,EAAE;SAChE;KACF;CACF,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AAC1D,CAAC;AAID,yFAAyF;AACzF,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,QAAgB;IACvD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAC,CAAC;IAC5F,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,MAAM,GAAG,GAAG,GAAG,QAAQ,MAAM,CAAC;IAC9B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAClC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAa,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IACH,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,OAAO,CAAC,IAAY;IAC3B,IAAI,CAAC;QACH,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAkB,EAAE,GAAW,EAAE,UAAmB,YAAY;IACrG,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,OAAO,CAAC,IAAI,CAAC;YAAE,SAAS;QAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;QACjC,MAAM,GAAG,GAAG,0BAA0B,IAAI,iBAAiB,CAAC,CAAC,GAAG,EAAE,CAAC;QACnE,OAAO,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC,IAAI,SAAS,IAAI,cAAc,CAAC,CAAC;QACpG,MAAM,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare function __setTestReranker(fn: (q: string, t: string[]) => number[] | Promise<number[]>): void;
2
+ export declare function __clearTestReranker(): void;
3
+ export declare function rerankEnabled(): boolean;
4
+ /**
5
+ * Relevance score per candidate text for the query (higher = more relevant).
6
+ * Returns null when reranking is unavailable (caller keeps its existing order).
7
+ */
8
+ export declare function rerankScores(query: string, texts: string[]): Promise<number[] | null>;
9
+ //# sourceMappingURL=reranker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reranker.d.ts","sourceRoot":"","sources":["../src/reranker.ts"],"names":[],"mappings":"AAmBA,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAEpG;AACD,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAoCD;;;GAGG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAsB3F"}
@@ -0,0 +1,87 @@
1
+ // Cross-encoder reranker (opt-in via SUPER_MEMORY_RERANK=true).
2
+ //
3
+ // The retriever (recall) finds candidate memories; this re-scores the top of that list by
4
+ // JOINT (query, memory) relevance — fixing cases where the right memory is in the result
5
+ // set but ranked too low under fused BM25/dense scores. Unlike query decomposition (which
6
+ // needs an LLM and is the caller's job), a reranker is a MODEL, so it runs in-process.
7
+ //
8
+ // Loaded lazily on first use. If the model files or fastembed's native deps are missing,
9
+ // rerank silently no-ops and recall falls back to its fused ranking — so enabling the flag
10
+ // without the model never breaks recall.
11
+ import { createRequire } from "node:module";
12
+ import { existsSync } from "node:fs";
13
+ import { join } from "node:path";
14
+ import { KNOWN_MODELS, defaultModelDir, ensureModelFiles } from "./modelDownload.js";
15
+ let _testReranker = null;
16
+ // Test seam: drive rerank ordering with crafted scores, no model load. Never set in prod.
17
+ export function __setTestReranker(fn) {
18
+ _testReranker = fn;
19
+ }
20
+ export function __clearTestReranker() {
21
+ _testReranker = null;
22
+ }
23
+ export function rerankEnabled() {
24
+ return _testReranker !== null || process.env.SUPER_MEMORY_RERANK === "true";
25
+ }
26
+ const MODEL_DIR = process.env.SUPER_MEMORY_RERANK_MODEL_PATH ?? defaultModelDir("reranker");
27
+ const MAX_CHARS = 512; // truncate memory text fed to the cross-encoder
28
+ let _loaded = false;
29
+ let _failed = false;
30
+ let _ort = null;
31
+ let _session = null;
32
+ let _tok = null;
33
+ async function ensureLoaded() {
34
+ if (_loaded)
35
+ return true;
36
+ if (_failed)
37
+ return false;
38
+ try {
39
+ // Auto-download the reranker model + (shared bge-m3) tokenizer if missing — one-time.
40
+ if (!existsSync(join(MODEL_DIR, "model.onnx")) || !existsSync(join(MODEL_DIR, "tokenizer.json"))) {
41
+ await ensureModelFiles(KNOWN_MODELS.reranker, MODEL_DIR);
42
+ }
43
+ // onnxruntime-node and the tokenizer are fastembed's native deps; resolve through it.
44
+ const feReq = createRequire(createRequire(import.meta.url).resolve("fastembed"));
45
+ _ort = feReq("onnxruntime-node");
46
+ const tk = feReq("@anush008/tokenizers");
47
+ _tok = tk.Tokenizer.fromFile(`${MODEL_DIR}/tokenizer.json`);
48
+ _session = await _ort.InferenceSession.create(`${MODEL_DIR}/model.onnx`);
49
+ _loaded = true;
50
+ return true;
51
+ }
52
+ catch (err) {
53
+ console.error(`[reranker] disabled — could not load model at ${MODEL_DIR}: ${err instanceof Error ? err.message : String(err)}`);
54
+ _failed = true;
55
+ return false;
56
+ }
57
+ }
58
+ /**
59
+ * Relevance score per candidate text for the query (higher = more relevant).
60
+ * Returns null when reranking is unavailable (caller keeps its existing order).
61
+ */
62
+ export async function rerankScores(query, texts) {
63
+ if (_testReranker)
64
+ return await _testReranker(query, texts);
65
+ if (!(await ensureLoaded()))
66
+ return null;
67
+ const hasType = _session.inputNames.includes("token_type_ids");
68
+ const scores = [];
69
+ for (const text of texts) {
70
+ const enc = await _tok.encode(query, (text ?? "").slice(0, MAX_CHARS));
71
+ const ids = enc.getIds();
72
+ const mask = enc.getAttentionMask();
73
+ const n = ids.length;
74
+ const feeds = {
75
+ input_ids: new _ort.Tensor("int64", BigInt64Array.from(ids.map((x) => BigInt(x))), [1, n]),
76
+ attention_mask: new _ort.Tensor("int64", BigInt64Array.from(mask.map((x) => BigInt(x))), [1, n]),
77
+ };
78
+ if (hasType) {
79
+ const typeIds = enc.getTypeIds();
80
+ feeds.token_type_ids = new _ort.Tensor("int64", BigInt64Array.from(typeIds.map((x) => BigInt(x))), [1, n]);
81
+ }
82
+ const out = await _session.run(feeds);
83
+ scores.push(Number(out[_session.outputNames[0]].data[0]));
84
+ }
85
+ return scores;
86
+ }
87
+ //# sourceMappingURL=reranker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reranker.js","sourceRoot":"","sources":["../src/reranker.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -118,7 +118,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
118
118
  tools: [
119
119
  {
120
120
  name: "recall",
121
- description: "CALL THIS FIRST before every first response. Search long-term memory by concept. namespace filters to a specific project/context. expand=True returns up to 2x results by following explicit memory links — use when initial results feel insufficient. hops sets associative traversal depth (default 2; 1=direct only, up to 5 for deep chained drill-down — replaces manual related() chaining). Returns memories ranked by relevance with a hop field (1=direct, 2+=associative distance). Memories get stronger each time they're recalled.",
121
+ description: "CALL THIS FIRST before every first response. Search long-term memory by concept. For a complex or multi-fact question (e.g. 'what project did he build and in what language?'), DECOMPOSE it into 2-4 focused sub-queries and call recall once per sub-query, then merge the results — a single broad query blurs several concepts together and misses facts that each focused sub-query would surface. namespace filters to a specific project/context. expand=True returns up to 2x results by following explicit memory links — use when initial results feel insufficient. hops sets associative traversal depth (default 2; 1=direct only, up to 5 for deep chained drill-down — replaces manual related() chaining). Returns memories ranked by relevance with a hop field (1=direct, 2+=associative distance). Memories get stronger each time they're recalled.",
122
122
  inputSchema: {
123
123
  type: "object",
124
124
  properties: {
@@ -130,13 +130,15 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
130
130
  min_rel_score: { type: "number" },
131
131
  min_score: { type: "number" },
132
132
  min_z: { type: "number", description: "Distribution gate threshold (robust-z). Typical range 2–5; 0 disables the gate." },
133
+ min_key_gate: { type: "number", description: "Key-proximity gate: query counts as found if its best concept-key cosine >= this. In [0,1]; 0 disables. Opt-in (off by default)." },
134
+ min_depth: { type: "number", description: "Depth floor in [0,1]: return only well-established memories whose depth (raised each recall) is >= this. 0 = no filter. Use to surface only frequently-confirmed/important facts." },
133
135
  },
134
136
  required: ["query"],
135
137
  },
136
138
  },
137
139
  {
138
140
  name: "remember",
139
- description: "Save important information to memory. Keys are search terms — think 'what would I search to find this later?' Use 3-6 diverse keys. namespace groups memories by project/context (e.g. 'work', 'personal'). ttl_seconds sets expiry for temporary memories (e.g. 3600 = 1 hour; None = permanent). related_to links this memory to existing memory IDs for explicit graph traversal.",
141
+ description: "Save important information to memory. Keys are search terms — think 'what would I search to find this later?' Use 3-6 diverse keys. Before coining new keys, recall() the topic first and REUSE existing matching keys (e.g. reuse 'coffee' rather than adding 'beverage') — consistent keys link related memories into one navigable graph, while ad-hoc synonyms fragment it. namespace groups memories by project/context (e.g. 'work', 'personal'). ttl_seconds sets expiry for temporary memories (e.g. 3600 = 1 hour; None = permanent). related_to links this memory to existing memory IDs for explicit graph traversal.",
140
142
  inputSchema: {
141
143
  type: "object",
142
144
  properties: {
@@ -271,7 +273,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
271
273
  try {
272
274
  switch (name) {
273
275
  case "recall": {
274
- const results = await graph.recall(a.query, typeof a.top_k === "number" ? a.top_k : 5, typeof a.namespace === "string" ? a.namespace : null, typeof a.expand === "boolean" ? a.expand : false, typeof a.hops === "number" ? a.hops : 2, typeof a.min_rel_score === "number" ? a.min_rel_score : 0, typeof a.min_score === "number" ? a.min_score : undefined, typeof a.min_z === "number" ? a.min_z : undefined);
276
+ const results = await graph.recall(a.query, typeof a.top_k === "number" ? a.top_k : 5, typeof a.namespace === "string" ? a.namespace : null, typeof a.expand === "boolean" ? a.expand : false, typeof a.hops === "number" ? a.hops : 2, typeof a.min_rel_score === "number" ? a.min_rel_score : 0, typeof a.min_score === "number" ? a.min_score : undefined, typeof a.min_z === "number" ? a.min_z : undefined, typeof a.min_key_gate === "number" ? a.min_key_gate : undefined, typeof a.min_depth === "number" ? a.min_depth : 0);
275
277
  return { content: [{ type: "text", text: JSON.stringify(results, null, 0) }] };
276
278
  }
277
279
  case "remember": {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -27,5 +27,8 @@ export interface GraphData {
27
27
  memory_id: string;
28
28
  weight?: number;
29
29
  }>;
30
+ meta?: {
31
+ embeddingFingerprint?: string;
32
+ };
30
33
  }
31
34
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,SAAS,GAAG,MAAM,GAAG,aAAa,CAAC;CAC9C;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACvC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,KAAK,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtE"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,SAAS,GAAG,MAAM,GAAG,aAAa,CAAC;CAC9C;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACvC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,KAAK,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAGrE,IAAI,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-super-memory",
3
- "version": "0.8.0",
3
+ "version": "0.10.0",
4
4
  "type": "module",
5
5
  "description": "N:M Associative Memory System for LLM Agents",
6
6
  "main": "dist/index.js",