@n8n/agents 0.6.0 → 0.7.1
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/dist/build.tsbuildinfo +1 -1
- package/dist/index.d.ts +12 -8
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/integrations/langsmith.d.ts +2 -0
- package/dist/integrations/langsmith.js +117 -2
- package/dist/integrations/langsmith.js.map +1 -1
- package/dist/runtime/agent-runtime.d.ts +6 -7
- package/dist/runtime/agent-runtime.js +390 -204
- package/dist/runtime/agent-runtime.js.map +1 -1
- package/dist/runtime/event-bus.d.ts +1 -0
- package/dist/runtime/event-bus.js +3 -0
- package/dist/runtime/event-bus.js.map +1 -1
- package/dist/runtime/json-value.d.ts +2 -0
- package/dist/runtime/json-value.js +43 -0
- package/dist/runtime/json-value.js.map +1 -0
- package/dist/runtime/memory-store.d.ts +40 -2
- package/dist/runtime/memory-store.js +138 -3
- package/dist/runtime/memory-store.js.map +1 -1
- package/dist/runtime/message-list.d.ts +5 -0
- package/dist/runtime/message-list.js +47 -0
- package/dist/runtime/message-list.js.map +1 -1
- package/dist/runtime/messages.d.ts +0 -2
- package/dist/runtime/messages.js +127 -101
- package/dist/runtime/messages.js.map +1 -1
- package/dist/runtime/model-factory.js +117 -34
- package/dist/runtime/model-factory.js.map +1 -1
- package/dist/runtime/provider-credentials.d.ts +167 -0
- package/dist/runtime/provider-credentials.js +34 -0
- package/dist/runtime/provider-credentials.js.map +1 -0
- package/dist/runtime/runtime-helpers.d.ts +3 -4
- package/dist/runtime/runtime-helpers.js +6 -32
- package/dist/runtime/runtime-helpers.js.map +1 -1
- package/dist/runtime/stream.js +25 -43
- package/dist/runtime/stream.js.map +1 -1
- package/dist/runtime/strip-orphaned-tool-messages.js +1 -25
- package/dist/runtime/strip-orphaned-tool-messages.js.map +1 -1
- package/dist/runtime/title-generation.d.ts +12 -3
- package/dist/runtime/title-generation.js +72 -3
- package/dist/runtime/title-generation.js.map +1 -1
- package/dist/runtime/tool-adapter.d.ts +1 -1
- package/dist/runtime/tool-adapter.js +3 -2
- package/dist/runtime/tool-adapter.js.map +1 -1
- package/dist/runtime/working-memory.d.ts +1 -1
- package/dist/runtime/working-memory.js +1 -1
- package/dist/runtime/working-memory.js.map +1 -1
- package/dist/sdk/agent.d.ts +24 -23
- package/dist/sdk/agent.js +50 -324
- package/dist/sdk/agent.js.map +1 -1
- package/dist/sdk/eval.d.ts +0 -3
- package/dist/sdk/eval.js +4 -9
- package/dist/sdk/eval.js.map +1 -1
- package/dist/sdk/provider-capabilities.js +4 -2
- package/dist/sdk/provider-capabilities.js.map +1 -1
- package/dist/sdk/provider-tools.d.ts +17 -2
- package/dist/sdk/provider-tools.js +19 -0
- package/dist/sdk/provider-tools.js.map +1 -1
- package/dist/sdk/telemetry.d.ts +2 -0
- package/dist/sdk/telemetry.js +6 -0
- package/dist/sdk/telemetry.js.map +1 -1
- package/dist/sdk/tool.d.ts +17 -10
- package/dist/sdk/tool.js +34 -0
- package/dist/sdk/tool.js.map +1 -1
- package/dist/sdk/verify.js +1 -4
- package/dist/sdk/verify.js.map +1 -1
- package/dist/storage/base-memory.d.ts +64 -0
- package/dist/storage/base-memory.js +54 -0
- package/dist/storage/base-memory.js.map +1 -0
- package/dist/storage/postgres-memory.d.ts +33 -16
- package/dist/storage/postgres-memory.js +46 -25
- package/dist/storage/postgres-memory.js.map +1 -1
- package/dist/storage/sqlite-memory.d.ts +16 -6
- package/dist/storage/sqlite-memory.js +16 -10
- package/dist/storage/sqlite-memory.js.map +1 -1
- package/dist/types/index.d.ts +4 -2
- package/dist/types/index.js +3 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/runtime/event.d.ts +3 -9
- package/dist/types/runtime/event.js.map +1 -1
- package/dist/types/sdk/agent-builder.d.ts +0 -3
- package/dist/types/sdk/agent.d.ts +64 -27
- package/dist/types/sdk/credential-provider.d.ts +2 -3
- package/dist/types/sdk/memory.d.ts +23 -2
- package/dist/types/sdk/message.d.ts +11 -10
- package/dist/types/sdk/observation.d.ts +100 -0
- package/dist/types/sdk/observation.js +5 -0
- package/dist/types/sdk/observation.js.map +1 -0
- package/dist/types/sdk/tool-descriptor.d.ts +13 -0
- package/dist/types/sdk/{schema.js → tool-descriptor.js} +1 -1
- package/dist/types/sdk/tool-descriptor.js.map +1 -0
- package/dist/types/sdk/tool.d.ts +8 -3
- package/dist/types/telemetry.d.ts +1 -0
- package/dist/utils/parse.d.ts +10 -0
- package/dist/utils/parse.js +26 -0
- package/dist/utils/parse.js.map +1 -0
- package/dist/utils/zod.d.ts +1 -1
- package/dist/utils/zod.js.map +1 -1
- package/dist/workspace/tools/batch-str-replace-file.d.ts +3 -0
- package/dist/workspace/tools/batch-str-replace-file.js +67 -0
- package/dist/workspace/tools/batch-str-replace-file.js.map +1 -0
- package/dist/workspace/tools/str-replace-file.d.ts +3 -0
- package/dist/workspace/tools/str-replace-file.js +51 -0
- package/dist/workspace/tools/str-replace-file.js.map +1 -0
- package/dist/workspace/tools/workspace-tools.js +4 -0
- package/dist/workspace/tools/workspace-tools.js.map +1 -1
- package/package.json +17 -8
- package/dist/codegen/generate-agent-code.d.ts +0 -2
- package/dist/codegen/generate-agent-code.js +0 -197
- package/dist/codegen/generate-agent-code.js.map +0 -1
- package/dist/sdk/from-schema.d.ts +0 -15
- package/dist/sdk/from-schema.js +0 -218
- package/dist/sdk/from-schema.js.map +0 -1
- package/dist/types/sdk/schema.d.ts +0 -99
- package/dist/types/sdk/schema.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-runtime.js","sourceRoot":"","sources":["../../src/runtime/agent-runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-runtime.js","sourceRoot":"","sources":["../../src/runtime/agent-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ export declare class AgentEventBus {
|
|
|
5
5
|
private controller;
|
|
6
6
|
private externalCleanup?;
|
|
7
7
|
on(event: AgentEvent, handler: AgentEventHandler): void;
|
|
8
|
+
off(event: AgentEvent, handler: AgentEventHandler): void;
|
|
8
9
|
emit(data: AgentEventData): void;
|
|
9
10
|
abort(): void;
|
|
10
11
|
resetAbort(externalSignal?: AbortSignal): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../src/runtime/event-bus.ts"],"names":[],"mappings":";;;AAAA,kDAAoD;
|
|
1
|
+
{"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../src/runtime/event-bus.ts"],"names":[],"mappings":";;;AAAA,kDAAoD;AA+F3C,2FA/FA,kBAAU,OA+FA;AA7EnB,MAAa,aAAa;IAA1B;QACS,aAAQ,GAAG,IAAI,GAAG,EAAsC,CAAC;QAEzD,eAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IAwE5C,CAAC;IApEA,EAAE,CAAC,KAAiB,EAAE,OAA0B;QAC/C,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC/B,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC;IAED,GAAG,CAAC,KAAiB,EAAE,OAA0B;QAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC,IAAoB;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,KAAK,MAAM,OAAO,IAAI,GAAG,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;IACF,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAWD,UAAU,CAAC,cAA4B;QACtC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QAExC,IAAI,cAAc,EAAE,CAAC;YACpB,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACP,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACnE,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClE,IAAI,CAAC,eAAe,GAAG,GAAG,EAAE,CAAC,cAAc,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACnF,CAAC;QACF,CAAC;IACF,CAAC;IAGD,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;IACvC,CAAC;IAOD,OAAO;QACN,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IAClC,CAAC;CACD;AA3ED,sCA2EC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toJsonValue = toJsonValue;
|
|
4
|
+
function toJsonValue(value, seen = new WeakSet()) {
|
|
5
|
+
if (value === null || typeof value === 'string' || typeof value === 'boolean') {
|
|
6
|
+
return value;
|
|
7
|
+
}
|
|
8
|
+
if (typeof value === 'number') {
|
|
9
|
+
return Number.isFinite(value) ? value : null;
|
|
10
|
+
}
|
|
11
|
+
if (value === undefined || typeof value === 'function' || typeof value === 'symbol') {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
if (typeof value === 'bigint') {
|
|
15
|
+
return value.toString();
|
|
16
|
+
}
|
|
17
|
+
if (value instanceof Date) {
|
|
18
|
+
return value.toISOString();
|
|
19
|
+
}
|
|
20
|
+
if (value instanceof Error) {
|
|
21
|
+
return {
|
|
22
|
+
name: value.name,
|
|
23
|
+
message: value.message,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (Array.isArray(value)) {
|
|
27
|
+
return value.map((entry) => toJsonValue(entry, seen));
|
|
28
|
+
}
|
|
29
|
+
if (typeof value === 'object') {
|
|
30
|
+
if (seen.has(value)) {
|
|
31
|
+
return '[Circular]';
|
|
32
|
+
}
|
|
33
|
+
seen.add(value);
|
|
34
|
+
const result = {};
|
|
35
|
+
for (const [key, entryValue] of Object.entries(value)) {
|
|
36
|
+
result[key] = toJsonValue(entryValue, seen);
|
|
37
|
+
}
|
|
38
|
+
seen.delete(value);
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=json-value.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-value.js","sourceRoot":"","sources":["../../src/runtime/json-value.ts"],"names":[],"mappings":";;AAEA,kCA+CC;AA/CD,SAAgB,WAAW,CAAC,KAAc,EAAE,OAAO,IAAI,OAAO,EAAU;IACvE,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/E,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9C,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,UAAU,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrF,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC5B,OAAO;YACN,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;SACtB,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,YAAY,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,MAAM,GAAe,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvD,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"}
|
|
@@ -1,23 +1,34 @@
|
|
|
1
|
-
import type { BuiltMemory, Thread } from '../types';
|
|
1
|
+
import type { BuiltMemory, MemoryDescriptor, Thread } from '../types';
|
|
2
2
|
import type { AgentDbMessage } from '../types/sdk/message';
|
|
3
|
-
|
|
3
|
+
import type { BuiltObservationStore, NewObservation, Observation, ObservationCursor, ObservationLockHandle, ScopeKind } from '../types/sdk/observation';
|
|
4
|
+
export declare class InMemoryMemory implements BuiltMemory, BuiltObservationStore {
|
|
4
5
|
private threads;
|
|
5
6
|
private messagesByThread;
|
|
6
7
|
private workingMemoryByKey;
|
|
8
|
+
private observationsByScope;
|
|
9
|
+
private cursorsByScope;
|
|
10
|
+
private locksByScope;
|
|
7
11
|
getWorkingMemory(params: {
|
|
8
12
|
threadId: string;
|
|
9
13
|
resourceId?: string;
|
|
14
|
+
scope: 'resource' | 'thread';
|
|
10
15
|
}): Promise<string | null>;
|
|
11
16
|
saveWorkingMemory(params: {
|
|
12
17
|
threadId: string;
|
|
13
18
|
resourceId?: string;
|
|
19
|
+
scope: 'resource' | 'thread';
|
|
14
20
|
}, content: string): Promise<void>;
|
|
21
|
+
private workingMemoryKey;
|
|
15
22
|
getThread(threadId: string): Promise<Thread | null>;
|
|
16
23
|
saveThread(thread: Omit<Thread, 'createdAt' | 'updatedAt'>): Promise<Thread>;
|
|
17
24
|
deleteThread(threadId: string): Promise<void>;
|
|
18
25
|
getMessages(threadId: string, opts?: {
|
|
19
26
|
limit?: number;
|
|
20
27
|
before?: Date;
|
|
28
|
+
since?: {
|
|
29
|
+
sinceCreatedAt: Date;
|
|
30
|
+
sinceMessageId: string;
|
|
31
|
+
};
|
|
21
32
|
}): Promise<AgentDbMessage[]>;
|
|
22
33
|
saveMessages(args: {
|
|
23
34
|
threadId: string;
|
|
@@ -25,5 +36,32 @@ export declare class InMemoryMemory implements BuiltMemory {
|
|
|
25
36
|
messages: AgentDbMessage[];
|
|
26
37
|
}): Promise<void>;
|
|
27
38
|
deleteMessages(messageIds: string[]): Promise<void>;
|
|
39
|
+
describe(): MemoryDescriptor;
|
|
40
|
+
appendObservations(rows: NewObservation[]): Promise<Observation[]>;
|
|
41
|
+
getObservations(opts: {
|
|
42
|
+
scopeKind: ScopeKind;
|
|
43
|
+
scopeId: string;
|
|
44
|
+
since?: {
|
|
45
|
+
sinceCreatedAt: Date;
|
|
46
|
+
sinceObservationId: string;
|
|
47
|
+
};
|
|
48
|
+
kindIs?: string;
|
|
49
|
+
limit?: number;
|
|
50
|
+
schemaVersionAtMost?: number;
|
|
51
|
+
}): Promise<Observation[]>;
|
|
52
|
+
getMessagesForScope(scopeKind: ScopeKind, scopeId: string, opts?: {
|
|
53
|
+
since?: {
|
|
54
|
+
sinceCreatedAt: Date;
|
|
55
|
+
sinceMessageId: string;
|
|
56
|
+
};
|
|
57
|
+
}): Promise<AgentDbMessage[]>;
|
|
58
|
+
deleteObservations(ids: string[]): Promise<void>;
|
|
59
|
+
getCursor(scopeKind: ScopeKind, scopeId: string): Promise<ObservationCursor | null>;
|
|
60
|
+
setCursor(cursor: ObservationCursor): Promise<void>;
|
|
61
|
+
acquireObservationLock(scopeKind: ScopeKind, scopeId: string, opts: {
|
|
62
|
+
ttlMs: number;
|
|
63
|
+
holderId: string;
|
|
64
|
+
}): Promise<ObservationLockHandle | null>;
|
|
65
|
+
releaseObservationLock(handle: ObservationLockHandle): Promise<void>;
|
|
28
66
|
}
|
|
29
67
|
export declare function saveMessagesToThread(memory: BuiltMemory, threadId: string, resourceId: string, messages: AgentDbMessage[]): Promise<void>;
|
|
@@ -2,17 +2,40 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.InMemoryMemory = void 0;
|
|
4
4
|
exports.saveMessagesToThread = saveMessagesToThread;
|
|
5
|
+
function scopeKey(scopeKind, scopeId) {
|
|
6
|
+
return `${scopeKind}:${scopeId}`;
|
|
7
|
+
}
|
|
8
|
+
function cloneCursor(cursor) {
|
|
9
|
+
return {
|
|
10
|
+
...cursor,
|
|
11
|
+
lastObservedAt: new Date(cursor.lastObservedAt),
|
|
12
|
+
updatedAt: new Date(cursor.updatedAt),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function compareKeyset(a, b) {
|
|
16
|
+
const t = a.createdAt.getTime() - b.createdAt.getTime();
|
|
17
|
+
if (t !== 0)
|
|
18
|
+
return t;
|
|
19
|
+
return a.id < b.id ? -1 : a.id > b.id ? 1 : 0;
|
|
20
|
+
}
|
|
5
21
|
class InMemoryMemory {
|
|
6
22
|
constructor() {
|
|
7
23
|
this.threads = new Map();
|
|
8
24
|
this.messagesByThread = new Map();
|
|
9
25
|
this.workingMemoryByKey = new Map();
|
|
26
|
+
this.observationsByScope = new Map();
|
|
27
|
+
this.cursorsByScope = new Map();
|
|
28
|
+
this.locksByScope = new Map();
|
|
10
29
|
}
|
|
11
30
|
async getWorkingMemory(params) {
|
|
12
|
-
return this.workingMemoryByKey.get(
|
|
31
|
+
return this.workingMemoryByKey.get(this.workingMemoryKey(params)) ?? null;
|
|
13
32
|
}
|
|
14
33
|
async saveWorkingMemory(params, content) {
|
|
15
|
-
this.workingMemoryByKey.set(
|
|
34
|
+
this.workingMemoryByKey.set(this.workingMemoryKey(params), content);
|
|
35
|
+
}
|
|
36
|
+
workingMemoryKey(params) {
|
|
37
|
+
const id = params.scope === 'thread' ? params.threadId : (params.resourceId ?? params.threadId);
|
|
38
|
+
return `${params.scope}:${id}`;
|
|
16
39
|
}
|
|
17
40
|
async getThread(threadId) {
|
|
18
41
|
return this.threads.get(threadId) ?? null;
|
|
@@ -33,6 +56,10 @@ class InMemoryMemory {
|
|
|
33
56
|
async deleteThread(threadId) {
|
|
34
57
|
this.threads.delete(threadId);
|
|
35
58
|
this.messagesByThread.delete(threadId);
|
|
59
|
+
const key = scopeKey('thread', threadId);
|
|
60
|
+
this.observationsByScope.delete(key);
|
|
61
|
+
this.cursorsByScope.delete(key);
|
|
62
|
+
this.locksByScope.delete(key);
|
|
36
63
|
}
|
|
37
64
|
async getMessages(threadId, opts) {
|
|
38
65
|
let stored = this.messagesByThread.get(threadId) ?? [];
|
|
@@ -40,14 +67,33 @@ class InMemoryMemory {
|
|
|
40
67
|
const cutoff = opts.before.getTime();
|
|
41
68
|
stored = stored.filter((s) => s.createdAt.getTime() < cutoff);
|
|
42
69
|
}
|
|
70
|
+
if (opts?.since) {
|
|
71
|
+
const { sinceCreatedAt, sinceMessageId } = opts.since;
|
|
72
|
+
stored = stored.filter((s) => compareKeyset({ createdAt: s.createdAt, id: s.message.id }, { createdAt: sinceCreatedAt, id: sinceMessageId }) > 0);
|
|
73
|
+
}
|
|
74
|
+
stored = [...stored].sort((a, b) => compareKeyset({ createdAt: a.createdAt, id: a.message.id }, { createdAt: b.createdAt, id: b.message.id }));
|
|
43
75
|
if (opts?.limit)
|
|
44
76
|
stored = stored.slice(-opts.limit);
|
|
45
77
|
return stored.map((s) => ({ ...s.message, createdAt: s.createdAt }));
|
|
46
78
|
}
|
|
47
79
|
async saveMessages(args) {
|
|
48
80
|
const existing = this.messagesByThread.get(args.threadId) ?? [];
|
|
81
|
+
const byId = new Map(existing.map((s, i) => [s.message.id, i]));
|
|
82
|
+
const resourceId = args.resourceId ?? '';
|
|
49
83
|
for (const msg of args.messages) {
|
|
50
|
-
|
|
84
|
+
const idx = byId.get(msg.id);
|
|
85
|
+
if (idx !== undefined) {
|
|
86
|
+
existing[idx] = { message: msg, createdAt: msg.createdAt, resourceId };
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
const entry = {
|
|
90
|
+
message: msg,
|
|
91
|
+
createdAt: msg.createdAt,
|
|
92
|
+
resourceId,
|
|
93
|
+
};
|
|
94
|
+
byId.set(msg.id, existing.length);
|
|
95
|
+
existing.push(entry);
|
|
96
|
+
}
|
|
51
97
|
}
|
|
52
98
|
this.messagesByThread.set(args.threadId, existing);
|
|
53
99
|
}
|
|
@@ -57,6 +103,95 @@ class InMemoryMemory {
|
|
|
57
103
|
this.messagesByThread.set(threadId, messages.filter((s) => !idSet.has(s.message.id)));
|
|
58
104
|
}
|
|
59
105
|
}
|
|
106
|
+
describe() {
|
|
107
|
+
return { name: 'memory', constructorName: this.constructor.name, connectionParams: {} };
|
|
108
|
+
}
|
|
109
|
+
async appendObservations(rows) {
|
|
110
|
+
const persisted = [];
|
|
111
|
+
for (const row of rows) {
|
|
112
|
+
const key = scopeKey(row.scopeKind, row.scopeId);
|
|
113
|
+
const bucket = this.observationsByScope.get(key) ?? [];
|
|
114
|
+
const obs = {
|
|
115
|
+
...row,
|
|
116
|
+
id: crypto.randomUUID(),
|
|
117
|
+
};
|
|
118
|
+
bucket.push(obs);
|
|
119
|
+
this.observationsByScope.set(key, bucket);
|
|
120
|
+
persisted.push(obs);
|
|
121
|
+
}
|
|
122
|
+
return persisted;
|
|
123
|
+
}
|
|
124
|
+
async getObservations(opts) {
|
|
125
|
+
const bucket = this.observationsByScope.get(scopeKey(opts.scopeKind, opts.scopeId)) ?? [];
|
|
126
|
+
let rows = [...bucket].sort((a, b) => compareKeyset({ createdAt: a.createdAt, id: a.id }, { createdAt: b.createdAt, id: b.id }));
|
|
127
|
+
if (opts.since) {
|
|
128
|
+
const { sinceCreatedAt, sinceObservationId } = opts.since;
|
|
129
|
+
rows = rows.filter((r) => compareKeyset({ createdAt: r.createdAt, id: r.id }, { createdAt: sinceCreatedAt, id: sinceObservationId }) > 0);
|
|
130
|
+
}
|
|
131
|
+
if (opts.kindIs !== undefined) {
|
|
132
|
+
const kind = opts.kindIs;
|
|
133
|
+
rows = rows.filter((r) => r.kind === kind);
|
|
134
|
+
}
|
|
135
|
+
if (opts.schemaVersionAtMost !== undefined) {
|
|
136
|
+
const max = opts.schemaVersionAtMost;
|
|
137
|
+
rows = rows.filter((r) => r.schemaVersion <= max);
|
|
138
|
+
}
|
|
139
|
+
if (opts.limit !== undefined) {
|
|
140
|
+
rows = rows.slice(0, opts.limit);
|
|
141
|
+
}
|
|
142
|
+
return rows.map((r) => ({ ...r }));
|
|
143
|
+
}
|
|
144
|
+
async getMessagesForScope(scopeKind, scopeId, opts) {
|
|
145
|
+
if (scopeKind !== 'thread') {
|
|
146
|
+
throw new Error(`getMessagesForScope: scopeKind='${scopeKind}' is not supported in v1`);
|
|
147
|
+
}
|
|
148
|
+
const candidates = this.messagesByThread.get(scopeId) ?? [];
|
|
149
|
+
let rows = [...candidates].sort((a, b) => compareKeyset({ createdAt: a.createdAt, id: a.message.id }, { createdAt: b.createdAt, id: b.message.id }));
|
|
150
|
+
if (opts?.since) {
|
|
151
|
+
const { sinceCreatedAt, sinceMessageId } = opts.since;
|
|
152
|
+
rows = rows.filter((s) => compareKeyset({ createdAt: s.createdAt, id: s.message.id }, { createdAt: sinceCreatedAt, id: sinceMessageId }) > 0);
|
|
153
|
+
}
|
|
154
|
+
return rows.map((s) => ({ ...s.message, createdAt: s.createdAt }));
|
|
155
|
+
}
|
|
156
|
+
async deleteObservations(ids) {
|
|
157
|
+
if (ids.length === 0)
|
|
158
|
+
return;
|
|
159
|
+
const idSet = new Set(ids);
|
|
160
|
+
for (const [key, bucket] of this.observationsByScope.entries()) {
|
|
161
|
+
this.observationsByScope.set(key, bucket.filter((row) => !idSet.has(row.id)));
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
async getCursor(scopeKind, scopeId) {
|
|
165
|
+
const cursor = this.cursorsByScope.get(scopeKey(scopeKind, scopeId));
|
|
166
|
+
return cursor ? cloneCursor(cursor) : null;
|
|
167
|
+
}
|
|
168
|
+
async setCursor(cursor) {
|
|
169
|
+
const key = scopeKey(cursor.scopeKind, cursor.scopeId);
|
|
170
|
+
this.cursorsByScope.set(key, cloneCursor(cursor));
|
|
171
|
+
}
|
|
172
|
+
async acquireObservationLock(scopeKind, scopeId, opts) {
|
|
173
|
+
const key = scopeKey(scopeKind, scopeId);
|
|
174
|
+
const existing = this.locksByScope.get(key);
|
|
175
|
+
const now = Date.now();
|
|
176
|
+
if (existing && existing.holderId !== opts.holderId && existing.heldUntil.getTime() > now) {
|
|
177
|
+
return null;
|
|
178
|
+
}
|
|
179
|
+
const handle = {
|
|
180
|
+
scopeKind,
|
|
181
|
+
scopeId,
|
|
182
|
+
holderId: opts.holderId,
|
|
183
|
+
heldUntil: new Date(now + opts.ttlMs),
|
|
184
|
+
};
|
|
185
|
+
this.locksByScope.set(key, handle);
|
|
186
|
+
return { ...handle };
|
|
187
|
+
}
|
|
188
|
+
async releaseObservationLock(handle) {
|
|
189
|
+
const key = scopeKey(handle.scopeKind, handle.scopeId);
|
|
190
|
+
const current = this.locksByScope.get(key);
|
|
191
|
+
if (current && current.holderId === handle.holderId) {
|
|
192
|
+
this.locksByScope.delete(key);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
60
195
|
}
|
|
61
196
|
exports.InMemoryMemory = InMemoryMemory;
|
|
62
197
|
async function saveMessagesToThread(memory, threadId, resourceId, messages) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-store.js","sourceRoot":"","sources":["../../src/runtime/memory-store.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"memory-store.js","sourceRoot":"","sources":["../../src/runtime/memory-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import type { ProviderOptions } from '@ai-sdk/provider-utils';
|
|
|
2
2
|
import type { ModelMessage } from 'ai';
|
|
3
3
|
import type { SerializedMessageList } from '../types/runtime/message-list';
|
|
4
4
|
import type { AgentDbMessage, AgentMessage } from '../types/sdk/message';
|
|
5
|
+
import type { JSONValue } from '../types/utils/json';
|
|
5
6
|
export type { SerializedMessageList };
|
|
6
7
|
export interface WorkingMemoryContext {
|
|
7
8
|
template: string;
|
|
@@ -22,6 +23,10 @@ export declare class AgentMessageList {
|
|
|
22
23
|
addHistory(messages: AgentMessage[] | AgentDbMessage[]): void;
|
|
23
24
|
addInput(messages: AgentMessage[] | AgentDbMessage[]): void;
|
|
24
25
|
addResponse(messages: AgentMessage[] | AgentDbMessage[]): void;
|
|
26
|
+
setToolCallResult(toolCallId: string, output: JSONValue): AgentDbMessage | undefined;
|
|
27
|
+
setToolCallError(toolCallId: string, error: unknown): AgentDbMessage | undefined;
|
|
28
|
+
private findToolCallHost;
|
|
29
|
+
private findToolCallBlock;
|
|
25
30
|
forLlm(baseInstructions: string, instructionProviderOptions?: ProviderOptions): ModelMessage[];
|
|
26
31
|
turnDelta(): AgentDbMessage[];
|
|
27
32
|
responseDelta(): AgentDbMessage[];
|