@easynet/agent-memory 1.0.18 → 1.0.20

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.
Files changed (82) hide show
  1. package/README.md +5 -1
  2. package/dist/src/core/agent-memory.d.ts +23 -9
  3. package/dist/src/core/agent-memory.d.ts.map +1 -1
  4. package/dist/src/core/agent-memory.js +113 -14
  5. package/dist/src/core/agent-memory.js.map +1 -1
  6. package/dist/src/core/config.d.ts +48 -18
  7. package/dist/src/core/config.d.ts.map +1 -1
  8. package/dist/src/core/config.js +212 -36
  9. package/dist/src/core/config.js.map +1 -1
  10. package/dist/src/core/policy.d.ts +1 -1
  11. package/dist/src/core/policy.d.ts.map +1 -1
  12. package/dist/src/core/policy.js +2 -1
  13. package/dist/src/core/policy.js.map +1 -1
  14. package/dist/src/core/router.d.ts +6 -6
  15. package/dist/src/core/router.d.ts.map +1 -1
  16. package/dist/src/core/router.js +10 -3
  17. package/dist/src/core/router.js.map +1 -1
  18. package/dist/src/core/types.d.ts +22 -10
  19. package/dist/src/core/types.d.ts.map +1 -1
  20. package/dist/src/core/types.js +41 -0
  21. package/dist/src/core/types.js.map +1 -1
  22. package/dist/src/create-agent-memory.d.ts +28 -18
  23. package/dist/src/create-agent-memory.d.ts.map +1 -1
  24. package/dist/src/create-agent-memory.js +145 -28
  25. package/dist/src/create-agent-memory.js.map +1 -1
  26. package/dist/src/index.d.ts +2 -4
  27. package/dist/src/index.d.ts.map +1 -1
  28. package/dist/src/index.js +3 -6
  29. package/dist/src/index.js.map +1 -1
  30. package/dist/src/integrations/deepagents-adapter.d.ts +2 -3
  31. package/dist/src/integrations/deepagents-adapter.d.ts.map +1 -1
  32. package/dist/src/integrations/deepagents-adapter.js +6 -11
  33. package/dist/src/integrations/deepagents-adapter.js.map +1 -1
  34. package/dist/src/integrations/langgraph.d.ts +2 -2
  35. package/dist/src/integrations/langgraph.d.ts.map +1 -1
  36. package/dist/src/integrations/langgraph.js.map +1 -1
  37. package/dist/src/providers/in-memory-store.d.ts +3 -3
  38. package/dist/src/providers/in-memory-store.d.ts.map +1 -1
  39. package/dist/src/providers/in-memory-store.js +1 -1
  40. package/dist/src/providers/in-memory-store.js.map +1 -1
  41. package/dist/src/providers/mem0-provider.d.ts +6 -7
  42. package/dist/src/providers/mem0-provider.d.ts.map +1 -1
  43. package/dist/src/providers/mem0-provider.js +47 -50
  44. package/dist/src/providers/mem0-provider.js.map +1 -1
  45. package/dist/src/providers/rag-provider.d.ts +3 -3
  46. package/dist/src/providers/rag-provider.d.ts.map +1 -1
  47. package/dist/src/providers/rag-provider.js.map +1 -1
  48. package/dist/src/providers/sqlite-store.d.ts +3 -3
  49. package/dist/src/providers/sqlite-store.d.ts.map +1 -1
  50. package/dist/src/providers/sqlite-store.js +3 -2
  51. package/dist/src/providers/sqlite-store.js.map +1 -1
  52. package/dist/test/core/agent-memory.test.js +33 -6
  53. package/dist/test/core/agent-memory.test.js.map +1 -1
  54. package/dist/test/core/config.test.js +231 -16
  55. package/dist/test/core/config.test.js.map +1 -1
  56. package/dist/test/core/router.test.js +27 -0
  57. package/dist/test/core/router.test.js.map +1 -1
  58. package/dist/test/create-agent-memory.test.js +116 -37
  59. package/dist/test/create-agent-memory.test.js.map +1 -1
  60. package/dist/test/integration/agent-memory-flow.test.js +9 -21
  61. package/dist/test/integration/agent-memory-flow.test.js.map +1 -1
  62. package/dist/test/integration/real-memory-features.test.d.ts +11 -0
  63. package/dist/test/integration/real-memory-features.test.d.ts.map +1 -0
  64. package/dist/test/integration/real-memory-features.test.js +198 -0
  65. package/dist/test/integration/real-memory-features.test.js.map +1 -0
  66. package/dist/test/integration/url-ingest-flow.test.js +3 -5
  67. package/dist/test/integration/url-ingest-flow.test.js.map +1 -1
  68. package/dist/test/integration/vlm-llm-live.test.js +9 -20
  69. package/dist/test/integration/vlm-llm-live.test.js.map +1 -1
  70. package/dist/test/providers/in-memory-store.test.js +1 -1
  71. package/dist/test/providers/in-memory-store.test.js.map +1 -1
  72. package/dist/test/providers/mem0-provider.test.d.ts +2 -0
  73. package/dist/test/providers/mem0-provider.test.d.ts.map +1 -0
  74. package/dist/test/providers/mem0-provider.test.js +110 -0
  75. package/dist/test/providers/mem0-provider.test.js.map +1 -0
  76. package/dist/test/providers/sqlite-store.test.js +1 -1
  77. package/dist/test/providers/sqlite-store.test.js.map +1 -1
  78. package/package.json +3 -14
  79. package/dist/src/integrations/langchain.d.ts +0 -27
  80. package/dist/src/integrations/langchain.d.ts.map +0 -1
  81. package/dist/src/integrations/langchain.js +0 -28
  82. package/dist/src/integrations/langchain.js.map +0 -1
@@ -5,13 +5,36 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.loadConfigFromYaml = loadConfigFromYaml;
7
7
  exports.resolveConfig = resolveConfig;
8
+ const types_js_1 = require("./types.js");
8
9
  const DEFAULT_CONFIG = {
9
- providers: [{ id: "default", type: "in_memory" }],
10
- defaultProvider: "default",
11
- memoryTypes: {
12
- thread: { providerId: "default", allowWrite: true, maxItems: 20 },
13
- cross_thread: { providerId: "default", allowWrite: true, maxItems: 20 },
14
- knowledge: { providerId: "default", allowWrite: true, maxItems: 20 },
10
+ stores: [{ id: "default", type: "in_memory" }],
11
+ defaultStore: "default",
12
+ memory: {
13
+ thread: {
14
+ storeId: "default",
15
+ storeIds: ["default"],
16
+ allowWrite: true,
17
+ maxItems: 20,
18
+ sessionCompaction: {
19
+ enabled: false,
20
+ maxTokens: 3000,
21
+ keepRecentTurns: 12,
22
+ summaryKey: "__session_summary__",
23
+ checkEveryTurns: 3,
24
+ },
25
+ },
26
+ cross_thread: {
27
+ storeId: "default",
28
+ storeIds: ["default"],
29
+ allowWrite: true,
30
+ maxItems: 20,
31
+ },
32
+ knowledge: {
33
+ storeId: "default",
34
+ storeIds: ["default"],
35
+ allowWrite: true,
36
+ maxItems: 20,
37
+ },
15
38
  },
16
39
  router: { defaultProvider: "default", rules: [
17
40
  { types: ["thread"], providerId: "default" },
@@ -19,11 +42,18 @@ const DEFAULT_CONFIG = {
19
42
  { types: ["knowledge"], providerId: "default" },
20
43
  ] },
21
44
  policy: {
22
- allowedWriteTypes: ["thread", "cross_thread", "knowledge"],
45
+ allowedWriteTypes: [...types_js_1.MEMORY_TYPE_KEYWORDS],
23
46
  maxItemsByType: { thread: 20, cross_thread: 20, knowledge: 20 },
24
47
  },
25
48
  observability: { trace: false },
26
49
  privacy: {},
50
+ sessionCompaction: {
51
+ enabled: false,
52
+ maxTokens: 3000,
53
+ keepRecentTurns: 12,
54
+ summaryKey: "__session_summary__",
55
+ checkEveryTurns: 3,
56
+ },
27
57
  vlm: undefined,
28
58
  };
29
59
  /**
@@ -40,56 +70,139 @@ async function loadConfigFromYaml(configPath) {
40
70
  return DEFAULT_CONFIG;
41
71
  return resolveConfig(parsed);
42
72
  }
43
- const MEMORY_TYPES = ["thread", "cross_thread", "knowledge"];
73
+ const MEMORY_TYPES = [...types_js_1.MEMORY_TYPE_KEYWORDS];
44
74
  function resolveConfig(config) {
45
- const providers = config.providers?.length ? config.providers : DEFAULT_CONFIG.providers;
46
- const defaultProvider = config.defaultProvider ?? providers[0]?.id ?? "default";
47
- const configuredTypes = config.memoryTypes ?? {};
48
- const memoryTypes = {
75
+ const normalizedStores = normalizeStores(config.stores);
76
+ const storeMap = new Map();
77
+ for (const store of normalizedStores.stores)
78
+ storeMap.set(store.id, store);
79
+ const requestedDefaultStore = config.defaultStore ?? DEFAULT_CONFIG.defaultStore;
80
+ const configuredMemory = config.memory ?? {};
81
+ const inlineStoreIds = {};
82
+ for (const type of MEMORY_TYPES) {
83
+ const inline = configuredMemory[type]?.store;
84
+ if (!inline)
85
+ continue;
86
+ const id = typeof inline.id === "string" && inline.id.trim() ? inline.id.trim() : type;
87
+ const candidate = {
88
+ id,
89
+ type: inline.type,
90
+ config: resolveStoreConfig(inline),
91
+ options: resolveStoreConfig(inline),
92
+ };
93
+ const existing = storeMap.get(id);
94
+ if (existing) {
95
+ if (existing.type !== candidate.type ||
96
+ JSON.stringify(resolveStoreConfig(existing) ?? {}) !== JSON.stringify(resolveStoreConfig(candidate) ?? {})) {
97
+ throw new Error(`Store id '${id}' is declared with different config under memory.${type}.store`);
98
+ }
99
+ }
100
+ else {
101
+ storeMap.set(id, candidate);
102
+ }
103
+ inlineStoreIds[type] = id;
104
+ }
105
+ const stores = storeMap.size > 0 ? [...storeMap.values()] : DEFAULT_CONFIG.stores;
106
+ const storeById = new Map(stores.map((p) => [p.id, p]));
107
+ const defaultStore = storeById.has(requestedDefaultStore)
108
+ ? requestedDefaultStore
109
+ : (stores.find((p) => p.type !== "mem0")?.id ?? stores[0]?.id ?? "default");
110
+ const fallbackStoreIdForType = (type) => inlineStoreIds[type] ??
111
+ normalizedStores.storeIdsByType[type]?.[0] ??
112
+ defaultStore;
113
+ const threadCompactionDefaults = DEFAULT_CONFIG.memory.thread.sessionCompaction ?? DEFAULT_CONFIG.sessionCompaction;
114
+ const rawThreadCompaction = configuredMemory.thread?.sessionCompaction ?? {};
115
+ const resolvedCompaction = {
116
+ enabled: rawThreadCompaction.enabled ?? threadCompactionDefaults.enabled ?? false,
117
+ maxTokens: Math.max(1, Math.floor(rawThreadCompaction.maxTokens ?? threadCompactionDefaults.maxTokens ?? 3000)),
118
+ keepRecentTurns: Math.max(0, Math.floor(rawThreadCompaction.keepRecentTurns ?? threadCompactionDefaults.keepRecentTurns ?? 12)),
119
+ summaryKey: typeof rawThreadCompaction.summaryKey === "string" && rawThreadCompaction.summaryKey.trim()
120
+ ? rawThreadCompaction.summaryKey.trim()
121
+ : (threadCompactionDefaults.summaryKey ?? "__session_summary__"),
122
+ checkEveryTurns: Math.max(1, Math.floor(rawThreadCompaction.checkEveryTurns ?? threadCompactionDefaults.checkEveryTurns ?? 3)),
123
+ };
124
+ const memory = {
49
125
  thread: {
50
- providerId: configuredTypes.thread?.providerId ?? defaultProvider,
51
- allowWrite: configuredTypes.thread?.allowWrite ?? true,
52
- maxItems: configuredTypes.thread?.maxItems ?? 20,
53
- budgetTokens: configuredTypes.thread?.budgetTokens,
126
+ storeIds: uniqueNonEmpty([
127
+ ...(configuredMemory.thread?.storeIds ?? []),
128
+ ...(configuredMemory.thread?.storeId ? [configuredMemory.thread.storeId] : []),
129
+ ...(inlineStoreIds.thread ? [inlineStoreIds.thread] : []),
130
+ ...(normalizedStores.storeIdsByType.thread ?? []),
131
+ fallbackStoreIdForType("thread"),
132
+ ]),
133
+ storeId: "",
134
+ allowWrite: configuredMemory.thread?.allowWrite ?? true,
135
+ maxItems: configuredMemory.thread?.maxItems ?? 20,
136
+ budgetTokens: configuredMemory.thread?.budgetTokens,
137
+ sessionCompaction: resolvedCompaction,
54
138
  },
55
139
  cross_thread: {
56
- providerId: configuredTypes.cross_thread?.providerId ?? defaultProvider,
57
- allowWrite: configuredTypes.cross_thread?.allowWrite ?? true,
58
- maxItems: configuredTypes.cross_thread?.maxItems ?? 20,
59
- budgetTokens: configuredTypes.cross_thread?.budgetTokens,
140
+ storeIds: uniqueNonEmpty([
141
+ ...(configuredMemory.cross_thread?.storeIds ?? []),
142
+ ...(configuredMemory.cross_thread?.storeId ? [configuredMemory.cross_thread.storeId] : []),
143
+ ...(inlineStoreIds.cross_thread ? [inlineStoreIds.cross_thread] : []),
144
+ ...(normalizedStores.storeIdsByType.cross_thread ?? []),
145
+ fallbackStoreIdForType("cross_thread"),
146
+ ]),
147
+ storeId: "",
148
+ allowWrite: configuredMemory.cross_thread?.allowWrite ?? true,
149
+ maxItems: configuredMemory.cross_thread?.maxItems ?? 20,
150
+ budgetTokens: configuredMemory.cross_thread?.budgetTokens,
60
151
  },
61
152
  knowledge: {
62
- providerId: configuredTypes.knowledge?.providerId ?? defaultProvider,
63
- allowWrite: configuredTypes.knowledge?.allowWrite ?? true,
64
- maxItems: configuredTypes.knowledge?.maxItems ?? 20,
65
- budgetTokens: configuredTypes.knowledge?.budgetTokens,
153
+ storeIds: uniqueNonEmpty([
154
+ ...(configuredMemory.knowledge?.storeIds ?? []),
155
+ ...(configuredMemory.knowledge?.storeId ? [configuredMemory.knowledge.storeId] : []),
156
+ ...(inlineStoreIds.knowledge ? [inlineStoreIds.knowledge] : []),
157
+ ...(normalizedStores.storeIdsByType.knowledge ?? []),
158
+ fallbackStoreIdForType("knowledge"),
159
+ ]),
160
+ storeId: "",
161
+ allowWrite: configuredMemory.knowledge?.allowWrite ?? true,
162
+ maxItems: configuredMemory.knowledge?.maxItems ?? 20,
163
+ budgetTokens: configuredMemory.knowledge?.budgetTokens,
66
164
  },
67
165
  };
68
- const rules = MEMORY_TYPES.map((type) => ({
166
+ for (const type of MEMORY_TYPES) {
167
+ memory[type].storeId = memory[type].storeIds[0];
168
+ }
169
+ const rules = MEMORY_TYPES.flatMap((type) => memory[type].storeIds.map((storeId) => ({
69
170
  types: [type],
70
- providerId: memoryTypes[type].providerId,
71
- }));
171
+ providerId: storeId,
172
+ })));
173
+ for (const type of MEMORY_TYPES) {
174
+ for (const storeId of memory[type].storeIds) {
175
+ const store = storeById.get(storeId);
176
+ if (!store) {
177
+ throw new Error(`Unknown storeId '${storeId}' for memory type '${type}'`);
178
+ }
179
+ if (store.type === "mem0" && type !== "cross_thread") {
180
+ throw new Error(`Store type 'mem0' can only be assigned to memory.cross_thread (got memory.${type})`);
181
+ }
182
+ }
183
+ }
72
184
  const maxItemsByType = {};
73
185
  const budgetPerType = {};
74
- const allowedWriteTypes = MEMORY_TYPES.filter((type) => memoryTypes[type].allowWrite);
186
+ const allowedWriteTypes = MEMORY_TYPES.filter((type) => memory[type].allowWrite);
75
187
  for (const type of MEMORY_TYPES) {
76
- if (typeof memoryTypes[type].maxItems === "number") {
77
- maxItemsByType[type] = memoryTypes[type].maxItems;
188
+ if (typeof memory[type].maxItems === "number") {
189
+ maxItemsByType[type] = memory[type].maxItems;
78
190
  }
79
- if (typeof memoryTypes[type].budgetTokens === "number") {
80
- budgetPerType[type] = memoryTypes[type].budgetTokens;
191
+ if (typeof memory[type].budgetTokens === "number") {
192
+ budgetPerType[type] = memory[type].budgetTokens;
81
193
  }
82
194
  }
83
195
  return {
84
196
  ...config,
85
- providers,
86
- defaultProvider,
87
- memoryTypes,
197
+ stores,
198
+ defaultStore,
199
+ memory,
88
200
  observability: { ...DEFAULT_CONFIG.observability, ...config.observability },
89
201
  privacy: { ...DEFAULT_CONFIG.privacy, ...config.privacy },
202
+ sessionCompaction: resolvedCompaction,
90
203
  vlm: config.vlm ?? DEFAULT_CONFIG.vlm,
91
204
  router: {
92
- defaultProvider,
205
+ defaultProvider: defaultStore,
93
206
  rules,
94
207
  },
95
208
  policy: {
@@ -99,4 +212,67 @@ function resolveConfig(config) {
99
212
  },
100
213
  };
101
214
  }
215
+ function normalizeStores(input) {
216
+ if (!input)
217
+ return { stores: [], storeIdsByType: {} };
218
+ if (Array.isArray(input)) {
219
+ const stores = input.map((entry) => ({
220
+ ...entry,
221
+ config: resolveStoreConfig(entry),
222
+ options: resolveStoreConfig(entry),
223
+ }));
224
+ return {
225
+ stores,
226
+ storeIdsByType: {},
227
+ };
228
+ }
229
+ const stores = [];
230
+ const storeIdsByType = {};
231
+ const seenById = new Map();
232
+ for (const type of MEMORY_TYPES) {
233
+ const raw = input[type];
234
+ if (!raw)
235
+ continue;
236
+ const entries = Array.isArray(raw) ? raw : [raw];
237
+ const ids = [];
238
+ for (const entry of entries) {
239
+ const id = typeof entry.id === "string" && entry.id.trim()
240
+ ? entry.id.trim()
241
+ : (entries.length === 1 ? type : `${type}_${ids.length}`);
242
+ const store = {
243
+ id,
244
+ type: entry.type,
245
+ config: resolveStoreConfig(entry),
246
+ options: resolveStoreConfig(entry),
247
+ };
248
+ const existing = seenById.get(id);
249
+ if (existing) {
250
+ if (existing.type !== store.type ||
251
+ JSON.stringify(resolveStoreConfig(existing) ?? {}) !== JSON.stringify(resolveStoreConfig(store) ?? {})) {
252
+ throw new Error(`Store id '${id}' is declared with different config under stores.${type}`);
253
+ }
254
+ }
255
+ else {
256
+ seenById.set(id, store);
257
+ stores.push(store);
258
+ }
259
+ ids.push(id);
260
+ }
261
+ storeIdsByType[type] = uniqueNonEmpty(ids);
262
+ }
263
+ return { stores, storeIdsByType };
264
+ }
265
+ function uniqueNonEmpty(values) {
266
+ return [...new Set(values.filter((v) => typeof v === "string" && v.trim() !== "").map((v) => v.trim()))];
267
+ }
268
+ function isRecord(value) {
269
+ return !!value && typeof value === "object" && !Array.isArray(value);
270
+ }
271
+ function resolveStoreConfig(value) {
272
+ if (isRecord(value.config))
273
+ return value.config;
274
+ if (isRecord(value.options))
275
+ return value.options;
276
+ return undefined;
277
+ }
102
278
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/core/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/core/config.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Policy Engine: write/retrieve/update policies.
3
3
  * Generic: driven by config and rules, no use-case hardcoding.
4
4
  */
5
- import type { MemoryItem, MemoryType } from "./types.js";
5
+ import { type MemoryItem, type MemoryType } from "./types.js";
6
6
  export interface WritePolicyContext {
7
7
  namespace: string;
8
8
  type: MemoryType;
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/core/policy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAsB,MAAM,YAAY,CAAC;AAE7E,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,UAAU,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,0FAA0F;IAC1F,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC;IACjC,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mCAAmC;IACnC,cAAc,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IACrD,4CAA4C;IAC5C,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;CACrD;AAID,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAgC;gBAEnC,OAAO,GAAE,mBAAwB;IAS7C,qDAAqD;IACrD,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO;IAIjD,mEAAmE;IACnE,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,GAAG,IAAI;IAQ/D,6EAA6E;IAC7E,YAAY,CACV,KAAK,EAAE,UAAU,EAAE,EACnB,YAAY,EAAE,MAAM,GACnB;QAAE,KAAK,EAAE,UAAU,EAAE,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE;CA+CpD"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/core/policy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAwB,KAAK,UAAU,EAAE,KAAK,UAAU,EAA8B,MAAM,YAAY,CAAC;AAEhH,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,UAAU,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,0FAA0F;IAC1F,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC;IACjC,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mCAAmC;IACnC,cAAc,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IACrD,4CAA4C;IAC5C,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;CACrD;AAID,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAgC;gBAEnC,OAAO,GAAE,mBAAwB;IAS7C,qDAAqD;IACrD,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO;IAIjD,mEAAmE;IACnE,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,GAAG,IAAI;IAQ/D,6EAA6E;IAC7E,YAAY,CACV,KAAK,EAAE,UAAU,EAAE,EACnB,YAAY,EAAE,MAAM,GACnB;QAAE,KAAK,EAAE,UAAU,EAAE,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE;CA+CpD"}
@@ -5,7 +5,8 @@
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.PolicyEngine = void 0;
8
- const DEFAULT_ALLOWED_WRITE_TYPES = ["thread", "cross_thread", "knowledge"];
8
+ const types_js_1 = require("./types.js");
9
+ const DEFAULT_ALLOWED_WRITE_TYPES = [...types_js_1.MEMORY_TYPE_KEYWORDS];
9
10
  class PolicyEngine {
10
11
  options;
11
12
  constructor(options = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../src/core/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../src/core/policy.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Memory Router: route read/write to one or more backends by type/namespace.
3
3
  * Generic: routing is config-driven (which types go to which provider).
4
4
  */
5
- import type { MemoryItem, MemoryProvider, MemoryQueryRequest, MemoryWriteRequest } from "./types.js";
5
+ import type { MemoryItem, MemoryProvider, MemoryQueryParameters, MemoryWriteParameters } from "./types.js";
6
6
  export interface RouterRule {
7
7
  types?: string[];
8
8
  namespacePrefix?: string;
@@ -21,13 +21,13 @@ export declare class MemoryRouter {
21
21
  constructor(options: MemoryRouterOptions);
22
22
  private getProvider;
23
23
  /** Resolve which provider(s) to use for this write. Returns at least one provider id. */
24
- routeWrite(req: MemoryWriteRequest): string[];
24
+ routeWrite(req: MemoryWriteParameters): string[];
25
25
  /** Resolve which provider(s) to query. */
26
- routeQuery(req: MemoryQueryRequest): string[];
27
- write(req: MemoryWriteRequest): Promise<MemoryItem>;
28
- query(req: MemoryQueryRequest): Promise<MemoryItem[]>;
26
+ routeQuery(req: MemoryQueryParameters): string[];
27
+ write(req: MemoryWriteParameters): Promise<MemoryItem>;
28
+ query(req: MemoryQueryParameters): Promise<MemoryItem[]>;
29
29
  delete(id: string, namespace: string): Promise<void>;
30
- /** Get one item by namespace and key (path); uses first provider that has getByKey. */
30
+ /** Get one item by namespace and key (metadata.key); uses first provider that has getByKey. */
31
31
  getByKey(namespace: string, key: string): Promise<MemoryItem | null>;
32
32
  /** Delete item by namespace and key. */
33
33
  deleteByKey(namespace: string, key: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/router.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErG,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACvC,4FAA4F;IAC5F,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,iBAAiB,CAAS;gBAEtB,OAAO,EAAE,mBAAmB;IAMxC,OAAO,CAAC,WAAW;IAMnB,yFAAyF;IACzF,UAAU,CAAC,GAAG,EAAE,kBAAkB,GAAG,MAAM,EAAE;IAY7C,0CAA0C;IAC1C,UAAU,CAAC,GAAG,EAAE,kBAAkB,GAAG,MAAM,EAAE;IAavC,KAAK,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC;IAMnD,KAAK,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAUrD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU1D,uFAAuF;IACjF,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAU1E,wCAAwC;IAClC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKjE"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/router.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE3G,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACvC,4FAA4F;IAC5F,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,iBAAiB,CAAS;gBAEtB,OAAO,EAAE,mBAAmB;IAMxC,OAAO,CAAC,WAAW;IAMnB,yFAAyF;IACzF,UAAU,CAAC,GAAG,EAAE,qBAAqB,GAAG,MAAM,EAAE;IAYhD,0CAA0C;IAC1C,UAAU,CAAC,GAAG,EAAE,qBAAqB,GAAG,MAAM,EAAE;IAa1C,KAAK,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAWtD,KAAK,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAUxD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU1D,+FAA+F;IACzF,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAU1E,wCAAwC;IAClC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKjE"}
@@ -41,8 +41,15 @@ class MemoryRouter {
41
41
  }
42
42
  async write(req) {
43
43
  const ids = this.routeWrite(req);
44
- const provider = this.getProvider(ids[0]);
45
- return provider.write(req);
44
+ let first;
45
+ for (const id of ids) {
46
+ const item = await this.getProvider(id).write(req);
47
+ if (!first)
48
+ first = item;
49
+ }
50
+ if (!first)
51
+ throw new Error("No provider available for write");
52
+ return first;
46
53
  }
47
54
  async query(req) {
48
55
  const ids = this.routeQuery(req);
@@ -63,7 +70,7 @@ class MemoryRouter {
63
70
  }
64
71
  }
65
72
  }
66
- /** Get one item by namespace and key (path); uses first provider that has getByKey. */
73
+ /** Get one item by namespace and key (metadata.key); uses first provider that has getByKey. */
67
74
  async getByKey(namespace, key) {
68
75
  for (const p of this.providers.values()) {
69
76
  if (p.getByKey) {
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/core/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/core/router.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,21 @@
3
3
  * Generic: no use-case hardcoding; driven by config and semantic understanding.
4
4
  */
5
5
  /** Supported memory types: thread (session), cross_thread (cross-session), knowledge (docs/RAG). No use-case hardcoding. */
6
- export type MemoryType = "thread" | "cross_thread" | "knowledge";
6
+ export declare const MEMORY_TYPE: {
7
+ readonly THREAD: "thread";
8
+ readonly CROSS_THREAD: "cross_thread";
9
+ readonly KNOWLEDGE: "knowledge";
10
+ };
11
+ export type MemoryType = (typeof MEMORY_TYPE)[keyof typeof MEMORY_TYPE];
12
+ export declare const MEMORY_TYPE_KEYWORDS: readonly ["thread", "cross_thread", "knowledge"];
13
+ /**
14
+ * Normalize type keyword to canonical values:
15
+ * - thread
16
+ * - cross_thread
17
+ * - knowledge
18
+ */
19
+ export declare function normalizeMemoryTypeKeyword(value: unknown): MemoryType | null;
20
+ export declare function isMemoryType(value: unknown): value is MemoryType;
7
21
  export type MemoryScope = "thread" | "global";
8
22
  export type MemorySource = "chat" | "tool" | "doc" | "image" | "code" | "system";
9
23
  export type PrivacyLevel = "public" | "private" | "sensitive";
@@ -33,7 +47,7 @@ export interface MemoryItem {
33
47
  embedding?: number[];
34
48
  metadata: MemoryItemMetadata;
35
49
  }
36
- export interface MemoryWriteRequest {
50
+ export interface MemoryWriteParameters {
37
51
  namespace: string;
38
52
  type: MemoryType;
39
53
  content: string;
@@ -41,10 +55,10 @@ export interface MemoryWriteRequest {
41
55
  metadata?: Partial<MemoryItemMetadata>;
42
56
  }
43
57
  /** memorize input: type optional; when omitted, classifyMemory callback or default cross_thread. */
44
- export type MemorizeRequest = Omit<MemoryWriteRequest, "type"> & {
58
+ export type MemorizeParameters = Omit<MemoryWriteParameters, "type"> & {
45
59
  type?: MemoryType;
46
60
  };
47
- export interface MemoryQueryRequest {
61
+ export interface MemoryQueryParameters {
48
62
  namespace: string;
49
63
  query: string;
50
64
  topK?: number;
@@ -53,22 +67,20 @@ export interface MemoryQueryRequest {
53
67
  types?: MemoryType[];
54
68
  }
55
69
  export interface MemoryProvider {
56
- write(req: MemoryWriteRequest): Promise<MemoryItem>;
57
- query(req: MemoryQueryRequest): Promise<MemoryItem[]>;
70
+ write(req: MemoryWriteParameters): Promise<MemoryItem>;
71
+ query(req: MemoryQueryParameters): Promise<MemoryItem[]>;
58
72
  delete(id: string, namespace: string): Promise<void>;
59
- /** Optional: get a single item by namespace and key (e.g. path). */
73
+ /** Optional: get a single item by namespace and key (metadata.key). */
60
74
  getByKey?(namespace: string, key: string): Promise<MemoryItem | null>;
61
75
  /** Optional: delete the item with the given namespace and key. */
62
76
  deleteByKey?(namespace: string, key: string): Promise<void>;
63
77
  upsert?(item: MemoryItem): Promise<MemoryItem>;
64
78
  }
65
- export interface RetrieveResult {
79
+ export interface RecallResult {
66
80
  items: MemoryItem[];
67
81
  injectedText: string;
68
82
  traceId: string;
69
83
  }
70
- /** Recall result (same shape as retrieveForPrompt). */
71
- export type RecallResult = RetrieveResult;
72
84
  export interface MemoryTrace {
73
85
  traceId: string;
74
86
  namespace: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,45 @@
4
4
  * Generic: no use-case hardcoding; driven by config and semantic understanding.
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.MEMORY_TYPE_KEYWORDS = exports.MEMORY_TYPE = void 0;
8
+ exports.normalizeMemoryTypeKeyword = normalizeMemoryTypeKeyword;
9
+ exports.isMemoryType = isMemoryType;
10
+ /** Supported memory types: thread (session), cross_thread (cross-session), knowledge (docs/RAG). No use-case hardcoding. */
11
+ exports.MEMORY_TYPE = {
12
+ THREAD: "thread",
13
+ CROSS_THREAD: "cross_thread",
14
+ KNOWLEDGE: "knowledge",
15
+ };
16
+ exports.MEMORY_TYPE_KEYWORDS = [
17
+ exports.MEMORY_TYPE.THREAD,
18
+ exports.MEMORY_TYPE.CROSS_THREAD,
19
+ exports.MEMORY_TYPE.KNOWLEDGE,
20
+ ];
21
+ /**
22
+ * Normalize type keyword to canonical values:
23
+ * - thread
24
+ * - cross_thread
25
+ * - knowledge
26
+ */
27
+ function normalizeMemoryTypeKeyword(value) {
28
+ if (typeof value !== "string")
29
+ return null;
30
+ const token = value
31
+ .trim()
32
+ .replace(/([a-z0-9])([A-Z])/g, "$1_$2")
33
+ .toLowerCase()
34
+ .replace(/[\s-]+/g, "_");
35
+ if (token === "thread")
36
+ return "thread";
37
+ if (token === "cross_thread" || token === "crossthread" || token === "long_term" || token === "longterm") {
38
+ return "cross_thread";
39
+ }
40
+ if (token === "knowledge" || token === "knowledge_base" || token === "knowledgebase") {
41
+ return "knowledge";
42
+ }
43
+ return null;
44
+ }
45
+ function isMemoryType(value) {
46
+ return normalizeMemoryTypeKeyword(value) !== null;
47
+ }
7
48
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAqBH,gEAeC;AAED,oCAEC;AAtCD,4HAA4H;AAC/G,QAAA,WAAW,GAAG;IACzB,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE,cAAc;IAC5B,SAAS,EAAE,WAAW;CACd,CAAC;AAEE,QAAA,oBAAoB,GAAG;IAClC,mBAAW,CAAC,MAAM;IAClB,mBAAW,CAAC,YAAY;IACxB,mBAAW,CAAC,SAAS;CACb,CAAC;AAEX;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAC,KAAc;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,KAAK,GAAG,KAAK;SAChB,IAAI,EAAE;SACN,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,WAAW,EAAE;SACb,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC3B,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IACxC,IAAI,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,aAAa,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzG,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,gBAAgB,IAAI,KAAK,KAAK,eAAe,EAAE,CAAC;QACrF,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,YAAY,CAAC,KAAc;IACzC,OAAO,0BAA0B,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AACpD,CAAC"}