@amaster.ai/pi-memory-mem0 0.1.2-beta.54 → 0.1.2-beta.56

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.
@@ -1,15 +1,16 @@
1
1
  /**
2
- * Mem0 provider abstraction — supports both Platform (cloud) and OSS (local SQLite) modes.
2
+ * Mem0 provider abstraction for Platform, embedded, and self-hosted REST modes.
3
3
  *
4
4
  * Uses the `mem0ai` npm SDK which handles:
5
5
  * - Platform mode: REST API calls to api.mem0.ai
6
- * - OSS mode: vector storage + LLM extraction via configured providers
6
+ * - Embedded mode: vector storage + LLM extraction via configured providers
7
+ * - Self-hosted mode: direct HTTP calls to a separately deployed Mem0 server
7
8
  *
8
- * The mem0 OSS `memory` vector store is itself SQLite-backed. This extension
9
+ * The embedded mem0 `memory` vector store is itself SQLite-backed. This extension
9
10
  * configures it with a file under Pi home by default and lets mem0 own persistence
10
11
  * directly.
11
12
  */
12
- import type { AddResult, Mem0ExtensionConfig, MemoryItem } from './types.js';
13
+ import type { AddResult, Mem0ExtensionConfig, Mem0Mode, MemoryItem } from './types.js';
13
14
  export interface Mem0Provider {
14
15
  add(messages: Array<{
15
16
  role: string;
@@ -18,16 +19,22 @@ export interface Mem0Provider {
18
19
  userId: string;
19
20
  infer?: boolean;
20
21
  observedAt?: Date | string;
22
+ signal?: AbortSignal;
21
23
  }): Promise<AddResult | null>;
22
24
  search(query: string, opts: {
23
25
  userId: string;
24
26
  topK?: number;
27
+ signal?: AbortSignal;
25
28
  }): Promise<MemoryItem[]>;
26
29
  getAll(opts: {
27
30
  userId: string;
31
+ signal?: AbortSignal;
28
32
  }): Promise<MemoryItem[]>;
29
- delete(memoryId: string): Promise<void>;
33
+ delete(memoryId: string, opts?: {
34
+ signal?: AbortSignal;
35
+ }): Promise<void>;
30
36
  }
37
+ export declare function normalizeMem0Mode(mode: unknown): Mem0Mode;
31
38
  /**
32
39
  * Format an observedAt value as YYYY-MM-DD for mem0's Observation Date field.
33
40
  * mem0's extraction prompt grounds relative times ("yesterday", "last week")
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7E,MAAM,WAAW,YAAY;IAC3B,GAAG,CACD,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,EAClD,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAE,GACpE,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAE7B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAEtF,MAAM,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAExD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzC;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAIzD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAI/E;AAyGD,uEAAuE;AACvE,MAAM,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAE5E,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,2FAA2F;AAC3F,MAAM,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAC;AAE/F;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAOtF;AA4PD,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,wGAAwG;IACxG,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,2FAA2F;IAC3F,eAAe,CAAC,EAAE,gBAAgB,CAAC;CACpC;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC,CAoB3F"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAMvF,MAAM,WAAW,YAAY;IAC3B,GAAG,CACD,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,EAClD,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAC1F,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAE7B,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAC5D,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAEzB,MAAM,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAE9E,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,CAKzD;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAIzD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAI/E;AAyRD,uEAAuE;AACvE,MAAM,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAE5E,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,2FAA2F;AAC3F,MAAM,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAC;AAE/F;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAOtF;AA4QD,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,wGAAwG;IACxG,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,2FAA2F;IAC3F,eAAe,CAAC,EAAE,gBAAgB,CAAC;CACpC;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC,CA6B3F"}
package/dist/provider.js CHANGED
@@ -1,17 +1,28 @@
1
1
  /**
2
- * Mem0 provider abstraction — supports both Platform (cloud) and OSS (local SQLite) modes.
2
+ * Mem0 provider abstraction for Platform, embedded, and self-hosted REST modes.
3
3
  *
4
4
  * Uses the `mem0ai` npm SDK which handles:
5
5
  * - Platform mode: REST API calls to api.mem0.ai
6
- * - OSS mode: vector storage + LLM extraction via configured providers
6
+ * - Embedded mode: vector storage + LLM extraction via configured providers
7
+ * - Self-hosted mode: direct HTTP calls to a separately deployed Mem0 server
7
8
  *
8
- * The mem0 OSS `memory` vector store is itself SQLite-backed. This extension
9
+ * The embedded mem0 `memory` vector store is itself SQLite-backed. This extension
9
10
  * configures it with a file under Pi home by default and lets mem0 own persistence
10
11
  * directly.
11
12
  */
13
+ import { AsyncLocalStorage } from 'node:async_hooks';
12
14
  import { createRequire } from 'node:module';
13
15
  import { join } from 'node:path';
14
16
  import { resolveHome } from '@amaster.ai/pi-shared/settings';
17
+ export function normalizeMem0Mode(mode) {
18
+ if (mode === undefined || mode === null)
19
+ return 'platform';
20
+ if (mode === 'open-source')
21
+ return 'embedded';
22
+ if (mode === 'platform' || mode === 'embedded' || mode === 'self-hosted')
23
+ return mode;
24
+ throw new Error(`Unsupported Mem0 mode: ${String(mode)}`);
25
+ }
15
26
  // ---------------------------------------------------------------------------
16
27
  // Normalizers
17
28
  // ---------------------------------------------------------------------------
@@ -60,14 +71,37 @@ function normalizeResults(raw) {
60
71
  }
61
72
  return [];
62
73
  }
63
- // ---------------------------------------------------------------------------
64
- // Platform Provider
65
- // ---------------------------------------------------------------------------
74
+ function cancellationReason(signal) {
75
+ return signal.reason instanceof Error ? signal.reason : new Error('Mem0 request cancelled.');
76
+ }
77
+ /**
78
+ * Stop awaiting SDK promises promptly when Pi cancels the tool call. Platform
79
+ * and direct REST requests also propagate the signal to fetch; the embedded
80
+ * SDK has no AbortSignal hook, so only the caller's wait can be cancelled.
81
+ */
82
+ function waitWithCancellation(promise, signal) {
83
+ if (!signal)
84
+ return promise;
85
+ if (signal.aborted)
86
+ return Promise.reject(cancellationReason(signal));
87
+ return new Promise((resolve, reject) => {
88
+ const onAbort = () => reject(cancellationReason(signal));
89
+ signal.addEventListener('abort', onAbort, { once: true });
90
+ promise.then((value) => {
91
+ signal.removeEventListener('abort', onAbort);
92
+ resolve(value);
93
+ }, (error) => {
94
+ signal.removeEventListener('abort', onAbort);
95
+ reject(error);
96
+ });
97
+ });
98
+ }
66
99
  class PlatformProvider {
67
100
  apiKey;
68
101
  baseUrl;
69
102
  client;
70
103
  initPromise = null;
104
+ requestSignal = new AsyncLocalStorage();
71
105
  constructor(apiKey, baseUrl) {
72
106
  this.apiKey = apiKey;
73
107
  this.baseUrl = baseUrl;
@@ -85,10 +119,22 @@ class PlatformProvider {
85
119
  const opts = { apiKey: this.apiKey };
86
120
  if (this.baseUrl)
87
121
  opts.host = this.baseUrl;
88
- this.client = new MemoryClient(opts);
122
+ // mem0ai does not expose RequestInit on its public methods, but its fetch
123
+ // helper is intentionally an instance method. Add the per-call signal at
124
+ // that boundary; AsyncLocalStorage keeps concurrent requests isolated.
125
+ const client = new MemoryClient(opts);
126
+ const originalFetch = client._fetchWithErrorHandling.bind(client);
127
+ client._fetchWithErrorHandling = (url, init = {}) => {
128
+ const signal = this.requestSignal.getStore();
129
+ return originalFetch(url, signal ? { ...init, signal } : init);
130
+ };
131
+ this.client = client;
132
+ }
133
+ runWithSignal(signal, operation) {
134
+ return signal ? this.requestSignal.run(signal, operation) : operation();
89
135
  }
90
136
  async add(messages, opts) {
91
- await this.ensureClient();
137
+ await waitWithCancellation(this.ensureClient(), opts.signal);
92
138
  const addOpts = { userId: opts.userId };
93
139
  if (opts.infer === false)
94
140
  addOpts.infer = false;
@@ -100,33 +146,109 @@ class PlatformProvider {
100
146
  if (!Number.isNaN(d.getTime()))
101
147
  addOpts.timestamp = d.toISOString();
102
148
  }
103
- // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
104
- const result = await this.client.add(messages, addOpts);
149
+ const result = await waitWithCancellation(this.runWithSignal(opts.signal, () => this.client.add(messages, addOpts)), opts.signal);
105
150
  return result;
106
151
  }
107
152
  async search(query, opts) {
108
- await this.ensureClient();
153
+ await waitWithCancellation(this.ensureClient(), opts.signal);
109
154
  const searchOpts = {
110
155
  filters: { user_id: opts.userId },
111
156
  };
112
157
  if (opts.topK)
113
158
  searchOpts.topK = opts.topK;
114
- // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
115
- const results = await this.client.search(query, searchOpts);
159
+ const results = await waitWithCancellation(this.runWithSignal(opts.signal, () => this.client.search(query, searchOpts)), opts.signal);
116
160
  return normalizeResults(results);
117
161
  }
118
162
  async getAll(opts) {
119
- await this.ensureClient();
120
- // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
121
- const results = await this.client.getAll({
163
+ await waitWithCancellation(this.ensureClient(), opts.signal);
164
+ const results = await waitWithCancellation(this.runWithSignal(opts.signal, () => this.client.getAll({
122
165
  filters: { user_id: opts.userId },
123
- });
166
+ })), opts.signal);
124
167
  return normalizeResults(results);
125
168
  }
126
- async delete(memoryId) {
127
- await this.ensureClient();
128
- // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
129
- await this.client.delete(memoryId);
169
+ async delete(memoryId, opts) {
170
+ await waitWithCancellation(this.ensureClient(), opts?.signal);
171
+ await waitWithCancellation(this.runWithSignal(opts?.signal, () => this.client.delete(memoryId)), opts?.signal);
172
+ }
173
+ }
174
+ // Self-Hosted Provider
175
+ // ---------------------------------------------------------------------------
176
+ class SelfHostedProvider {
177
+ apiKey;
178
+ requestTimeoutMs;
179
+ baseUrl;
180
+ constructor(baseUrl, apiKey, requestTimeoutMs = 30_000) {
181
+ this.apiKey = apiKey;
182
+ this.requestTimeoutMs = requestTimeoutMs;
183
+ if (!Number.isFinite(requestTimeoutMs) || requestTimeoutMs <= 0) {
184
+ throw new Error('Self-hosted requestTimeoutMs must be a positive number.');
185
+ }
186
+ const url = new URL(baseUrl);
187
+ if (url.protocol !== 'http:' && url.protocol !== 'https:') {
188
+ throw new Error('Self-hosted mode requires an HTTP(S) baseUrl.');
189
+ }
190
+ this.baseUrl = url.toString().replace(/\/$/, '');
191
+ }
192
+ async request(path, init, callerSignal) {
193
+ const headers = { 'Content-Type': 'application/json' };
194
+ if (this.apiKey)
195
+ headers['X-API-Key'] = this.apiKey;
196
+ const timeoutSignal = AbortSignal.timeout(this.requestTimeoutMs);
197
+ const signal = callerSignal ? AbortSignal.any([callerSignal, timeoutSignal]) : timeoutSignal;
198
+ let response;
199
+ try {
200
+ response = await fetch(`${this.baseUrl}${path}`, { ...init, headers, signal });
201
+ }
202
+ catch {
203
+ if (callerSignal?.aborted) {
204
+ throw callerSignal.reason instanceof Error
205
+ ? callerSignal.reason
206
+ : new Error('Mem0 request cancelled.');
207
+ }
208
+ if (timeoutSignal.aborted)
209
+ throw new Error('Mem0 request timed out.');
210
+ throw new Error('Mem0 request failed.');
211
+ }
212
+ if (!response.ok)
213
+ throw new Error(`Mem0 request failed (${response.status}).`);
214
+ try {
215
+ return await response.json();
216
+ }
217
+ catch {
218
+ if (callerSignal?.aborted)
219
+ throw cancellationReason(callerSignal);
220
+ if (timeoutSignal.aborted)
221
+ throw new Error('Mem0 request timed out.');
222
+ throw new Error('Mem0 returned an invalid response.');
223
+ }
224
+ }
225
+ async add(messages, opts) {
226
+ return (await this.request('/memories', {
227
+ method: 'POST',
228
+ body: JSON.stringify({
229
+ messages,
230
+ user_id: opts.userId,
231
+ ...(opts.infer === undefined ? {} : { infer: opts.infer }),
232
+ }),
233
+ }, opts.signal));
234
+ }
235
+ async search(query, opts) {
236
+ const result = await this.request('/search', {
237
+ method: 'POST',
238
+ body: JSON.stringify({
239
+ query,
240
+ filters: { user_id: opts.userId },
241
+ ...(opts.topK === undefined ? {} : { top_k: opts.topK }),
242
+ }),
243
+ }, opts.signal);
244
+ return normalizeResults(result);
245
+ }
246
+ async getAll(opts) {
247
+ const result = await this.request(`/memories?user_id=${encodeURIComponent(opts.userId)}`, { method: 'GET' }, opts.signal);
248
+ return normalizeResults(result);
249
+ }
250
+ async delete(memoryId, opts) {
251
+ await this.request(`/memories/${encodeURIComponent(memoryId)}`, { method: 'DELETE' }, opts?.signal);
130
252
  }
131
253
  }
132
254
  /**
@@ -312,7 +434,7 @@ class OSSProvider {
312
434
  await mem.getAll({ filters: { user_id: '__warmup__' } });
313
435
  }
314
436
  async add(messages, opts) {
315
- await this.ensureMemory();
437
+ await waitWithCancellation(this.ensureMemory(), opts.signal);
316
438
  const addOpts = { userId: opts.userId };
317
439
  if (opts.infer === false)
318
440
  addOpts.infer = false;
@@ -326,11 +448,12 @@ class OSSProvider {
326
448
  this.addMutex = new Promise((res) => {
327
449
  release = res;
328
450
  });
451
+ let operation;
452
+ let restoreLlm;
329
453
  try {
330
- await gate;
454
+ await waitWithCancellation(gate, opts.signal);
331
455
  // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
332
456
  const mem = this.memory;
333
- let restoreLlm;
334
457
  if (opts.observedAt) {
335
458
  const dateStr = formatObservedAt(opts.observedAt);
336
459
  const llm = mem.llm;
@@ -345,53 +468,59 @@ class OSSProvider {
345
468
  llm.generateResponse = originalGenerate;
346
469
  };
347
470
  }
348
- try {
349
- const result = await mem.add(messages, addOpts);
350
- return result;
351
- }
352
- finally {
353
- restoreLlm?.();
354
- }
471
+ operation = Promise.resolve(mem.add(messages, addOpts)).finally(() => restoreLlm?.());
472
+ void operation.then(() => release(undefined), () => release(undefined));
473
+ return await waitWithCancellation(operation, opts.signal);
355
474
  }
356
475
  finally {
357
- release(undefined);
476
+ if (!operation) {
477
+ restoreLlm?.();
478
+ void gate.then(() => release(undefined), () => release(undefined));
479
+ }
358
480
  }
359
481
  }
360
482
  async search(query, opts) {
361
- await this.ensureMemory();
483
+ await waitWithCancellation(this.ensureMemory(), opts.signal);
362
484
  const searchOpts = {
363
485
  filters: { user_id: opts.userId },
364
486
  };
365
487
  if (opts.topK)
366
488
  searchOpts.topK = opts.topK;
489
+ const results = await waitWithCancellation(
367
490
  // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
368
- const results = await this.memory.search(query, searchOpts);
491
+ this.memory.search(query, searchOpts), opts.signal);
369
492
  return normalizeResults(results);
370
493
  }
371
494
  async getAll(opts) {
372
- await this.ensureMemory();
495
+ await waitWithCancellation(this.ensureMemory(), opts.signal);
496
+ const results = await waitWithCancellation(
373
497
  // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
374
- const results = await this.memory.getAll({
498
+ this.memory.getAll({
375
499
  filters: { user_id: opts.userId },
376
- });
500
+ }), opts.signal);
377
501
  return normalizeResults(results);
378
502
  }
379
- async delete(memoryId) {
380
- await this.ensureMemory();
503
+ async delete(memoryId, opts) {
504
+ await waitWithCancellation(this.ensureMemory(), opts?.signal);
381
505
  // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
382
- await this.memory.delete(memoryId);
506
+ await waitWithCancellation(this.memory.delete(memoryId), opts?.signal);
383
507
  }
384
508
  }
385
509
  export async function createMem0Provider(opts) {
386
510
  const { config, resolveKey, resolveProvider } = opts;
387
- const mode = config.mode ?? 'platform';
388
- if (mode === 'open-source') {
511
+ const mode = normalizeMem0Mode(config.mode);
512
+ if (mode === 'embedded') {
389
513
  const useRegistry = config.useRegistryKeys !== false;
390
514
  const provider = new OSSProvider(config.oss, useRegistry ? resolveKey : undefined, useRegistry ? resolveProvider : undefined);
391
515
  // biome-ignore lint/suspicious/noExplicitAny: mem0ai/oss lacks type definitions
392
516
  await provider.ensureMemory();
393
517
  return provider;
394
518
  }
519
+ if (mode === 'self-hosted') {
520
+ if (!config.baseUrl?.trim())
521
+ throw new Error('Self-hosted mode requires baseUrl.');
522
+ return new SelfHostedProvider(config.baseUrl.trim(), config.apiKey?.trim() || undefined, config.requestTimeoutMs);
523
+ }
395
524
  if (!config.apiKey?.trim()) {
396
525
  throw new Error('Platform mode requires apiKey.');
397
526
  }
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,14 +1,17 @@
1
1
  /**
2
2
  * Configuration types for pi-memory-mem0.
3
3
  */
4
- export type Mem0Mode = 'platform' | 'open-source';
4
+ export type Mem0Mode = 'platform' | 'embedded' | 'self-hosted';
5
+ export type MemoryUserIdScope = 'project' | 'exact';
5
6
  export interface Mem0ExtensionConfig {
6
- /** "platform" (Mem0 Cloud) or "open-source" (local SQLite). Default: "platform". */
7
+ /** Mem0 Cloud, in-process OSS, or a remote OSS server. Default: "platform". */
7
8
  mode?: Mem0Mode;
8
- /** Mem0 Platform API key. Supports ${MEM0_API_KEY}. */
9
+ /** Mem0 API key. Supports ${MEM0_API_KEY}. */
9
10
  apiKey?: string;
10
- /** Custom API base URL. Default: https://api.mem0.ai */
11
+ /** Platform override or required self-hosted OSS server URL. */
11
12
  baseUrl?: string;
13
+ /** Remote request timeout in milliseconds. Default: 30000. */
14
+ requestTimeoutMs?: number;
12
15
  oss?: {
13
16
  embedder?: {
14
17
  provider: string;
@@ -33,10 +36,12 @@ export interface Mem0ExtensionConfig {
33
36
  };
34
37
  /** User identifier for memory scoping. Supports ${USER}. */
35
38
  userId?: string;
39
+ /** Append a cwd hash (default) or use userId verbatim. */
40
+ userIdScope?: MemoryUserIdScope;
36
41
  /** Max recalled memories per turn. Default: 5 */
37
42
  topK?: number;
38
43
  /**
39
- * When true (default), OSS mode will attempt to resolve API keys from
44
+ * When true (default), embedded mode will attempt to resolve API keys from
40
45
  * pi's model registry instead of requiring separate env vars.
41
46
  * Falls back to OPENAI_API_KEY / DEEPSEEK_API_KEY env vars if registry lookup fails.
42
47
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,aAAa,CAAC;AAElD,MAAM,WAAW,mBAAmB;IAClC,oFAAoF;IACpF,IAAI,CAAC,EAAE,QAAQ,CAAC;IAGhB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,GAAG,CAAC,EAAE;QACJ,QAAQ,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAClE,GAAG,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAC7D,WAAW,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QACrE,wFAAwF;QACxF,YAAY,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QACtE,oFAAoF;QACpF,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;IAGF,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChE"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,aAAa,CAAC;AAC/D,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,OAAO,CAAC;AAEpD,MAAM,WAAW,mBAAmB;IAClC,+EAA+E;IAC/E,IAAI,CAAC,EAAE,QAAQ,CAAC;IAGhB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,GAAG,CAAC,EAAE;QACJ,QAAQ,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAClE,GAAG,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAC7D,WAAW,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QACrE,wFAAwF;QACxF,YAAY,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QACtE,oFAAoF;QACpF,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;IAGF,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChE"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@amaster.ai/pi-memory-mem0",
3
- "version": "0.1.2-beta.54",
4
- "description": "Explicit Mem0 semantic memory tools for pi — Platform cloud or local SQLite.",
3
+ "version": "0.1.2-beta.56",
4
+ "description": "Passive Mem0 semantic memory for pi — automatic capture, semantic recall. Platform, embedded, or self-hosted.",
5
5
  "keywords": [
6
6
  "pi-package",
7
7
  "pi",
@@ -54,7 +54,7 @@
54
54
  },
55
55
  "dependencies": {
56
56
  "mem0ai": "3.0.7",
57
- "@amaster.ai/pi-shared": "0.1.2-beta.54"
57
+ "@amaster.ai/pi-shared": "0.1.2-beta.56"
58
58
  },
59
59
  "peerDependencies": {
60
60
  "@earendil-works/pi-coding-agent": ">=0.79.1",
package/dist/tools.d.ts DELETED
@@ -1,15 +0,0 @@
1
- /**
2
- * LLM-callable tools for Mem0: search, profile (get all), and save (verbatim store).
3
- */
4
- import { type AgentToolResult } from '@earendil-works/pi-coding-agent';
5
- import type { Mem0Provider } from './provider.js';
6
- export interface ToolDefinition {
7
- name: string;
8
- label: string;
9
- description: string;
10
- promptSnippet?: string;
11
- parameters: unknown;
12
- execute(toolCallId: string, params: Record<string, unknown>, signal?: AbortSignal, onUpdate?: unknown, ctx?: unknown): Promise<AgentToolResult<unknown>>;
13
- }
14
- export declare function createMem0Tools(provider: Mem0Provider, userId: string): ToolDefinition[];
15
- //# sourceMappingURL=tools.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,eAAe,EAA8B,MAAM,iCAAiC,CAAC;AAGnG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,CACL,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,CAAC,EAAE,WAAW,EACpB,QAAQ,CAAC,EAAE,OAAO,EAClB,GAAG,CAAC,EAAE,OAAO,GACZ,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;CACtC;AAgBD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAoGxF"}
package/dist/tools.js DELETED
@@ -1,108 +0,0 @@
1
- /**
2
- * LLM-callable tools for Mem0: search, profile (get all), and save (verbatim store).
3
- */
4
- import { truncateHead, truncateLine } from '@earendil-works/pi-coding-agent';
5
- import { Type } from 'typebox';
6
- import { formatRecalledMemory, redactMemoryText } from './privacy.js';
7
- function textResult(text) {
8
- const result = truncateHead(text, { maxBytes: 47 * 1024, maxLines: 1_900 });
9
- const output = result.truncated
10
- ? JSON.stringify({
11
- truncated: true,
12
- preview: truncateLine(text, 4_000).text,
13
- })
14
- : result.content;
15
- return {
16
- content: [{ type: 'text', text: output }],
17
- details: undefined,
18
- };
19
- }
20
- export function createMem0Tools(provider, userId) {
21
- const searchTool = {
22
- name: 'mem0_search',
23
- label: 'Mem0',
24
- description: 'Search long-term memories by meaning. Returns relevant facts ranked by similarity.',
25
- promptSnippet: 'Semantic search over long-term user memories.',
26
- parameters: Type.Object({
27
- query: Type.String({ description: 'What to search for.' }),
28
- top_k: Type.Optional(Type.Number({ description: 'Max results (default: 10, max: 50).' })),
29
- }),
30
- async execute(_toolCallId, params) {
31
- const query = String(params.query ?? '');
32
- const topK = Math.min(Number(params.top_k) || 10, 50);
33
- if (!query)
34
- return textResult(JSON.stringify({ error: 'Query cannot be empty.' }));
35
- try {
36
- const results = await provider.search(query, { userId, topK });
37
- if (results.length === 0) {
38
- return textResult(JSON.stringify({ result: 'No relevant memories found.' }));
39
- }
40
- return textResult(JSON.stringify({
41
- results: results.map((r) => ({
42
- memory: formatRecalledMemory(r.memory),
43
- score: r.score,
44
- })),
45
- count: results.length,
46
- }));
47
- }
48
- catch (err) {
49
- return textResult(JSON.stringify({
50
- error: `Search failed: ${err instanceof Error ? err.message : String(err)}`,
51
- }));
52
- }
53
- },
54
- };
55
- const profileTool = {
56
- name: 'mem0_profile',
57
- label: 'Mem0',
58
- description: 'Retrieve all stored long-term memories about the user.',
59
- promptSnippet: 'Full dump of all stored user memories.',
60
- parameters: Type.Object({}),
61
- async execute() {
62
- try {
63
- const memories = await provider.getAll({ userId });
64
- if (memories.length === 0) {
65
- return textResult(JSON.stringify({ result: 'No memories stored yet.' }));
66
- }
67
- const lines = memories
68
- .map((m) => m.memory)
69
- .filter(Boolean)
70
- .map(formatRecalledMemory);
71
- return textResult(JSON.stringify({ result: lines.join('\n'), count: lines.length }));
72
- }
73
- catch (err) {
74
- return textResult(JSON.stringify({
75
- error: `Profile failed: ${err instanceof Error ? err.message : String(err)}`,
76
- }));
77
- }
78
- },
79
- };
80
- const saveTool = {
81
- name: 'mem0_save',
82
- label: 'Mem0',
83
- description: 'Store a durable fact about the user verbatim (no LLM extraction). Use for explicit preferences or corrections.',
84
- promptSnippet: 'Save a fact to long-term memory verbatim.',
85
- parameters: Type.Object({
86
- fact: Type.String({ description: 'The fact to store.' }),
87
- }),
88
- async execute(_toolCallId, params) {
89
- const fact = String(params.fact ?? '').trim();
90
- if (!fact)
91
- return textResult(JSON.stringify({ error: 'Fact cannot be empty.' }));
92
- try {
93
- const result = await provider.add([{ role: 'user', content: redactMemoryText(fact) }], {
94
- userId,
95
- infer: false,
96
- });
97
- return textResult(JSON.stringify(result ? { result: 'Fact stored.' } : { error: 'Failed to store.' }));
98
- }
99
- catch (err) {
100
- return textResult(JSON.stringify({
101
- error: `Save failed: ${err instanceof Error ? err.message : String(err)}`,
102
- }));
103
- }
104
- },
105
- };
106
- return [searchTool, profileTool, saveTool];
107
- }
108
- //# sourceMappingURL=tools.js.map