@mongodb-js/agent-engine-sdk 0.11.3
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/LICENSE.md +201 -0
- package/README.md +20 -0
- package/dist/api/events.d.ts +39 -0
- package/dist/api/events.d.ts.map +1 -0
- package/dist/api/events.js +9 -0
- package/dist/api/v1/memory.d.ts +257 -0
- package/dist/api/v1/memory.d.ts.map +1 -0
- package/dist/api/v1/memory.js +219 -0
- package/dist/app.d.ts +27 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +19 -0
- package/dist/clients/events.d.ts +11 -0
- package/dist/clients/events.d.ts.map +1 -0
- package/dist/clients/events.js +67 -0
- package/dist/clients/memory.d.ts +358 -0
- package/dist/clients/memory.d.ts.map +1 -0
- package/dist/clients/memory.js +658 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/interfaces.d.ts +111 -0
- package/dist/interfaces.d.ts.map +1 -0
- package/dist/interfaces.js +22 -0
- package/dist/models.d.ts +593 -0
- package/dist/models.d.ts.map +1 -0
- package/dist/models.js +588 -0
- package/package.json +50 -0
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP client for the Memory Server API.
|
|
3
|
+
*
|
|
4
|
+
* Makes HTTP calls to the memory server, allowing transparent replacement
|
|
5
|
+
* of direct mongomem_core usage.
|
|
6
|
+
*/
|
|
7
|
+
import type { ContextResponse, CreateEpisodicResult, CreateProceduralResult, CreateSemanticResult, CreateTaxonomicResult, CustomMemoryRetrieveResult, CustomMemorySaveResult, DeleteResult, MemoryChunk, WriteTurnResult } from "../api/v1/memory.js";
|
|
8
|
+
/**
|
|
9
|
+
* Which memory route convention a backend speaks.
|
|
10
|
+
*
|
|
11
|
+
* - `native`: the memory server's own routes (`/stm/turns`, `/retrieval/*`).
|
|
12
|
+
* Served directly by the memory server and by the OE proxy (which also
|
|
13
|
+
* accepts the aliased forms). This is the default and preserves the behaviour
|
|
14
|
+
* of every existing consumer.
|
|
15
|
+
* - `aliased`: the API Gateway's project-scoped memory routes, where the core
|
|
16
|
+
* loop collapses to `/turns`, `/context`, and a single `/search` that selects
|
|
17
|
+
* the source via a `type` body field. The Gateway does not expose the native
|
|
18
|
+
* `/stm` or `/retrieval` paths, so a Gateway-direct client must use this.
|
|
19
|
+
*/
|
|
20
|
+
export type MemoryRouteStyle = "native" | "aliased";
|
|
21
|
+
/**
|
|
22
|
+
* Thrown for non-OK memory-server responses. Carries the HTTP status and body
|
|
23
|
+
* so callers can branch on failure mode (e.g. map 401/403/404/5xx to typed
|
|
24
|
+
* errors) instead of parsing a message string. Extends `Error`, so existing
|
|
25
|
+
* `catch (e) { ... }` consumers are unaffected.
|
|
26
|
+
*/
|
|
27
|
+
export declare class MemoryHttpError extends Error {
|
|
28
|
+
readonly status: number;
|
|
29
|
+
readonly responseText: string;
|
|
30
|
+
constructor(status: number, responseText: string);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* HTTP client for the Memory Server.
|
|
34
|
+
*
|
|
35
|
+
* ```ts
|
|
36
|
+
* const client = new MemoryClient('http://127.0.0.1:8081')
|
|
37
|
+
*
|
|
38
|
+
* // Write conversation turn
|
|
39
|
+
* await client.writeTurn({ sessionId: 'thread_123', role: 'user', content: 'Hello', orgId: 'org_1', userId: 'user_1', projectId: 'proj_1' })
|
|
40
|
+
*
|
|
41
|
+
* // Build context
|
|
42
|
+
* const context = await client.buildContext({ query: 'What did we discuss?', sessionId: 'thread_123', orgId: 'org_1', userId: 'user_1', projectId: 'proj_1' })
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export declare class MemoryClient {
|
|
46
|
+
private readonly baseUrl;
|
|
47
|
+
private readonly timeout;
|
|
48
|
+
private readonly staticHeaders;
|
|
49
|
+
private readonly dynamicHeaders;
|
|
50
|
+
private readonly apiPrefix;
|
|
51
|
+
private readonly requestExtras;
|
|
52
|
+
private readonly maxRetries;
|
|
53
|
+
private readonly routeStyle;
|
|
54
|
+
private readonly fetchImpl;
|
|
55
|
+
/**
|
|
56
|
+
* @param baseUrl Memory server base URL (e.g. "http://127.0.0.1:8081")
|
|
57
|
+
* @param timeout Request timeout in seconds (default: 30)
|
|
58
|
+
* @param staticHeaders Pod-level identity headers set at construction time
|
|
59
|
+
* (e.g. `X-Agent-Engine-Agent-Id` from APP_ID). Defensively copied so caller
|
|
60
|
+
* mutations after construction have no effect.
|
|
61
|
+
* @param apiPrefix URL path prefix for memory endpoints. Defaults to
|
|
62
|
+
* "/api/v1/memory" (the OE proxy route, which strips `/memory/` before
|
|
63
|
+
* forwarding to the memory server). Use "/api/v1" when connecting
|
|
64
|
+
* directly to the memory server.
|
|
65
|
+
* @param dynamicHeaders Called on every request; result is merged over
|
|
66
|
+
* `staticHeaders`. Used by agent-engine-runner-shared to inject execution-scoped
|
|
67
|
+
* `X-Agent-Engine-Execution-Id` from AsyncLocalStorage.
|
|
68
|
+
* @param requestExtras Called on every request; the returned `RequestInit` is
|
|
69
|
+
* spread into `fetch` init before method/headers/signal. Used to inject a
|
|
70
|
+
* custom transport (e.g. an undici mTLS `dispatcher`) for app-bound calls.
|
|
71
|
+
* @param maxRetries Number of retries on transient 5xx (502/503/504) and
|
|
72
|
+
* network errors, with exponential backoff. Default 0 (no retry).
|
|
73
|
+
* @param routeStyle Memory route convention (see {@link MemoryRouteStyle}).
|
|
74
|
+
* Defaults to "native" — the memory server / OE proxy routes. Use "aliased"
|
|
75
|
+
* for the API Gateway's project-scoped routes (`/turns`, `/context`,
|
|
76
|
+
* single `/search` with a `type` body field).
|
|
77
|
+
*/
|
|
78
|
+
constructor(baseUrl: string, timeout?: number, staticHeaders?: Record<string, string>, apiPrefix?: string, dynamicHeaders?: () => Record<string, string>, requestExtras?: () => RequestInit | undefined, maxRetries?: number, routeStyle?: MemoryRouteStyle, fetchImpl?: typeof fetch);
|
|
79
|
+
/** Route + body for a ranked-search request, per the active route style. */
|
|
80
|
+
private searchRoute;
|
|
81
|
+
/** Path for the write-turn route, per the active route style. */
|
|
82
|
+
private get turnsPath();
|
|
83
|
+
/** Path for the build-context route, per the active route style. */
|
|
84
|
+
private get contextPath();
|
|
85
|
+
/**
|
|
86
|
+
* `fetch` with the configured transport extras and retry on transient 5xx /
|
|
87
|
+
* network errors. All memory-server routes are safe to retry: writes are
|
|
88
|
+
* idempotent (server upserts by label/session) and reads are pure.
|
|
89
|
+
*/
|
|
90
|
+
private fetchWithRetry;
|
|
91
|
+
private composeSignal;
|
|
92
|
+
private requestHeaders;
|
|
93
|
+
private buildUrl;
|
|
94
|
+
private buildInit;
|
|
95
|
+
private request;
|
|
96
|
+
/**
|
|
97
|
+
* Like `request`, but returns `null` on a 404 instead of throwing. Mirrors
|
|
98
|
+
* Python's `if resp.status_code == 404: return None` on the list/lookup GETs
|
|
99
|
+
* (`get_semantic`, `get_taxonomic`, `get_procedural`), so a not-found lookup
|
|
100
|
+
* resolves to `null` rather than surfacing as an HTTP error.
|
|
101
|
+
*/
|
|
102
|
+
private requestOrNull;
|
|
103
|
+
writeTurn(params: {
|
|
104
|
+
sessionId?: string | null;
|
|
105
|
+
role: string;
|
|
106
|
+
orgId: string;
|
|
107
|
+
userId?: string | null;
|
|
108
|
+
projectId: string;
|
|
109
|
+
content?: string | null;
|
|
110
|
+
tokens?: number | null;
|
|
111
|
+
stopReason?: string | null;
|
|
112
|
+
modelName?: string | null;
|
|
113
|
+
toolCalls?: Array<Record<string, unknown>> | null;
|
|
114
|
+
toolCallId?: string | null;
|
|
115
|
+
toolName?: string | null;
|
|
116
|
+
isError?: boolean;
|
|
117
|
+
idempotencyKey?: string | null;
|
|
118
|
+
signal?: AbortSignal;
|
|
119
|
+
}): Promise<WriteTurnResult>;
|
|
120
|
+
/**
|
|
121
|
+
* Build unified memory context.
|
|
122
|
+
* Omitted `enabledSources` defaults to episodic and semantic; include
|
|
123
|
+
* "stm" for recent turns.
|
|
124
|
+
*/
|
|
125
|
+
buildContext(params: {
|
|
126
|
+
query: string;
|
|
127
|
+
sessionId?: string | null;
|
|
128
|
+
orgId: string;
|
|
129
|
+
userId?: string | null;
|
|
130
|
+
projectId: string;
|
|
131
|
+
visibility?: string | null;
|
|
132
|
+
metadataFilter?: Record<string, unknown> | null;
|
|
133
|
+
enabledSources?: string[] | null;
|
|
134
|
+
formatStyle?: string | null;
|
|
135
|
+
topK?: number;
|
|
136
|
+
/**
|
|
137
|
+
* Optional gross context-construction budget, serialized as `max_tokens`
|
|
138
|
+
* only when set. After retrieval and ranking, the server subtracts a
|
|
139
|
+
* 500-token formatting reserve, then greedily selects whole memory chunks
|
|
140
|
+
* that fit in the remainder. Positive values at or below 500 leave no
|
|
141
|
+
* budget for memories. Values above 500 can still yield empty
|
|
142
|
+
* context when no chunk fits. Non-positive, non-integer, and non-finite
|
|
143
|
+
* values raise before the request is sent.
|
|
144
|
+
*/
|
|
145
|
+
maxTokens?: number;
|
|
146
|
+
signal?: AbortSignal;
|
|
147
|
+
}): Promise<ContextResponse>;
|
|
148
|
+
createSemantic(params: {
|
|
149
|
+
label: string;
|
|
150
|
+
text: string;
|
|
151
|
+
orgId: string;
|
|
152
|
+
userId: string;
|
|
153
|
+
projectId: string;
|
|
154
|
+
source?: string;
|
|
155
|
+
visibility?: string;
|
|
156
|
+
agentId?: string | null;
|
|
157
|
+
embedding?: number[] | null;
|
|
158
|
+
metadata?: Record<string, unknown> | null;
|
|
159
|
+
upsert?: boolean;
|
|
160
|
+
signal?: AbortSignal;
|
|
161
|
+
}): Promise<CreateSemanticResult>;
|
|
162
|
+
fetchSemanticMemories(params: {
|
|
163
|
+
query: string;
|
|
164
|
+
orgId: string;
|
|
165
|
+
projectId: string;
|
|
166
|
+
userId?: string | null;
|
|
167
|
+
visibility?: string | null;
|
|
168
|
+
topK?: number;
|
|
169
|
+
signal?: AbortSignal;
|
|
170
|
+
}): Promise<MemoryChunk[]>;
|
|
171
|
+
getSemantic(params: {
|
|
172
|
+
orgId: string;
|
|
173
|
+
projectId: string;
|
|
174
|
+
label?: string | null;
|
|
175
|
+
id?: string | null;
|
|
176
|
+
userId?: string | null;
|
|
177
|
+
visibility?: string | null;
|
|
178
|
+
signal?: AbortSignal;
|
|
179
|
+
}): Promise<unknown | null>;
|
|
180
|
+
updateSemantic(params: {
|
|
181
|
+
orgId: string;
|
|
182
|
+
projectId: string;
|
|
183
|
+
label: string;
|
|
184
|
+
text?: string | null;
|
|
185
|
+
source?: string | null;
|
|
186
|
+
visibility?: string | null;
|
|
187
|
+
signal?: AbortSignal;
|
|
188
|
+
}): Promise<unknown>;
|
|
189
|
+
createEpisodic(params: {
|
|
190
|
+
title: string;
|
|
191
|
+
content: string;
|
|
192
|
+
summaryText: string;
|
|
193
|
+
orgId: string;
|
|
194
|
+
userId: string;
|
|
195
|
+
sessionId: string;
|
|
196
|
+
projectId: string;
|
|
197
|
+
visibility?: string;
|
|
198
|
+
agentId?: string | null;
|
|
199
|
+
snapshotRefId?: string | null;
|
|
200
|
+
summaryType?: string | null;
|
|
201
|
+
sourceAgent?: string | null;
|
|
202
|
+
participants?: string[] | null;
|
|
203
|
+
tags?: string[] | null;
|
|
204
|
+
metadata?: Record<string, unknown> | null;
|
|
205
|
+
extractionSource?: string | null;
|
|
206
|
+
embedding?: number[] | null;
|
|
207
|
+
skipEmbedding?: boolean | null;
|
|
208
|
+
signal?: AbortSignal;
|
|
209
|
+
}): Promise<CreateEpisodicResult>;
|
|
210
|
+
fetchEpisodicMemories(params: {
|
|
211
|
+
query: string;
|
|
212
|
+
orgId: string;
|
|
213
|
+
projectId: string;
|
|
214
|
+
userId?: string | null;
|
|
215
|
+
visibility?: string | null;
|
|
216
|
+
sessionId?: string | null;
|
|
217
|
+
topK?: number;
|
|
218
|
+
signal?: AbortSignal;
|
|
219
|
+
}): Promise<MemoryChunk[]>;
|
|
220
|
+
listEpisodic(params: {
|
|
221
|
+
orgId: string;
|
|
222
|
+
projectId: string;
|
|
223
|
+
userId?: string | null;
|
|
224
|
+
sessionId?: string | null;
|
|
225
|
+
visibility?: string | null;
|
|
226
|
+
limit?: number;
|
|
227
|
+
signal?: AbortSignal;
|
|
228
|
+
}): Promise<unknown[]>;
|
|
229
|
+
createTaxonomic(params: {
|
|
230
|
+
domain: string;
|
|
231
|
+
term: string;
|
|
232
|
+
definition: string;
|
|
233
|
+
orgId: string;
|
|
234
|
+
userId: string;
|
|
235
|
+
projectId: string;
|
|
236
|
+
relatedTerms?: string[] | null;
|
|
237
|
+
queryExpansion?: boolean;
|
|
238
|
+
visibility?: string;
|
|
239
|
+
signal?: AbortSignal;
|
|
240
|
+
}): Promise<CreateTaxonomicResult>;
|
|
241
|
+
fetchTaxonomicMemories(params: {
|
|
242
|
+
query: string;
|
|
243
|
+
orgId: string;
|
|
244
|
+
projectId: string;
|
|
245
|
+
domain?: string | null;
|
|
246
|
+
visibility?: string | null;
|
|
247
|
+
topK?: number;
|
|
248
|
+
userId?: string | null;
|
|
249
|
+
signal?: AbortSignal;
|
|
250
|
+
}): Promise<MemoryChunk[]>;
|
|
251
|
+
getTaxonomic(params: {
|
|
252
|
+
orgId: string;
|
|
253
|
+
projectId: string;
|
|
254
|
+
domain?: string | null;
|
|
255
|
+
term?: string | null;
|
|
256
|
+
userId?: string | null;
|
|
257
|
+
visibility?: string | null;
|
|
258
|
+
signal?: AbortSignal;
|
|
259
|
+
}): Promise<unknown | null>;
|
|
260
|
+
getDistinctDomains(params: {
|
|
261
|
+
orgId: string;
|
|
262
|
+
projectId: string;
|
|
263
|
+
visibility?: string | null;
|
|
264
|
+
signal?: AbortSignal;
|
|
265
|
+
}): Promise<string[]>;
|
|
266
|
+
createProcedural(params: {
|
|
267
|
+
procedure: string;
|
|
268
|
+
description: string;
|
|
269
|
+
content: string;
|
|
270
|
+
orgId: string;
|
|
271
|
+
userId: string;
|
|
272
|
+
projectId: string;
|
|
273
|
+
steps?: Array<Record<string, unknown>> | null;
|
|
274
|
+
resources?: Array<Record<string, unknown>> | null;
|
|
275
|
+
allowedTools?: string[] | null;
|
|
276
|
+
compatibility?: string | null;
|
|
277
|
+
license?: string | null;
|
|
278
|
+
triggerConditions?: string[] | null;
|
|
279
|
+
tags?: string[] | null;
|
|
280
|
+
visibility?: string;
|
|
281
|
+
agentId?: string | null;
|
|
282
|
+
extractionSource?: string | null;
|
|
283
|
+
sourceFormat?: string | null;
|
|
284
|
+
sourcePath?: string | null;
|
|
285
|
+
signal?: AbortSignal;
|
|
286
|
+
}): Promise<CreateProceduralResult>;
|
|
287
|
+
getProcedural(params: {
|
|
288
|
+
orgId: string;
|
|
289
|
+
projectId: string;
|
|
290
|
+
id?: string | null;
|
|
291
|
+
procedure?: string | null;
|
|
292
|
+
userId?: string | null;
|
|
293
|
+
visibility?: string | null;
|
|
294
|
+
includeDeleted?: boolean;
|
|
295
|
+
signal?: AbortSignal;
|
|
296
|
+
}): Promise<unknown | null>;
|
|
297
|
+
updateProcedural(params: {
|
|
298
|
+
orgId: string;
|
|
299
|
+
projectId: string;
|
|
300
|
+
id?: string | null;
|
|
301
|
+
procedure?: string | null;
|
|
302
|
+
description?: string | null;
|
|
303
|
+
content?: string | null;
|
|
304
|
+
steps?: Array<Record<string, unknown>> | null;
|
|
305
|
+
resources?: Array<Record<string, unknown>> | null;
|
|
306
|
+
allowedTools?: string[] | null;
|
|
307
|
+
triggerConditions?: string[] | null;
|
|
308
|
+
tags?: string[] | null;
|
|
309
|
+
visibility?: string | null;
|
|
310
|
+
signal?: AbortSignal;
|
|
311
|
+
}): Promise<unknown>;
|
|
312
|
+
deleteProcedural(params: {
|
|
313
|
+
orgId: string;
|
|
314
|
+
projectId: string;
|
|
315
|
+
id?: string | null;
|
|
316
|
+
procedure?: string | null;
|
|
317
|
+
soft?: boolean;
|
|
318
|
+
signal?: AbortSignal;
|
|
319
|
+
}): Promise<DeleteResult>;
|
|
320
|
+
discoverProcedures(params: {
|
|
321
|
+
query: string;
|
|
322
|
+
orgId: string;
|
|
323
|
+
projectId: string;
|
|
324
|
+
userId?: string | null;
|
|
325
|
+
visibility?: string | null;
|
|
326
|
+
tags?: string[] | null;
|
|
327
|
+
topK?: number;
|
|
328
|
+
similarityThreshold?: number;
|
|
329
|
+
metadataFilter?: Record<string, unknown> | null;
|
|
330
|
+
signal?: AbortSignal;
|
|
331
|
+
}): Promise<Array<Record<string, unknown>>>;
|
|
332
|
+
fetchProceduralMemories(params: {
|
|
333
|
+
query: string;
|
|
334
|
+
orgId: string;
|
|
335
|
+
projectId: string;
|
|
336
|
+
userId?: string | null;
|
|
337
|
+
visibility?: string | null;
|
|
338
|
+
tags?: string[] | null;
|
|
339
|
+
topK?: number;
|
|
340
|
+
signal?: AbortSignal;
|
|
341
|
+
}): Promise<MemoryChunk[]>;
|
|
342
|
+
createCustom(params: {
|
|
343
|
+
memoryType: string;
|
|
344
|
+
content: string;
|
|
345
|
+
tags?: Record<string, unknown> | null;
|
|
346
|
+
contextualMetadata?: Record<string, unknown> | null;
|
|
347
|
+
signal?: AbortSignal;
|
|
348
|
+
}): Promise<CustomMemorySaveResult>;
|
|
349
|
+
retrieveCustom(params: {
|
|
350
|
+
memoryType: string;
|
|
351
|
+
query: string;
|
|
352
|
+
tags?: Record<string, unknown> | null;
|
|
353
|
+
topK?: number;
|
|
354
|
+
signal?: AbortSignal;
|
|
355
|
+
}): Promise<CustomMemoryRetrieveResult>;
|
|
356
|
+
bootstrap(): void;
|
|
357
|
+
}
|
|
358
|
+
//# sourceMappingURL=memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/clients/memory.ts"],"names":[],"mappings":"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"}
|