@easynet/agent-memory 1.0.57 → 1.0.59

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.
@@ -13,12 +13,14 @@ import { join } from "node:path";
13
13
  import { mkdir, rm, writeFile } from "node:fs/promises";
14
14
  import { tmpdir } from "node:os";
15
15
  import { randomUUID } from "node:crypto";
16
+ import { createRequire } from "node:module";
16
17
  import { pathToFileURL } from "node:url";
17
18
  import { createAgentMemoryRegistry } from "../../src/create-agent-memory.js";
18
19
  import { SqliteStoreProvider } from "../../src/providers/sqlite-store.js";
19
20
  const RUN_REAL = process.env.RUN_REAL_MEMORY_INTEGRATION === "1";
20
21
  const RUN_REAL_MEM0 = process.env.RUN_REAL_MEM0_INTEGRATION === "1";
21
22
  const MEM0_CONFIG_JSON = process.env.AGENT_MEMORY_MEM0_CONFIG_JSON;
23
+ const require = createRequire(import.meta.url);
22
24
  const HAS_WORKING_SQLITE = (() => {
23
25
  try {
24
26
  // Use the same provider path as production runtime to verify sqlite is actually usable.
@@ -38,7 +40,7 @@ async function createTempDir(prefix) {
38
40
  await mkdir(dir, { recursive: true });
39
41
  return dir;
40
42
  }
41
- describe("real memory backends", { skip: !RUN_REAL }, () => {
43
+ describe("real backend integration", { skip: !RUN_REAL }, () => {
42
44
  it("sqlite: thread/cross_thread/knowledge persistence + key APIs", { skip: !HAS_WORKING_SQLITE }, async () => {
43
45
  const dir = await createTempDir("agent-memory-real-sqlite");
44
46
  const threadDb = join(dir, "thread.sqlite");
@@ -1 +1 @@
1
- {"version":3,"file":"real-memory-features.test.js","sourceRoot":"","sources":["../../../test/integration/real-memory-features.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"real-memory-features.test.js","sourceRoot":"","sources":["../../../test/integration/real-memory-features.test.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ const MINIMAL_PNG = Buffer.from("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAA
24
24
  const baseConfig = {
25
25
  stores: [{ id: "default", type: "in_memory" }],
26
26
  };
27
- describe("VLM/LLM live integration", { skip: !RUN_LIVE }, () => {
27
+ describe("live VLM/LLM integration", { skip: !RUN_LIVE }, () => {
28
28
  it("VLM: memorize image URL with captionFn and recall returns caption", async () => {
29
29
  const dir = join(tmpdir(), `agent-memory-vlm-${randomUUID()}`);
30
30
  await mkdir(dir, { recursive: true });
@@ -1 +1 @@
1
- {"version":3,"file":"vlm-llm-live.test.js","sourceRoot":"","sources":["../../../test/integration/vlm-llm-live.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vlm-llm-live.test.js","sourceRoot":"","sources":["../../../test/integration/vlm-llm-live.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { describe, it } from "node:test";
1
+ import { it } from "node:test";
2
2
  import assert from "node:assert";
3
3
  import { AgentMemory } from "../../../src/core/agent-memory.js";
4
4
  import { InMemoryTraceRecorder } from "../../../src/core/observability.js";
@@ -32,146 +32,144 @@ class TestMemoryProvider {
32
32
  return this.deleted.length;
33
33
  }
34
34
  }
35
- describe("AgentMemory", () => {
36
- it("memorize and recall", async () => {
37
- const provider = new TestMemoryProvider();
38
- const router = new MemoryRouter({
39
- providers: new Map([["default", provider]]),
40
- defaultProviderId: "default",
41
- });
42
- const tracer = new InMemoryTraceRecorder();
43
- const memory = new AgentMemory({
44
- router,
45
- traceRecorder: tracer,
46
- });
47
- await memory.memorize({
48
- namespace: "user:1",
49
- type: "cross_thread",
50
- content: "Use Chinese and summarize at the end.",
51
- });
52
- const result = await memory.recall({
53
- namespace: "user:1",
54
- query: "user preferences and cross-session memory",
55
- topK: 5,
56
- });
57
- assert.strictEqual(result.items.length, 1);
58
- assert.strictEqual(result.items[0].content, "Use Chinese and summarize at the end.");
59
- assert.ok(result.traceId);
60
- assert.ok(result.injectedText.includes("cross_thread"));
61
- assert.strictEqual(tracer.getTraces().length, 1);
62
- });
63
- it("memorize without type defaults to cross_thread", async () => {
64
- const provider = new TestMemoryProvider();
65
- const router = new MemoryRouter({
66
- providers: new Map([["default", provider]]),
67
- defaultProviderId: "default",
68
- });
69
- const memory = new AgentMemory({ router });
70
- const item = await memory.memorize({
71
- namespace: "user:1",
72
- content: "I prefer dark mode.",
73
- });
74
- assert.strictEqual(item.type, "cross_thread");
75
- assert.strictEqual(item.content, "I prefer dark mode.");
76
- });
77
- it("memorize normalizes common type aliases", async () => {
78
- const provider = new TestMemoryProvider();
79
- const router = new MemoryRouter({
80
- providers: new Map([["default", provider]]),
81
- defaultProviderId: "default",
82
- });
83
- const memory = new AgentMemory({ router });
84
- const item = await memory.memorize({
85
- namespace: "user:1",
86
- type: "cross-thread",
87
- content: "Alias normalization test",
88
- });
89
- assert.strictEqual(item.type, "cross_thread");
90
- });
91
- it("memorize throws for unsupported type keyword", async () => {
92
- const provider = new TestMemoryProvider();
93
- const router = new MemoryRouter({
94
- providers: new Map([["default", provider]]),
95
- defaultProviderId: "default",
96
- });
97
- const memory = new AgentMemory({ router });
98
- await assert.rejects(() => memory.memorize({
99
- namespace: "user:1",
100
- type: "invalid_type",
101
- content: "bad type",
102
- }), /Unsupported memory type/);
103
- });
104
- it("memorize with classifyMemory uses callback for type", async () => {
105
- const provider = new TestMemoryProvider();
106
- const router = new MemoryRouter({
107
- providers: new Map([["default", provider]]),
108
- defaultProviderId: "default",
109
- });
110
- const memory = new AgentMemory({
111
- router,
112
- classifyMemory: async (content) => (content.length > 20 ? "knowledge" : "thread"),
113
- });
114
- const item1 = await memory.memorize({ namespace: "ns", content: "short" });
115
- assert.strictEqual(item1.type, "thread");
116
- const item2 = await memory.memorize({ namespace: "ns", content: "this is a longer content piece" });
117
- assert.strictEqual(item2.type, "knowledge");
118
- });
119
- it("deleteByNamespace", async () => {
120
- const provider = new TestMemoryProvider();
121
- const router = new MemoryRouter({
122
- providers: new Map([["default", provider]]),
123
- defaultProviderId: "default",
124
- });
125
- const memory = new AgentMemory({ router });
126
- await memory.memorize({
127
- namespace: "user:2",
128
- type: "cross_thread",
129
- content: "Chose option A.",
130
- });
131
- const before = await memory.recall({
132
- namespace: "user:2",
133
- query: "any",
134
- topK: 5,
135
- });
136
- assert.strictEqual(before.items.length, 1);
137
- await memory.deleteByNamespace("user:2");
138
- const after = await memory.recall({
139
- namespace: "user:2",
140
- query: "any",
141
- topK: 5,
142
- });
143
- assert.strictEqual(after.items.length, 0);
144
- });
145
- it("ttl: writes expires_at and skips expired items on recall", async () => {
146
- const provider = new TestMemoryProvider();
147
- const router = new MemoryRouter({
148
- providers: new Map([["default", provider]]),
149
- defaultProviderId: "default",
150
- });
151
- const memory = new AgentMemory({ router });
152
- const expired = await memory.memorize({
153
- namespace: "user:ttl",
154
- type: "cross_thread",
155
- content: "This should expire immediately.",
156
- metadata: { ttl_seconds: 0 },
157
- });
158
- assert.ok(typeof expired.metadata.expires_at === "string");
159
- const alive = await memory.memorize({
160
- namespace: "user:ttl",
161
- type: "cross_thread",
162
- content: "This should stay.",
163
- metadata: { ttl_seconds: 3600 },
164
- });
165
- assert.ok(typeof alive.metadata.expires_at === "string");
166
- const result = await memory.recall({
167
- namespace: "user:ttl",
168
- query: "ttl",
169
- topK: 10,
170
- types: ["cross_thread"],
171
- });
172
- assert.strictEqual(result.items.length, 1);
173
- assert.strictEqual(result.items[0]?.content, "This should stay.");
174
- assert.ok(provider.getDeletedCount() >= 1);
35
+ it("memorize and recall", async () => {
36
+ const provider = new TestMemoryProvider();
37
+ const router = new MemoryRouter({
38
+ providers: new Map([["default", provider]]),
39
+ defaultProviderId: "default",
175
40
  });
41
+ const tracer = new InMemoryTraceRecorder();
42
+ const memory = new AgentMemory({
43
+ router,
44
+ traceRecorder: tracer,
45
+ });
46
+ await memory.memorize({
47
+ namespace: "user:1",
48
+ type: "cross_thread",
49
+ content: "Use Chinese and summarize at the end.",
50
+ });
51
+ const result = await memory.recall({
52
+ namespace: "user:1",
53
+ query: "user preferences and cross-session memory",
54
+ topK: 5,
55
+ });
56
+ assert.strictEqual(result.items.length, 1);
57
+ assert.strictEqual(result.items[0].content, "Use Chinese and summarize at the end.");
58
+ assert.ok(result.traceId);
59
+ assert.ok(result.injectedText.includes("cross_thread"));
60
+ assert.strictEqual(tracer.getTraces().length, 1);
61
+ });
62
+ it("memorize without type defaults to cross_thread", async () => {
63
+ const provider = new TestMemoryProvider();
64
+ const router = new MemoryRouter({
65
+ providers: new Map([["default", provider]]),
66
+ defaultProviderId: "default",
67
+ });
68
+ const memory = new AgentMemory({ router });
69
+ const item = await memory.memorize({
70
+ namespace: "user:1",
71
+ content: "I prefer dark mode.",
72
+ });
73
+ assert.strictEqual(item.type, "cross_thread");
74
+ assert.strictEqual(item.content, "I prefer dark mode.");
75
+ });
76
+ it("memorize normalizes common type aliases", async () => {
77
+ const provider = new TestMemoryProvider();
78
+ const router = new MemoryRouter({
79
+ providers: new Map([["default", provider]]),
80
+ defaultProviderId: "default",
81
+ });
82
+ const memory = new AgentMemory({ router });
83
+ const item = await memory.memorize({
84
+ namespace: "user:1",
85
+ type: "cross-thread",
86
+ content: "Alias normalization test",
87
+ });
88
+ assert.strictEqual(item.type, "cross_thread");
89
+ });
90
+ it("memorize throws for unsupported type keyword", async () => {
91
+ const provider = new TestMemoryProvider();
92
+ const router = new MemoryRouter({
93
+ providers: new Map([["default", provider]]),
94
+ defaultProviderId: "default",
95
+ });
96
+ const memory = new AgentMemory({ router });
97
+ await assert.rejects(() => memory.memorize({
98
+ namespace: "user:1",
99
+ type: "invalid_type",
100
+ content: "bad type",
101
+ }), /Unsupported memory type/);
102
+ });
103
+ it("memorize with classifyMemory uses callback for type", async () => {
104
+ const provider = new TestMemoryProvider();
105
+ const router = new MemoryRouter({
106
+ providers: new Map([["default", provider]]),
107
+ defaultProviderId: "default",
108
+ });
109
+ const memory = new AgentMemory({
110
+ router,
111
+ classifyMemory: async (content) => (content.length > 20 ? "knowledge" : "thread"),
112
+ });
113
+ const item1 = await memory.memorize({ namespace: "ns", content: "short" });
114
+ assert.strictEqual(item1.type, "thread");
115
+ const item2 = await memory.memorize({ namespace: "ns", content: "this is a longer content piece" });
116
+ assert.strictEqual(item2.type, "knowledge");
117
+ });
118
+ it("deleteByNamespace", async () => {
119
+ const provider = new TestMemoryProvider();
120
+ const router = new MemoryRouter({
121
+ providers: new Map([["default", provider]]),
122
+ defaultProviderId: "default",
123
+ });
124
+ const memory = new AgentMemory({ router });
125
+ await memory.memorize({
126
+ namespace: "user:2",
127
+ type: "cross_thread",
128
+ content: "Chose option A.",
129
+ });
130
+ const before = await memory.recall({
131
+ namespace: "user:2",
132
+ query: "any",
133
+ topK: 5,
134
+ });
135
+ assert.strictEqual(before.items.length, 1);
136
+ await memory.deleteByNamespace("user:2");
137
+ const after = await memory.recall({
138
+ namespace: "user:2",
139
+ query: "any",
140
+ topK: 5,
141
+ });
142
+ assert.strictEqual(after.items.length, 0);
143
+ });
144
+ it("ttl: writes expires_at and skips expired items on recall", async () => {
145
+ const provider = new TestMemoryProvider();
146
+ const router = new MemoryRouter({
147
+ providers: new Map([["default", provider]]),
148
+ defaultProviderId: "default",
149
+ });
150
+ const memory = new AgentMemory({ router });
151
+ const expired = await memory.memorize({
152
+ namespace: "user:ttl",
153
+ type: "cross_thread",
154
+ content: "This should expire immediately.",
155
+ metadata: { ttl_seconds: 0 },
156
+ });
157
+ assert.ok(typeof expired.metadata.expires_at === "string");
158
+ const alive = await memory.memorize({
159
+ namespace: "user:ttl",
160
+ type: "cross_thread",
161
+ content: "This should stay.",
162
+ metadata: { ttl_seconds: 3600 },
163
+ });
164
+ assert.ok(typeof alive.metadata.expires_at === "string");
165
+ const result = await memory.recall({
166
+ namespace: "user:ttl",
167
+ query: "ttl",
168
+ topK: 10,
169
+ types: ["cross_thread"],
170
+ });
171
+ assert.strictEqual(result.items.length, 1);
172
+ assert.strictEqual(result.items[0]?.content, "This should stay.");
173
+ assert.ok(provider.getDeletedCount() >= 1);
176
174
  });
177
175
  //# sourceMappingURL=agent-memory.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-memory.test.js","sourceRoot":"","sources":["../../../../test/unit/core/agent-memory.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-memory.test.js","sourceRoot":"","sources":["../../../../test/unit/core/agent-memory.test.ts"],"names":[],"mappings":"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"}