@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.
- package/README.md +5 -1
- package/dist/src/core/agent-memory.d.ts +23 -9
- package/dist/src/core/agent-memory.d.ts.map +1 -1
- package/dist/src/core/agent-memory.js +113 -14
- package/dist/src/core/agent-memory.js.map +1 -1
- package/dist/src/core/config.d.ts +48 -18
- package/dist/src/core/config.d.ts.map +1 -1
- package/dist/src/core/config.js +212 -36
- package/dist/src/core/config.js.map +1 -1
- package/dist/src/core/policy.d.ts +1 -1
- package/dist/src/core/policy.d.ts.map +1 -1
- package/dist/src/core/policy.js +2 -1
- package/dist/src/core/policy.js.map +1 -1
- package/dist/src/core/router.d.ts +6 -6
- package/dist/src/core/router.d.ts.map +1 -1
- package/dist/src/core/router.js +10 -3
- package/dist/src/core/router.js.map +1 -1
- package/dist/src/core/types.d.ts +22 -10
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/types.js +41 -0
- package/dist/src/core/types.js.map +1 -1
- package/dist/src/create-agent-memory.d.ts +28 -18
- package/dist/src/create-agent-memory.d.ts.map +1 -1
- package/dist/src/create-agent-memory.js +145 -28
- package/dist/src/create-agent-memory.js.map +1 -1
- package/dist/src/index.d.ts +2 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -6
- package/dist/src/index.js.map +1 -1
- package/dist/src/integrations/deepagents-adapter.d.ts +2 -3
- package/dist/src/integrations/deepagents-adapter.d.ts.map +1 -1
- package/dist/src/integrations/deepagents-adapter.js +6 -11
- package/dist/src/integrations/deepagents-adapter.js.map +1 -1
- package/dist/src/integrations/langgraph.d.ts +2 -2
- package/dist/src/integrations/langgraph.d.ts.map +1 -1
- package/dist/src/integrations/langgraph.js.map +1 -1
- package/dist/src/providers/in-memory-store.d.ts +3 -3
- package/dist/src/providers/in-memory-store.d.ts.map +1 -1
- package/dist/src/providers/in-memory-store.js +1 -1
- package/dist/src/providers/in-memory-store.js.map +1 -1
- package/dist/src/providers/mem0-provider.d.ts +6 -7
- package/dist/src/providers/mem0-provider.d.ts.map +1 -1
- package/dist/src/providers/mem0-provider.js +47 -50
- package/dist/src/providers/mem0-provider.js.map +1 -1
- package/dist/src/providers/rag-provider.d.ts +3 -3
- package/dist/src/providers/rag-provider.d.ts.map +1 -1
- package/dist/src/providers/rag-provider.js.map +1 -1
- package/dist/src/providers/sqlite-store.d.ts +3 -3
- package/dist/src/providers/sqlite-store.d.ts.map +1 -1
- package/dist/src/providers/sqlite-store.js +3 -2
- package/dist/src/providers/sqlite-store.js.map +1 -1
- package/dist/test/core/agent-memory.test.js +33 -6
- package/dist/test/core/agent-memory.test.js.map +1 -1
- package/dist/test/core/config.test.js +231 -16
- package/dist/test/core/config.test.js.map +1 -1
- package/dist/test/core/router.test.js +27 -0
- package/dist/test/core/router.test.js.map +1 -1
- package/dist/test/create-agent-memory.test.js +116 -37
- package/dist/test/create-agent-memory.test.js.map +1 -1
- package/dist/test/integration/agent-memory-flow.test.js +9 -21
- package/dist/test/integration/agent-memory-flow.test.js.map +1 -1
- package/dist/test/integration/real-memory-features.test.d.ts +11 -0
- package/dist/test/integration/real-memory-features.test.d.ts.map +1 -0
- package/dist/test/integration/real-memory-features.test.js +198 -0
- package/dist/test/integration/real-memory-features.test.js.map +1 -0
- package/dist/test/integration/url-ingest-flow.test.js +3 -5
- package/dist/test/integration/url-ingest-flow.test.js.map +1 -1
- package/dist/test/integration/vlm-llm-live.test.js +9 -20
- package/dist/test/integration/vlm-llm-live.test.js.map +1 -1
- package/dist/test/providers/in-memory-store.test.js +1 -1
- package/dist/test/providers/in-memory-store.test.js.map +1 -1
- package/dist/test/providers/mem0-provider.test.d.ts +2 -0
- package/dist/test/providers/mem0-provider.test.d.ts.map +1 -0
- package/dist/test/providers/mem0-provider.test.js +110 -0
- package/dist/test/providers/mem0-provider.test.js.map +1 -0
- package/dist/test/providers/sqlite-store.test.js +1 -1
- package/dist/test/providers/sqlite-store.test.js.map +1 -1
- package/package.json +3 -14
- package/dist/src/integrations/langchain.d.ts +0 -27
- package/dist/src/integrations/langchain.d.ts.map +0 -1
- package/dist/src/integrations/langchain.js +0 -28
- package/dist/src/integrations/langchain.js.map +0 -1
package/README.md
CHANGED
|
@@ -27,9 +27,13 @@ const { injectedText } = await memory.recall({
|
|
|
27
27
|
console.log(injectedText);
|
|
28
28
|
```
|
|
29
29
|
|
|
30
|
+
## Memory Type 关键字
|
|
31
|
+
|
|
32
|
+
- Canonical keyword:`thread`、`cross_thread`、`knowledge`
|
|
33
|
+
- 推荐始终写 canonical keyword
|
|
34
|
+
|
|
30
35
|
可选能力:
|
|
31
36
|
- `memorize({ url })`:直接摄入本地/远程 PDF、txt、HTML、图片(写入 `knowledge`)
|
|
32
|
-
- `retrieveContextForLangChain` / `writeMemoryForLangChain`:LangChain 快捷接入
|
|
33
37
|
|
|
34
38
|
## 最简单示例(带详细注释)
|
|
35
39
|
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AgentMemory: unified facade. Primary APIs: memorize (store), recall (retrieve).
|
|
3
|
-
* write / retrieveForPrompt kept as aliases for compatibility.
|
|
4
3
|
*/
|
|
5
|
-
import type {
|
|
4
|
+
import type { MemoryType, MemoryItem, MemoryQueryParameters, MemorizeParameters, RecallResult } from "./types.js";
|
|
6
5
|
import { PolicyEngine } from "./policy.js";
|
|
7
6
|
import type { TraceRecorder } from "./observability.js";
|
|
8
7
|
import { PrivacyGuard } from "./privacy.js";
|
|
@@ -16,6 +15,22 @@ export interface AgentMemoryOptions {
|
|
|
16
15
|
privacyGuard?: PrivacyGuard;
|
|
17
16
|
/** When type omitted: used to decide type; otherwise default cross_thread. */
|
|
18
17
|
classifyMemory?: ClassifyMemoryFn;
|
|
18
|
+
/** Optional automatic compaction for thread/session memories. */
|
|
19
|
+
sessionCompaction?: {
|
|
20
|
+
enabled?: boolean;
|
|
21
|
+
maxTokens?: number;
|
|
22
|
+
keepRecentTurns?: number;
|
|
23
|
+
summaryKey?: string;
|
|
24
|
+
checkEveryTurns?: number;
|
|
25
|
+
summarize?: (input: {
|
|
26
|
+
namespace: string;
|
|
27
|
+
oldTurns: Array<{
|
|
28
|
+
content: string;
|
|
29
|
+
metadata?: Record<string, unknown>;
|
|
30
|
+
}>;
|
|
31
|
+
previousSummary?: string;
|
|
32
|
+
}) => Promise<string>;
|
|
33
|
+
};
|
|
19
34
|
}
|
|
20
35
|
export declare class AgentMemory {
|
|
21
36
|
private router;
|
|
@@ -23,19 +38,18 @@ export declare class AgentMemory {
|
|
|
23
38
|
private traceRecorder?;
|
|
24
39
|
private privacy;
|
|
25
40
|
private classifyMemory?;
|
|
41
|
+
private sessionCompaction;
|
|
42
|
+
private threadWriteCount;
|
|
26
43
|
constructor(options: AgentMemoryOptions);
|
|
27
44
|
/** Store one memory (primary API). Type from classifyMemory or default cross_thread when omitted. */
|
|
28
|
-
memorize(req:
|
|
29
|
-
/** @deprecated Use memorize */
|
|
30
|
-
write(req: MemoryWriteRequest): Promise<MemoryItem>;
|
|
45
|
+
memorize(req: MemorizeParameters): Promise<MemoryItem>;
|
|
31
46
|
/** Retrieve memories for query and build injectable text (primary API). Default types: knowledge, cross_thread. */
|
|
32
|
-
recall(req:
|
|
33
|
-
/** @deprecated Use recall */
|
|
34
|
-
retrieveForPrompt(req: MemoryQueryRequest): Promise<RetrieveResult>;
|
|
47
|
+
recall(req: MemoryQueryParameters): Promise<RecallResult>;
|
|
35
48
|
deleteByNamespace(namespace: string): Promise<void>;
|
|
36
|
-
/** Get one item by namespace and key (
|
|
49
|
+
/** Get one item by namespace and key (metadata.key). Requires provider to support getByKey. */
|
|
37
50
|
getByKey(namespace: string, key: string): Promise<MemoryItem | null>;
|
|
38
51
|
/** Delete item by namespace and key. */
|
|
39
52
|
deleteByKey(namespace: string, key: string): Promise<void>;
|
|
53
|
+
private maybeCompactThreadNamespace;
|
|
40
54
|
}
|
|
41
55
|
//# sourceMappingURL=agent-memory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-memory.d.ts","sourceRoot":"","sources":["../../../src/core/agent-memory.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agent-memory.d.ts","sourceRoot":"","sources":["../../../src/core/agent-memory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,qBAAqB,EAErB,kBAAkB,EAClB,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,qHAAqH;AACrH,MAAM,MAAM,gBAAgB,GAAG,CAC7B,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC/B,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,8EAA8E;IAC9E,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC,iEAAiE;IACjE,iBAAiB,CAAC,EAAE;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,KAAK,CAAC;gBAAE,OAAO,EAAE,MAAM,CAAC;gBAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;aAAE,CAAC,CAAC;YACzE,eAAe,CAAC,EAAE,MAAM,CAAC;SAC1B,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;KACvB,CAAC;CACH;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAmB;IAC1C,OAAO,CAAC,iBAAiB,CAWvB;IACF,OAAO,CAAC,gBAAgB,CAA6B;gBAEzC,OAAO,EAAE,kBAAkB;IAmBvC,qGAAqG;IAC/F,QAAQ,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC;IAuD5D,mHAAmH;IAC7G,MAAM,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC;IA8CzD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYzD,+FAA+F;IACzF,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAI1E,wCAAwC;IAClC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAIlD,2BAA2B;CAoE1C"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* AgentMemory: unified facade. Primary APIs: memorize (store), recall (retrieve).
|
|
4
|
-
* write / retrieveForPrompt kept as aliases for compatibility.
|
|
5
4
|
*/
|
|
6
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
6
|
exports.AgentMemory = void 0;
|
|
7
|
+
const types_js_1 = require("./types.js");
|
|
8
8
|
const policy_js_1 = require("./policy.js");
|
|
9
9
|
const observability_js_1 = require("./observability.js");
|
|
10
10
|
const privacy_js_1 = require("./privacy.js");
|
|
@@ -15,19 +15,40 @@ class AgentMemory {
|
|
|
15
15
|
traceRecorder;
|
|
16
16
|
privacy;
|
|
17
17
|
classifyMemory;
|
|
18
|
+
sessionCompaction;
|
|
19
|
+
threadWriteCount = new Map();
|
|
18
20
|
constructor(options) {
|
|
19
21
|
this.router = options.router;
|
|
20
22
|
this.policy = options.policy ?? new policy_js_1.PolicyEngine();
|
|
21
23
|
this.traceRecorder = options.traceRecorder;
|
|
22
24
|
this.privacy = options.privacyGuard ?? new privacy_js_1.PrivacyGuard();
|
|
23
25
|
this.classifyMemory = options.classifyMemory;
|
|
26
|
+
const compaction = options.sessionCompaction ?? {};
|
|
27
|
+
this.sessionCompaction = {
|
|
28
|
+
enabled: compaction.enabled ?? false,
|
|
29
|
+
maxTokens: Math.max(1, Math.floor(compaction.maxTokens ?? 3000)),
|
|
30
|
+
keepRecentTurns: Math.max(0, Math.floor(compaction.keepRecentTurns ?? 12)),
|
|
31
|
+
summaryKey: typeof compaction.summaryKey === "string" && compaction.summaryKey.trim()
|
|
32
|
+
? compaction.summaryKey.trim()
|
|
33
|
+
: "__session_summary__",
|
|
34
|
+
checkEveryTurns: Math.max(1, Math.floor(compaction.checkEveryTurns ?? 3)),
|
|
35
|
+
summarize: compaction.summarize ?? defaultSummarizeThreadTurns,
|
|
36
|
+
};
|
|
24
37
|
}
|
|
25
38
|
/** Store one memory (primary API). Type from classifyMemory or default cross_thread when omitted. */
|
|
26
39
|
async memorize(req) {
|
|
27
|
-
let type
|
|
28
|
-
if (type
|
|
40
|
+
let type;
|
|
41
|
+
if (req.type !== undefined) {
|
|
42
|
+
const normalized = (0, types_js_1.normalizeMemoryTypeKeyword)(req.type);
|
|
43
|
+
if (!normalized) {
|
|
44
|
+
throw new Error(`Unsupported memory type: ${String(req.type)}. Supported keywords: ${types_js_1.MEMORY_TYPE_KEYWORDS.join(", ")}`);
|
|
45
|
+
}
|
|
46
|
+
type = normalized;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
29
49
|
if (this.classifyMemory && req.content) {
|
|
30
|
-
|
|
50
|
+
const classified = await this.classifyMemory(req.content, req.metadata);
|
|
51
|
+
type = (0, types_js_1.normalizeMemoryTypeKeyword)(classified) ?? "cross_thread";
|
|
31
52
|
}
|
|
32
53
|
else {
|
|
33
54
|
type = "cross_thread";
|
|
@@ -56,11 +77,15 @@ class AgentMemory {
|
|
|
56
77
|
updated_at: now,
|
|
57
78
|
},
|
|
58
79
|
};
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
80
|
+
const written = await this.router.write(finalReq);
|
|
81
|
+
const isInternalCompactionWrite = !!finalReq.metadata?.__compaction_internal;
|
|
82
|
+
if (!isInternalCompactionWrite &&
|
|
83
|
+
this.sessionCompaction.enabled &&
|
|
84
|
+
finalReq.type === "thread" &&
|
|
85
|
+
finalReq.namespace) {
|
|
86
|
+
await this.maybeCompactThreadNamespace(finalReq.namespace);
|
|
87
|
+
}
|
|
88
|
+
return written;
|
|
64
89
|
}
|
|
65
90
|
/** Retrieve memories for query and build injectable text (primary API). Default types: knowledge, cross_thread. */
|
|
66
91
|
async recall(req) {
|
|
@@ -99,10 +124,6 @@ class AgentMemory {
|
|
|
99
124
|
traceId,
|
|
100
125
|
};
|
|
101
126
|
}
|
|
102
|
-
/** @deprecated Use recall */
|
|
103
|
-
async retrieveForPrompt(req) {
|
|
104
|
-
return this.recall(req);
|
|
105
|
-
}
|
|
106
127
|
async deleteByNamespace(namespace) {
|
|
107
128
|
const req = {
|
|
108
129
|
namespace,
|
|
@@ -114,7 +135,7 @@ class AgentMemory {
|
|
|
114
135
|
await this.router.delete(item.id, namespace);
|
|
115
136
|
}
|
|
116
137
|
}
|
|
117
|
-
/** Get one item by namespace and key (
|
|
138
|
+
/** Get one item by namespace and key (metadata.key). Requires provider to support getByKey. */
|
|
118
139
|
async getByKey(namespace, key) {
|
|
119
140
|
return this.router.getByKey(namespace, key);
|
|
120
141
|
}
|
|
@@ -122,6 +143,84 @@ class AgentMemory {
|
|
|
122
143
|
async deleteByKey(namespace, key) {
|
|
123
144
|
return this.router.deleteByKey(namespace, key);
|
|
124
145
|
}
|
|
146
|
+
async maybeCompactThreadNamespace(namespace) {
|
|
147
|
+
const count = (this.threadWriteCount.get(namespace) ?? 0) + 1;
|
|
148
|
+
this.threadWriteCount.set(namespace, count);
|
|
149
|
+
if (count % this.sessionCompaction.checkEveryTurns !== 0)
|
|
150
|
+
return;
|
|
151
|
+
const items = await this.router.query({
|
|
152
|
+
namespace,
|
|
153
|
+
query: "",
|
|
154
|
+
topK: 10_000,
|
|
155
|
+
types: ["thread"],
|
|
156
|
+
});
|
|
157
|
+
if (items.length === 0)
|
|
158
|
+
return;
|
|
159
|
+
const estimatedTokens = items.reduce((sum, item) => sum + estimateTokens(item.content), 0);
|
|
160
|
+
if (estimatedTokens <= this.sessionCompaction.maxTokens)
|
|
161
|
+
return;
|
|
162
|
+
const ordered = [...items].sort((a, b) => {
|
|
163
|
+
const at = Date.parse(a.metadata?.updated_at ?? a.metadata?.created_at ?? "");
|
|
164
|
+
const bt = Date.parse(b.metadata?.updated_at ?? b.metadata?.created_at ?? "");
|
|
165
|
+
return (Number.isNaN(at) ? 0 : at) - (Number.isNaN(bt) ? 0 : bt);
|
|
166
|
+
});
|
|
167
|
+
const summaryKey = this.sessionCompaction.summaryKey;
|
|
168
|
+
const previousSummary = ordered.find((item) => item.metadata?.key === summaryKey)?.content;
|
|
169
|
+
const normalTurns = ordered.filter((item) => item.metadata?.key !== summaryKey);
|
|
170
|
+
if (normalTurns.length <= this.sessionCompaction.keepRecentTurns)
|
|
171
|
+
return;
|
|
172
|
+
const splitIndex = Math.max(0, normalTurns.length - this.sessionCompaction.keepRecentTurns);
|
|
173
|
+
const oldTurns = normalTurns.slice(0, splitIndex);
|
|
174
|
+
const recentTurns = normalTurns.slice(splitIndex);
|
|
175
|
+
if (oldTurns.length === 0)
|
|
176
|
+
return;
|
|
177
|
+
const summary = await this.sessionCompaction.summarize({
|
|
178
|
+
namespace,
|
|
179
|
+
oldTurns: oldTurns.map((item) => ({
|
|
180
|
+
content: item.content,
|
|
181
|
+
metadata: item.metadata,
|
|
182
|
+
})),
|
|
183
|
+
previousSummary,
|
|
184
|
+
});
|
|
185
|
+
if (!summary || !summary.trim())
|
|
186
|
+
return;
|
|
187
|
+
for (const item of ordered) {
|
|
188
|
+
await this.router.delete(item.id, namespace);
|
|
189
|
+
}
|
|
190
|
+
await this.memorize({
|
|
191
|
+
namespace,
|
|
192
|
+
type: "thread",
|
|
193
|
+
content: summary,
|
|
194
|
+
metadata: {
|
|
195
|
+
key: summaryKey,
|
|
196
|
+
__compaction_internal: true,
|
|
197
|
+
},
|
|
198
|
+
});
|
|
199
|
+
for (const item of recentTurns) {
|
|
200
|
+
await this.memorize({
|
|
201
|
+
namespace,
|
|
202
|
+
type: "thread",
|
|
203
|
+
content: item.content,
|
|
204
|
+
metadata: {
|
|
205
|
+
...item.metadata,
|
|
206
|
+
__compaction_internal: true,
|
|
207
|
+
},
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
}
|
|
125
211
|
}
|
|
126
212
|
exports.AgentMemory = AgentMemory;
|
|
213
|
+
function estimateTokens(text) {
|
|
214
|
+
return Math.ceil((text?.length ?? 0) / 4);
|
|
215
|
+
}
|
|
216
|
+
async function defaultSummarizeThreadTurns(input) {
|
|
217
|
+
const prefix = input.previousSummary?.trim()
|
|
218
|
+
? `Previous summary:\n${input.previousSummary.trim()}\n\n`
|
|
219
|
+
: "";
|
|
220
|
+
const body = input.oldTurns
|
|
221
|
+
.map((turn, idx) => `${idx + 1}. ${turn.content}`)
|
|
222
|
+
.join("\n");
|
|
223
|
+
const merged = `${prefix}${body}`.trim();
|
|
224
|
+
return merged.length > 1200 ? `${merged.slice(0, 1200)}...` : merged;
|
|
225
|
+
}
|
|
127
226
|
//# sourceMappingURL=agent-memory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-memory.js","sourceRoot":"","sources":["../../../src/core/agent-memory.ts"],"names":[],"mappings":";AAAA;;;
|
|
1
|
+
{"version":3,"file":"agent-memory.js","sourceRoot":"","sources":["../../../src/core/agent-memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* YAML config types and loader. Config-driven; no use-case hardcoding.
|
|
3
3
|
*/
|
|
4
|
-
import type
|
|
5
|
-
export interface
|
|
4
|
+
import { type MemoryType } from "./types.js";
|
|
5
|
+
export interface AgentMemoryStoreConfig {
|
|
6
6
|
id: string;
|
|
7
7
|
type: "in_memory" | "rag" | "mem0" | "sqlite" | "llamaindex" | "sqlite_vec" | "extension";
|
|
8
|
+
/** Preferred: typed store config. */
|
|
9
|
+
config?: Record<string, unknown>;
|
|
8
10
|
/** sqlite: dbPath, etc.; rag: embed/search; mem0: pass instance via overrides at runtime */
|
|
9
11
|
options?: Record<string, unknown>;
|
|
10
12
|
}
|
|
13
|
+
export type AgentMemoryStoresByTypeEntry = Omit<AgentMemoryStoreConfig, "id"> & {
|
|
14
|
+
id?: string;
|
|
15
|
+
};
|
|
16
|
+
export type AgentMemoryStoresByTypeConfig = Partial<Record<MemoryType, AgentMemoryStoresByTypeEntry | AgentMemoryStoresByTypeEntry[]>>;
|
|
17
|
+
export type AgentMemoryStoresConfig = AgentMemoryStoreConfig[] | AgentMemoryStoresByTypeConfig;
|
|
11
18
|
export interface ExtensionProviderOptions {
|
|
12
19
|
/** npm package name or local module path (relative path resolved from config file directory). */
|
|
13
20
|
package: string;
|
|
@@ -39,23 +46,43 @@ export interface AgentMemoryPrivacyConfig {
|
|
|
39
46
|
/** If true, redact content that looks like secrets before storing (when implemented). */
|
|
40
47
|
redactSecrets?: boolean;
|
|
41
48
|
}
|
|
49
|
+
export interface AgentMemorySessionCompactionConfig {
|
|
50
|
+
enabled?: boolean;
|
|
51
|
+
maxTokens?: number;
|
|
52
|
+
keepRecentTurns?: number;
|
|
53
|
+
summaryKey?: string;
|
|
54
|
+
checkEveryTurns?: number;
|
|
55
|
+
}
|
|
56
|
+
export interface AgentMemoryProfileConfig {
|
|
57
|
+
storeId?: string;
|
|
58
|
+
storeIds?: string[];
|
|
59
|
+
/** Inline store config for this memory type (preferred for simple configs). */
|
|
60
|
+
store?: Omit<AgentMemoryStoreConfig, "id"> & {
|
|
61
|
+
id?: string;
|
|
62
|
+
};
|
|
63
|
+
allowWrite?: boolean;
|
|
64
|
+
maxItems?: number;
|
|
65
|
+
budgetTokens?: number;
|
|
66
|
+
/** Thread-specific compaction config. */
|
|
67
|
+
sessionCompaction?: AgentMemorySessionCompactionConfig;
|
|
68
|
+
}
|
|
42
69
|
/** mem0ai Memory options (same shape as mem0ai/oss Memory config; can be in YAML) */
|
|
43
70
|
export interface Mem0Config {
|
|
44
71
|
version?: string;
|
|
45
72
|
embedder?: {
|
|
46
|
-
|
|
73
|
+
type?: string;
|
|
47
74
|
config?: Record<string, unknown>;
|
|
48
75
|
};
|
|
49
76
|
vectorStore?: {
|
|
50
|
-
|
|
77
|
+
type?: string;
|
|
51
78
|
config?: Record<string, unknown>;
|
|
52
79
|
};
|
|
53
80
|
llm?: {
|
|
54
|
-
|
|
81
|
+
type?: string;
|
|
55
82
|
config?: Record<string, unknown>;
|
|
56
83
|
};
|
|
57
84
|
historyStore?: {
|
|
58
|
-
|
|
85
|
+
type?: string;
|
|
59
86
|
config?: Record<string, unknown>;
|
|
60
87
|
};
|
|
61
88
|
historyDbPath?: string;
|
|
@@ -68,33 +95,36 @@ export interface VlmConfig {
|
|
|
68
95
|
captionUrl?: string;
|
|
69
96
|
captionPrompt?: string;
|
|
70
97
|
timeoutMs?: number;
|
|
98
|
+
/** Inject VLM model context from @easynet/agent-model into llamaindex provider options.context. */
|
|
99
|
+
useAgentModel?: boolean;
|
|
100
|
+
/** Optional models.yaml path for agent-model (default: process.cwd()/models.yaml). */
|
|
101
|
+
modelsConfigPath?: string;
|
|
71
102
|
[key: string]: unknown;
|
|
72
103
|
}
|
|
73
104
|
export interface AgentMemoryConfig {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
105
|
+
/** Storage backends. */
|
|
106
|
+
stores?: AgentMemoryStoresConfig;
|
|
107
|
+
/** Fallback store when no type mapping matches. */
|
|
108
|
+
defaultStore?: string;
|
|
77
109
|
/** Per-type memory profile (single source of truth for routing and policy). */
|
|
78
|
-
|
|
79
|
-
providerId?: string;
|
|
80
|
-
allowWrite?: boolean;
|
|
81
|
-
maxItems?: number;
|
|
82
|
-
budgetTokens?: number;
|
|
83
|
-
}>>;
|
|
110
|
+
memory?: Partial<Record<MemoryType, AgentMemoryProfileConfig>>;
|
|
84
111
|
observability?: AgentMemoryObservabilityConfig;
|
|
85
112
|
privacy?: AgentMemoryPrivacyConfig;
|
|
86
113
|
vlm?: VlmConfig;
|
|
87
114
|
}
|
|
88
115
|
export interface ResolvedAgentMemoryConfig extends AgentMemoryConfig {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
116
|
+
stores: AgentMemoryStoreConfig[];
|
|
117
|
+
defaultStore: string;
|
|
118
|
+
memory: Record<MemoryType, AgentMemoryProfileConfig & {
|
|
119
|
+
storeId: string;
|
|
120
|
+
storeIds: string[];
|
|
92
121
|
allowWrite: boolean;
|
|
93
122
|
maxItems?: number;
|
|
94
123
|
budgetTokens?: number;
|
|
95
124
|
}>;
|
|
96
125
|
router: AgentMemoryRouterConfig;
|
|
97
126
|
policy: AgentMemoryPolicyConfig;
|
|
127
|
+
sessionCompaction: Required<AgentMemorySessionCompactionConfig>;
|
|
98
128
|
}
|
|
99
129
|
/**
|
|
100
130
|
* Load config from YAML file; returns default if file not found.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/core/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/core/config.ts"],"names":[],"mappings":"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"}
|