@o-zakstam/voltagent-convex 1.1.2 → 1.1.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/dist/client/{index.d.cts → defineVoltAgentAPI.d.ts} +59 -92
- package/dist/client/defineVoltAgentAPI.d.ts.map +1 -0
- package/dist/client/defineVoltAgentAPI.js +318 -0
- package/dist/client/defineVoltAgentAPI.js.map +1 -0
- package/dist/client/index.d.ts +6 -221
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +8 -285
- package/dist/client/index.js.map +1 -1
- package/dist/client/types.d.ts +13 -0
- package/dist/client/types.d.ts.map +1 -0
- package/dist/client/types.js +8 -0
- package/dist/client/types.js.map +1 -0
- package/dist/component/_generated/api.d.ts +44 -0
- package/dist/component/_generated/api.d.ts.map +1 -0
- package/dist/component/_generated/api.js +31 -0
- package/dist/component/_generated/api.js.map +1 -0
- package/dist/component/_generated/component.d.ts +352 -0
- package/dist/component/_generated/component.d.ts.map +1 -0
- package/dist/component/_generated/component.js +11 -0
- package/dist/component/_generated/component.js.map +1 -0
- package/dist/component/_generated/dataModel.d.ts +46 -0
- package/dist/component/_generated/dataModel.d.ts.map +1 -0
- package/dist/component/_generated/dataModel.js +11 -0
- package/dist/component/_generated/dataModel.js.map +1 -0
- package/dist/component/_generated/server.d.ts +121 -0
- package/dist/component/_generated/server.d.ts.map +1 -0
- package/dist/component/_generated/server.js +78 -0
- package/dist/component/_generated/server.js.map +1 -0
- package/dist/component/conversations.d.ts +108 -0
- package/dist/component/conversations.d.ts.map +1 -0
- package/dist/component/conversations.js +278 -0
- package/dist/component/conversations.js.map +1 -0
- package/dist/component/convex.config.d.ts +13 -0
- package/dist/component/convex.config.d.ts.map +1 -0
- package/dist/component/convex.config.js +21 -0
- package/dist/component/convex.config.js.map +1 -0
- package/dist/component/messages.d.ts +235 -0
- package/dist/component/messages.d.ts.map +1 -0
- package/dist/component/messages.js +186 -0
- package/dist/component/messages.js.map +1 -0
- package/dist/component/schema.d.ts +535 -0
- package/dist/component/schema.d.ts.map +1 -0
- package/dist/component/schema.js +113 -0
- package/dist/component/schema.js.map +1 -0
- package/dist/component/steps.d.ts +65 -0
- package/dist/component/steps.d.ts.map +1 -0
- package/dist/component/steps.js +120 -0
- package/dist/component/steps.js.map +1 -0
- package/dist/component/validators.d.ts +633 -0
- package/dist/component/validators.d.ts.map +1 -0
- package/dist/component/validators.js +124 -0
- package/dist/component/validators.js.map +1 -0
- package/dist/component/workflows.d.ts +234 -0
- package/dist/component/workflows.d.ts.map +1 -0
- package/dist/component/workflows.js +229 -0
- package/dist/component/workflows.js.map +1 -0
- package/dist/component/workingMemory.d.ts +30 -0
- package/dist/component/workingMemory.d.ts.map +1 -0
- package/dist/component/workingMemory.js +131 -0
- package/dist/component/workingMemory.js.map +1 -0
- package/dist/index.d.ts +7 -318
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -434
- package/dist/index.js.map +1 -1
- package/dist/memory-adapter.d.ts +153 -0
- package/dist/memory-adapter.d.ts.map +1 -0
- package/dist/memory-adapter.js +462 -0
- package/dist/memory-adapter.js.map +1 -0
- package/dist/types.d.ts +167 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +5 -0
- package/dist/types.js.map +1 -0
- package/package.json +25 -26
- package/src/client/defineVoltAgentAPI.ts +365 -0
- package/src/client/index.ts +8 -0
- package/src/client/types.ts +14 -0
- package/src/component/_generated/api.ts +60 -0
- package/src/component/_generated/component.ts +466 -0
- package/src/component/_generated/dataModel.ts +60 -0
- package/src/component/_generated/server.ts +156 -0
- package/src/index.ts +24 -0
- package/{dist/index.cjs → src/memory-adapter.ts} +345 -106
- package/src/types.ts +178 -0
- package/dist/client/index.cjs +0 -288
- package/dist/client/index.cjs.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -322
- /package/{convex → src/component}/conversations.ts +0 -0
- /package/{convex → src/component}/convex.config.ts +0 -0
- /package/{convex → src/component}/messages.ts +0 -0
- /package/{convex → src/component}/schema.ts +0 -0
- /package/{convex → src/component}/steps.ts +0 -0
- /package/{convex → src/component}/validators.ts +0 -0
- /package/{convex → src/component}/workflows.ts +0 -0
- /package/{convex → src/component}/workingMemory.ts +0 -0
package/src/types.ts
ADDED
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for VoltAgent Convex Memory Adapter
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Logger interface for the adapter
|
|
7
|
+
*/
|
|
8
|
+
export interface Logger {
|
|
9
|
+
debug: (message: string, ...args: unknown[]) => void;
|
|
10
|
+
info: (message: string, ...args: unknown[]) => void;
|
|
11
|
+
warn: (message: string, ...args: unknown[]) => void;
|
|
12
|
+
error: (message: string, ...args: unknown[]) => void;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Convex client interface - compatible with ConvexHttpClient and ConvexReactClient.
|
|
17
|
+
*
|
|
18
|
+
* This interface is intentionally loose to accommodate different Convex client
|
|
19
|
+
* implementations (ConvexHttpClient, ConvexReactClient) which have slightly
|
|
20
|
+
* different method signatures.
|
|
21
|
+
*/
|
|
22
|
+
export interface ConvexClient {
|
|
23
|
+
query: (functionReference: any, ...args: any[]) => Promise<any>;
|
|
24
|
+
mutation: (functionReference: any, ...args: any[]) => Promise<any>;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* The VoltAgent API structure.
|
|
29
|
+
* This matches the wrapper functions exported from the convex/api.ts file.
|
|
30
|
+
*/
|
|
31
|
+
export interface VoltAgentApi {
|
|
32
|
+
createConversation: unknown;
|
|
33
|
+
getConversation: unknown;
|
|
34
|
+
getConversations: unknown;
|
|
35
|
+
getConversationsByUserId: unknown;
|
|
36
|
+
queryConversations: unknown;
|
|
37
|
+
updateConversation: unknown;
|
|
38
|
+
deleteConversation: unknown;
|
|
39
|
+
addMessage: unknown;
|
|
40
|
+
addMessages: unknown;
|
|
41
|
+
getMessages: unknown;
|
|
42
|
+
clearMessages: unknown;
|
|
43
|
+
saveConversationSteps: unknown;
|
|
44
|
+
getConversationSteps: unknown;
|
|
45
|
+
getWorkingMemory: unknown;
|
|
46
|
+
setWorkingMemory: unknown;
|
|
47
|
+
deleteWorkingMemory: unknown;
|
|
48
|
+
getWorkflowState: unknown;
|
|
49
|
+
queryWorkflowRuns: unknown;
|
|
50
|
+
setWorkflowState: unknown;
|
|
51
|
+
updateWorkflowState: unknown;
|
|
52
|
+
getSuspendedWorkflowStates: unknown;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Configuration options for ConvexMemoryAdapter
|
|
57
|
+
*/
|
|
58
|
+
export interface ConvexMemoryAdapterOptions {
|
|
59
|
+
/**
|
|
60
|
+
* The Convex client instance to use for queries and mutations.
|
|
61
|
+
* Can be a ConvexHttpClient or ConvexReactClient.
|
|
62
|
+
*/
|
|
63
|
+
client: ConvexClient;
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Whether to enable debug logging.
|
|
67
|
+
* @default false
|
|
68
|
+
*/
|
|
69
|
+
debug?: boolean;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Custom logger instance.
|
|
73
|
+
* If not provided, a default console logger will be used when debug is enabled.
|
|
74
|
+
*/
|
|
75
|
+
logger?: Logger;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* The VoltAgent API from your Convex generated code.
|
|
79
|
+
*
|
|
80
|
+
* After adding the voltagent.ts file to your convex folder that re-exports
|
|
81
|
+
* the wrapper functions, import the api and pass api.voltagent here.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```ts
|
|
85
|
+
* import { api } from "./convex/_generated/api";
|
|
86
|
+
*
|
|
87
|
+
* const adapter = new ConvexMemoryAdapter({
|
|
88
|
+
* client,
|
|
89
|
+
* api: api.voltagent,
|
|
90
|
+
* });
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
api: VoltAgentApi;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Internal representation of a conversation in Convex
|
|
98
|
+
*/
|
|
99
|
+
export interface ConvexConversation {
|
|
100
|
+
_id: string;
|
|
101
|
+
visibleId: string;
|
|
102
|
+
resourceId: string;
|
|
103
|
+
userId: string;
|
|
104
|
+
title: string;
|
|
105
|
+
metadata: Record<string, unknown>;
|
|
106
|
+
createdAt: string;
|
|
107
|
+
updatedAt: string;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Internal representation of a message in Convex
|
|
112
|
+
*/
|
|
113
|
+
export interface ConvexMessage {
|
|
114
|
+
_id: string;
|
|
115
|
+
visibleId: string;
|
|
116
|
+
conversationId: string;
|
|
117
|
+
userId: string;
|
|
118
|
+
role: string;
|
|
119
|
+
parts: unknown[];
|
|
120
|
+
metadata?: Record<string, unknown>;
|
|
121
|
+
createdAt: string;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Internal representation of a user in Convex
|
|
126
|
+
*/
|
|
127
|
+
export interface ConvexUser {
|
|
128
|
+
_id: string;
|
|
129
|
+
visibleId: string;
|
|
130
|
+
metadata?: Record<string, unknown>;
|
|
131
|
+
createdAt: string;
|
|
132
|
+
updatedAt: string;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Internal representation of a workflow state in Convex
|
|
137
|
+
*/
|
|
138
|
+
export interface ConvexWorkflowState {
|
|
139
|
+
_id: string;
|
|
140
|
+
visibleId: string;
|
|
141
|
+
workflowId: string;
|
|
142
|
+
workflowName: string;
|
|
143
|
+
status: string;
|
|
144
|
+
input?: unknown;
|
|
145
|
+
context?: unknown;
|
|
146
|
+
suspension?: unknown;
|
|
147
|
+
events?: unknown[];
|
|
148
|
+
output?: unknown;
|
|
149
|
+
cancellation?: unknown;
|
|
150
|
+
userId?: string;
|
|
151
|
+
conversationId?: string;
|
|
152
|
+
metadata?: Record<string, unknown>;
|
|
153
|
+
createdAt: string;
|
|
154
|
+
updatedAt: string;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Internal representation of a conversation step in Convex
|
|
159
|
+
*/
|
|
160
|
+
export interface ConvexConversationStep {
|
|
161
|
+
_id: string;
|
|
162
|
+
visibleId: string;
|
|
163
|
+
conversationId: string;
|
|
164
|
+
userId: string;
|
|
165
|
+
agentId: string;
|
|
166
|
+
agentName?: string;
|
|
167
|
+
operationId?: string;
|
|
168
|
+
stepIndex: number;
|
|
169
|
+
type: string;
|
|
170
|
+
role: string;
|
|
171
|
+
content?: string;
|
|
172
|
+
arguments?: Record<string, unknown>;
|
|
173
|
+
result?: Record<string, unknown>;
|
|
174
|
+
usage?: Record<string, unknown>;
|
|
175
|
+
subAgentId?: string;
|
|
176
|
+
subAgentName?: string;
|
|
177
|
+
createdAt: string;
|
|
178
|
+
}
|
package/dist/client/index.cjs
DELETED
|
@@ -1,288 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var server = require('convex/server');
|
|
4
|
-
var values = require('convex/values');
|
|
5
|
-
|
|
6
|
-
// src/client/defineVoltAgentAPI.ts
|
|
7
|
-
function defineVoltAgentAPI(component) {
|
|
8
|
-
const createConversation = server.mutationGeneric({
|
|
9
|
-
args: {
|
|
10
|
-
id: values.v.string(),
|
|
11
|
-
resourceId: values.v.string(),
|
|
12
|
-
userId: values.v.string(),
|
|
13
|
-
title: values.v.string(),
|
|
14
|
-
metadata: values.v.any()
|
|
15
|
-
},
|
|
16
|
-
handler: async (ctx, args) => {
|
|
17
|
-
return ctx.runMutation(component.conversations.create, args);
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
const getConversation = server.queryGeneric({
|
|
21
|
-
args: { id: values.v.string() },
|
|
22
|
-
handler: async (ctx, args) => {
|
|
23
|
-
return ctx.runQuery(component.conversations.get, args);
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
const getConversations = server.queryGeneric({
|
|
27
|
-
args: { resourceId: values.v.string() },
|
|
28
|
-
handler: async (ctx, args) => {
|
|
29
|
-
return ctx.runQuery(component.conversations.getByResourceId, args);
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
const getConversationsByUserId = server.queryGeneric({
|
|
33
|
-
args: {
|
|
34
|
-
userId: values.v.string(),
|
|
35
|
-
limit: values.v.optional(values.v.number()),
|
|
36
|
-
offset: values.v.optional(values.v.number()),
|
|
37
|
-
orderBy: values.v.optional(values.v.string()),
|
|
38
|
-
orderDirection: values.v.optional(values.v.string())
|
|
39
|
-
},
|
|
40
|
-
handler: async (ctx, args) => {
|
|
41
|
-
return ctx.runQuery(component.conversations.getByUserId, args);
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
const queryConversations = server.queryGeneric({
|
|
45
|
-
args: {
|
|
46
|
-
userId: values.v.optional(values.v.string()),
|
|
47
|
-
resourceId: values.v.optional(values.v.string()),
|
|
48
|
-
limit: values.v.optional(values.v.number()),
|
|
49
|
-
offset: values.v.optional(values.v.number()),
|
|
50
|
-
orderBy: values.v.optional(values.v.string()),
|
|
51
|
-
orderDirection: values.v.optional(values.v.string())
|
|
52
|
-
},
|
|
53
|
-
handler: async (ctx, args) => {
|
|
54
|
-
return ctx.runQuery(component.conversations.queryConversations, args);
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
const updateConversation = server.mutationGeneric({
|
|
58
|
-
args: {
|
|
59
|
-
id: values.v.string(),
|
|
60
|
-
title: values.v.optional(values.v.string()),
|
|
61
|
-
resourceId: values.v.optional(values.v.string()),
|
|
62
|
-
metadata: values.v.optional(values.v.any())
|
|
63
|
-
},
|
|
64
|
-
handler: async (ctx, args) => {
|
|
65
|
-
return ctx.runMutation(component.conversations.update, args);
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
const deleteConversation = server.mutationGeneric({
|
|
69
|
-
args: { id: values.v.string() },
|
|
70
|
-
handler: async (ctx, args) => {
|
|
71
|
-
return ctx.runMutation(component.conversations.remove, args);
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
const addMessage = server.mutationGeneric({
|
|
75
|
-
args: {
|
|
76
|
-
id: values.v.string(),
|
|
77
|
-
conversationId: values.v.string(),
|
|
78
|
-
userId: values.v.string(),
|
|
79
|
-
role: values.v.string(),
|
|
80
|
-
parts: values.v.any(),
|
|
81
|
-
metadata: values.v.optional(values.v.any())
|
|
82
|
-
},
|
|
83
|
-
handler: async (ctx, args) => {
|
|
84
|
-
return ctx.runMutation(component.messages.add, args);
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
const addMessages = server.mutationGeneric({
|
|
88
|
-
args: {
|
|
89
|
-
messages: values.v.array(
|
|
90
|
-
values.v.object({
|
|
91
|
-
id: values.v.string(),
|
|
92
|
-
conversationId: values.v.string(),
|
|
93
|
-
userId: values.v.string(),
|
|
94
|
-
role: values.v.string(),
|
|
95
|
-
parts: values.v.any(),
|
|
96
|
-
metadata: values.v.optional(values.v.any())
|
|
97
|
-
})
|
|
98
|
-
)
|
|
99
|
-
},
|
|
100
|
-
handler: async (ctx, args) => {
|
|
101
|
-
return ctx.runMutation(component.messages.addMany, args);
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
const getMessages = server.queryGeneric({
|
|
105
|
-
args: {
|
|
106
|
-
userId: values.v.string(),
|
|
107
|
-
conversationId: values.v.string(),
|
|
108
|
-
limit: values.v.optional(values.v.number()),
|
|
109
|
-
before: values.v.optional(values.v.string()),
|
|
110
|
-
after: values.v.optional(values.v.string()),
|
|
111
|
-
roles: values.v.optional(values.v.array(values.v.string()))
|
|
112
|
-
},
|
|
113
|
-
handler: async (ctx, args) => {
|
|
114
|
-
return ctx.runQuery(component.messages.get, args);
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
const clearMessages = server.mutationGeneric({
|
|
118
|
-
args: {
|
|
119
|
-
userId: values.v.string(),
|
|
120
|
-
conversationId: values.v.optional(values.v.string())
|
|
121
|
-
},
|
|
122
|
-
handler: async (ctx, args) => {
|
|
123
|
-
return ctx.runMutation(component.messages.clear, args);
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
const saveConversationSteps = server.mutationGeneric({
|
|
127
|
-
args: {
|
|
128
|
-
steps: values.v.array(
|
|
129
|
-
values.v.object({
|
|
130
|
-
id: values.v.string(),
|
|
131
|
-
conversationId: values.v.string(),
|
|
132
|
-
userId: values.v.string(),
|
|
133
|
-
agentId: values.v.string(),
|
|
134
|
-
agentName: values.v.optional(values.v.string()),
|
|
135
|
-
operationId: values.v.optional(values.v.string()),
|
|
136
|
-
stepIndex: values.v.number(),
|
|
137
|
-
type: values.v.string(),
|
|
138
|
-
role: values.v.string(),
|
|
139
|
-
content: values.v.optional(values.v.string()),
|
|
140
|
-
arguments: values.v.optional(values.v.any()),
|
|
141
|
-
result: values.v.optional(values.v.any()),
|
|
142
|
-
usage: values.v.optional(values.v.any()),
|
|
143
|
-
subAgentId: values.v.optional(values.v.string()),
|
|
144
|
-
subAgentName: values.v.optional(values.v.string()),
|
|
145
|
-
createdAt: values.v.optional(values.v.string())
|
|
146
|
-
})
|
|
147
|
-
)
|
|
148
|
-
},
|
|
149
|
-
handler: async (ctx, args) => {
|
|
150
|
-
return ctx.runMutation(component.steps.save, args);
|
|
151
|
-
}
|
|
152
|
-
});
|
|
153
|
-
const getConversationSteps = server.queryGeneric({
|
|
154
|
-
args: {
|
|
155
|
-
userId: values.v.string(),
|
|
156
|
-
conversationId: values.v.string(),
|
|
157
|
-
limit: values.v.optional(values.v.number()),
|
|
158
|
-
operationId: values.v.optional(values.v.string())
|
|
159
|
-
},
|
|
160
|
-
handler: async (ctx, args) => {
|
|
161
|
-
return ctx.runQuery(component.steps.get, args);
|
|
162
|
-
}
|
|
163
|
-
});
|
|
164
|
-
const getWorkingMemory = server.queryGeneric({
|
|
165
|
-
args: {
|
|
166
|
-
conversationId: values.v.optional(values.v.string()),
|
|
167
|
-
userId: values.v.optional(values.v.string()),
|
|
168
|
-
scope: values.v.string()
|
|
169
|
-
},
|
|
170
|
-
handler: async (ctx, args) => {
|
|
171
|
-
return ctx.runQuery(component.workingMemory.get, args);
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
|
-
const setWorkingMemory = server.mutationGeneric({
|
|
175
|
-
args: {
|
|
176
|
-
conversationId: values.v.optional(values.v.string()),
|
|
177
|
-
userId: values.v.optional(values.v.string()),
|
|
178
|
-
content: values.v.string(),
|
|
179
|
-
scope: values.v.string()
|
|
180
|
-
},
|
|
181
|
-
handler: async (ctx, args) => {
|
|
182
|
-
return ctx.runMutation(component.workingMemory.set, args);
|
|
183
|
-
}
|
|
184
|
-
});
|
|
185
|
-
const deleteWorkingMemory = server.mutationGeneric({
|
|
186
|
-
args: {
|
|
187
|
-
conversationId: values.v.optional(values.v.string()),
|
|
188
|
-
userId: values.v.optional(values.v.string()),
|
|
189
|
-
scope: values.v.string()
|
|
190
|
-
},
|
|
191
|
-
handler: async (ctx, args) => {
|
|
192
|
-
return ctx.runMutation(component.workingMemory.remove, args);
|
|
193
|
-
}
|
|
194
|
-
});
|
|
195
|
-
const getWorkflowState = server.queryGeneric({
|
|
196
|
-
args: { executionId: values.v.string() },
|
|
197
|
-
handler: async (ctx, args) => {
|
|
198
|
-
return ctx.runQuery(component.workflows.get, args);
|
|
199
|
-
}
|
|
200
|
-
});
|
|
201
|
-
const queryWorkflowRuns = server.queryGeneric({
|
|
202
|
-
args: {
|
|
203
|
-
workflowId: values.v.optional(values.v.string()),
|
|
204
|
-
status: values.v.optional(values.v.string()),
|
|
205
|
-
from: values.v.optional(values.v.string()),
|
|
206
|
-
to: values.v.optional(values.v.string()),
|
|
207
|
-
limit: values.v.optional(values.v.number()),
|
|
208
|
-
offset: values.v.optional(values.v.number())
|
|
209
|
-
},
|
|
210
|
-
handler: async (ctx, args) => {
|
|
211
|
-
return ctx.runQuery(component.workflows.queryRuns, args);
|
|
212
|
-
}
|
|
213
|
-
});
|
|
214
|
-
const setWorkflowState = server.mutationGeneric({
|
|
215
|
-
args: {
|
|
216
|
-
executionId: values.v.string(),
|
|
217
|
-
workflowId: values.v.string(),
|
|
218
|
-
workflowName: values.v.string(),
|
|
219
|
-
status: values.v.string(),
|
|
220
|
-
input: values.v.optional(values.v.any()),
|
|
221
|
-
context: values.v.optional(values.v.any()),
|
|
222
|
-
suspension: values.v.optional(values.v.any()),
|
|
223
|
-
events: values.v.optional(values.v.any()),
|
|
224
|
-
output: values.v.optional(values.v.any()),
|
|
225
|
-
cancellation: values.v.optional(values.v.any()),
|
|
226
|
-
userId: values.v.optional(values.v.string()),
|
|
227
|
-
conversationId: values.v.optional(values.v.string()),
|
|
228
|
-
metadata: values.v.optional(values.v.any()),
|
|
229
|
-
createdAt: values.v.string(),
|
|
230
|
-
updatedAt: values.v.string()
|
|
231
|
-
},
|
|
232
|
-
handler: async (ctx, args) => {
|
|
233
|
-
return ctx.runMutation(component.workflows.set, args);
|
|
234
|
-
}
|
|
235
|
-
});
|
|
236
|
-
const updateWorkflowState = server.mutationGeneric({
|
|
237
|
-
args: {
|
|
238
|
-
executionId: values.v.string(),
|
|
239
|
-
status: values.v.optional(values.v.string()),
|
|
240
|
-
suspension: values.v.optional(values.v.any()),
|
|
241
|
-
events: values.v.optional(values.v.any()),
|
|
242
|
-
output: values.v.optional(values.v.any()),
|
|
243
|
-
cancellation: values.v.optional(values.v.any()),
|
|
244
|
-
metadata: values.v.optional(values.v.any())
|
|
245
|
-
},
|
|
246
|
-
handler: async (ctx, args) => {
|
|
247
|
-
return ctx.runMutation(component.workflows.update, args);
|
|
248
|
-
}
|
|
249
|
-
});
|
|
250
|
-
const getSuspendedWorkflowStates = server.queryGeneric({
|
|
251
|
-
args: { workflowId: values.v.string() },
|
|
252
|
-
handler: async (ctx, args) => {
|
|
253
|
-
return ctx.runQuery(component.workflows.getSuspended, args);
|
|
254
|
-
}
|
|
255
|
-
});
|
|
256
|
-
return {
|
|
257
|
-
// Conversations
|
|
258
|
-
createConversation,
|
|
259
|
-
getConversation,
|
|
260
|
-
getConversations,
|
|
261
|
-
getConversationsByUserId,
|
|
262
|
-
queryConversations,
|
|
263
|
-
updateConversation,
|
|
264
|
-
deleteConversation,
|
|
265
|
-
// Messages
|
|
266
|
-
addMessage,
|
|
267
|
-
addMessages,
|
|
268
|
-
getMessages,
|
|
269
|
-
clearMessages,
|
|
270
|
-
// Conversation Steps
|
|
271
|
-
saveConversationSteps,
|
|
272
|
-
getConversationSteps,
|
|
273
|
-
// Working Memory
|
|
274
|
-
getWorkingMemory,
|
|
275
|
-
setWorkingMemory,
|
|
276
|
-
deleteWorkingMemory,
|
|
277
|
-
// Workflow State
|
|
278
|
-
getWorkflowState,
|
|
279
|
-
queryWorkflowRuns,
|
|
280
|
-
setWorkflowState,
|
|
281
|
-
updateWorkflowState,
|
|
282
|
-
getSuspendedWorkflowStates
|
|
283
|
-
};
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
exports.defineVoltAgentAPI = defineVoltAgentAPI;
|
|
287
|
-
//# sourceMappingURL=index.cjs.map
|
|
288
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/client/defineVoltAgentAPI.ts"],"names":["mutationGeneric","v","queryGeneric"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * VoltAgent API Generator\n *\n * This function generates public Convex query/mutation functions that wrap\n * the VoltAgent component's internal functions. This allows external HTTP\n * clients to call the functions via ConvexHttpClient.\n *\n * Usage:\n * ```typescript\n * // convex/voltagent.ts\n * import { components } from \"./_generated/api\";\n * import { defineVoltAgentAPI } from \"@voltagent/convex/api\";\n *\n * export const {\n * createConversation,\n * getConversation,\n * // ... other functions\n * } = defineVoltAgentAPI(components.voltagent);\n * ```\n */\nimport {\n queryGeneric,\n mutationGeneric,\n type ApiFromModules,\n} from \"convex/server\";\nimport { v } from \"convex/values\";\nimport type { VoltAgentComponent } from \"./types.js\";\n\n/**\n * Define the VoltAgent API functions.\n *\n * @param component - The VoltAgent component reference (components.voltagent)\n * @returns An object containing all VoltAgent API functions\n */\nexport function defineVoltAgentAPI(component: VoltAgentComponent) {\n // ============================================================================\n // Conversation Functions\n // ============================================================================\n\n const createConversation = mutationGeneric({\n args: {\n id: v.string(),\n resourceId: v.string(),\n userId: v.string(),\n title: v.string(),\n metadata: v.any(),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.conversations.create, args);\n },\n });\n\n const getConversation = queryGeneric({\n args: { id: v.string() },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.conversations.get, args);\n },\n });\n\n const getConversations = queryGeneric({\n args: { resourceId: v.string() },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.conversations.getByResourceId, args);\n },\n });\n\n const getConversationsByUserId = queryGeneric({\n args: {\n userId: v.string(),\n limit: v.optional(v.number()),\n offset: v.optional(v.number()),\n orderBy: v.optional(v.string()),\n orderDirection: v.optional(v.string()),\n },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.conversations.getByUserId, args);\n },\n });\n\n const queryConversations = queryGeneric({\n args: {\n userId: v.optional(v.string()),\n resourceId: v.optional(v.string()),\n limit: v.optional(v.number()),\n offset: v.optional(v.number()),\n orderBy: v.optional(v.string()),\n orderDirection: v.optional(v.string()),\n },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.conversations.queryConversations, args);\n },\n });\n\n const updateConversation = mutationGeneric({\n args: {\n id: v.string(),\n title: v.optional(v.string()),\n resourceId: v.optional(v.string()),\n metadata: v.optional(v.any()),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.conversations.update, args);\n },\n });\n\n const deleteConversation = mutationGeneric({\n args: { id: v.string() },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.conversations.remove, args);\n },\n });\n\n // ============================================================================\n // Message Functions\n // ============================================================================\n\n const addMessage = mutationGeneric({\n args: {\n id: v.string(),\n conversationId: v.string(),\n userId: v.string(),\n role: v.string(),\n parts: v.any(),\n metadata: v.optional(v.any()),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.messages.add, args);\n },\n });\n\n const addMessages = mutationGeneric({\n args: {\n messages: v.array(\n v.object({\n id: v.string(),\n conversationId: v.string(),\n userId: v.string(),\n role: v.string(),\n parts: v.any(),\n metadata: v.optional(v.any()),\n }),\n ),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.messages.addMany, args);\n },\n });\n\n const getMessages = queryGeneric({\n args: {\n userId: v.string(),\n conversationId: v.string(),\n limit: v.optional(v.number()),\n before: v.optional(v.string()),\n after: v.optional(v.string()),\n roles: v.optional(v.array(v.string())),\n },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.messages.get, args);\n },\n });\n\n const clearMessages = mutationGeneric({\n args: {\n userId: v.string(),\n conversationId: v.optional(v.string()),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.messages.clear, args);\n },\n });\n\n // ============================================================================\n // Conversation Steps Functions\n // ============================================================================\n\n const saveConversationSteps = mutationGeneric({\n args: {\n steps: v.array(\n v.object({\n id: v.string(),\n conversationId: v.string(),\n userId: v.string(),\n agentId: v.string(),\n agentName: v.optional(v.string()),\n operationId: v.optional(v.string()),\n stepIndex: v.number(),\n type: v.string(),\n role: v.string(),\n content: v.optional(v.string()),\n arguments: v.optional(v.any()),\n result: v.optional(v.any()),\n usage: v.optional(v.any()),\n subAgentId: v.optional(v.string()),\n subAgentName: v.optional(v.string()),\n createdAt: v.optional(v.string()),\n }),\n ),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.steps.save, args);\n },\n });\n\n const getConversationSteps = queryGeneric({\n args: {\n userId: v.string(),\n conversationId: v.string(),\n limit: v.optional(v.number()),\n operationId: v.optional(v.string()),\n },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.steps.get, args);\n },\n });\n\n // ============================================================================\n // Working Memory Functions\n // ============================================================================\n\n const getWorkingMemory = queryGeneric({\n args: {\n conversationId: v.optional(v.string()),\n userId: v.optional(v.string()),\n scope: v.string(),\n },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.workingMemory.get, args);\n },\n });\n\n const setWorkingMemory = mutationGeneric({\n args: {\n conversationId: v.optional(v.string()),\n userId: v.optional(v.string()),\n content: v.string(),\n scope: v.string(),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.workingMemory.set, args);\n },\n });\n\n const deleteWorkingMemory = mutationGeneric({\n args: {\n conversationId: v.optional(v.string()),\n userId: v.optional(v.string()),\n scope: v.string(),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.workingMemory.remove, args);\n },\n });\n\n // ============================================================================\n // Workflow State Functions\n // ============================================================================\n\n const getWorkflowState = queryGeneric({\n args: { executionId: v.string() },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.workflows.get, args);\n },\n });\n\n const queryWorkflowRuns = queryGeneric({\n args: {\n workflowId: v.optional(v.string()),\n status: v.optional(v.string()),\n from: v.optional(v.string()),\n to: v.optional(v.string()),\n limit: v.optional(v.number()),\n offset: v.optional(v.number()),\n },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.workflows.queryRuns, args);\n },\n });\n\n const setWorkflowState = mutationGeneric({\n args: {\n executionId: v.string(),\n workflowId: v.string(),\n workflowName: v.string(),\n status: v.string(),\n input: v.optional(v.any()),\n context: v.optional(v.any()),\n suspension: v.optional(v.any()),\n events: v.optional(v.any()),\n output: v.optional(v.any()),\n cancellation: v.optional(v.any()),\n userId: v.optional(v.string()),\n conversationId: v.optional(v.string()),\n metadata: v.optional(v.any()),\n createdAt: v.string(),\n updatedAt: v.string(),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.workflows.set, args);\n },\n });\n\n const updateWorkflowState = mutationGeneric({\n args: {\n executionId: v.string(),\n status: v.optional(v.string()),\n suspension: v.optional(v.any()),\n events: v.optional(v.any()),\n output: v.optional(v.any()),\n cancellation: v.optional(v.any()),\n metadata: v.optional(v.any()),\n },\n handler: async (ctx, args) => {\n return ctx.runMutation(component.workflows.update, args);\n },\n });\n\n const getSuspendedWorkflowStates = queryGeneric({\n args: { workflowId: v.string() },\n handler: async (ctx, args) => {\n return ctx.runQuery(component.workflows.getSuspended, args);\n },\n });\n\n return {\n // Conversations\n createConversation,\n getConversation,\n getConversations,\n getConversationsByUserId,\n queryConversations,\n updateConversation,\n deleteConversation,\n // Messages\n addMessage,\n addMessages,\n getMessages,\n clearMessages,\n // Conversation Steps\n saveConversationSteps,\n getConversationSteps,\n // Working Memory\n getWorkingMemory,\n setWorkingMemory,\n deleteWorkingMemory,\n // Workflow State\n getWorkflowState,\n queryWorkflowRuns,\n setWorkflowState,\n updateWorkflowState,\n getSuspendedWorkflowStates,\n };\n}\n\n/**\n * Type for the VoltAgent API when used with ApiFromModules.\n *\n * Usage:\n * ```typescript\n * import type { VoltAgentAPI } from \"@voltagent/convex/api\";\n * ```\n */\nexport type VoltAgentAPI = ApiFromModules<{\n voltagent: ReturnType<typeof defineVoltAgentAPI>;\n}>[\"voltagent\"];\n"]}
|
package/dist/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/memory-adapter.ts"],"names":["ConversationAlreadyExistsError","ConversationNotFoundError"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * Convex Memory Adapter for VoltAgent\n *\n * A StorageAdapter implementation that persists conversation data\n * to Convex database using the VoltAgent Convex component.\n */\n\nimport {\n ConversationAlreadyExistsError,\n ConversationNotFoundError,\n} from \"@voltagent/core\";\nimport type {\n Conversation,\n ConversationQueryOptions,\n ConversationStepRecord,\n CreateConversationInput,\n GetConversationStepsOptions,\n GetMessagesOptions,\n OperationContext,\n StorageAdapter,\n WorkflowStateEntry,\n WorkingMemoryScope,\n} from \"@voltagent/core\";\nimport type { UIMessage } from \"ai\";\nimport type {\n ConvexClient,\n ConvexMemoryAdapterOptions,\n Logger,\n VoltAgentApi,\n} from \"./types\";\n\n/**\n * Default console logger implementation\n */\nconst defaultLogger: Logger = {\n debug: (message: string, ...args: unknown[]) =>\n console.debug(`[ConvexMemory] ${message}`, ...args),\n info: (message: string, ...args: unknown[]) =>\n console.info(`[ConvexMemory] ${message}`, ...args),\n warn: (message: string, ...args: unknown[]) =>\n console.warn(`[ConvexMemory] ${message}`, ...args),\n error: (message: string, ...args: unknown[]) =>\n console.error(`[ConvexMemory] ${message}`, ...args),\n};\n\n/**\n * Convex Memory Adapter for VoltAgent\n *\n * Implements the StorageAdapter interface to persist conversation history,\n * working memory, and workflow state to a Convex database.\n *\n * @example\n * ```ts\n * import { ConvexHttpClient } from \"convex/browser\";\n * import { api } from \"./convex/_generated/api\";\n * import { ConvexMemoryAdapter } from \"@voltagent/convex\";\n *\n * const client = new ConvexHttpClient(process.env.CONVEX_URL);\n *\n * const adapter = new ConvexMemoryAdapter({\n * client,\n * api: api.voltagent,\n * });\n *\n * const memory = new Memory({ storage: adapter });\n * ```\n */\nexport class ConvexMemoryAdapter implements StorageAdapter {\n private client: ConvexClient;\n private api: VoltAgentApi;\n private debug: boolean;\n private logger: Logger;\n\n constructor(options: ConvexMemoryAdapterOptions) {\n if (!options.client) {\n throw new Error(\"Convex client is required\");\n }\n if (!options.api) {\n throw new Error(\"Convex API is required\");\n }\n\n this.client = options.client;\n this.api = options.api;\n this.debug = options.debug ?? false;\n this.logger = options.logger ?? defaultLogger;\n\n this.log(\"Convex Memory adapter initialized\");\n }\n\n /**\n * Log debug messages\n */\n private log(message: string, ...args: unknown[]): void {\n if (this.debug) {\n this.logger.debug(message, ...args);\n }\n }\n\n /**\n * Generate a cryptographically secure random ID\n */\n private generateId(): string {\n return crypto.randomUUID();\n }\n\n // ============================================================================\n // Message Operations\n // ============================================================================\n\n /**\n * Add a single message to a conversation\n */\n async addMessage(\n message: UIMessage,\n userId: string,\n conversationId: string,\n _context?: OperationContext,\n ): Promise<void> {\n await this.client.mutation(this.api.addMessage, {\n id: message.id || this.generateId(),\n conversationId,\n userId,\n role: message.role,\n parts: message.parts,\n metadata: message.metadata || null,\n });\n\n this.log(`Added message to conversation ${conversationId}`);\n }\n\n /**\n * Add multiple messages to a conversation\n */\n async addMessages(\n messages: UIMessage[],\n userId: string,\n conversationId: string,\n _context?: OperationContext,\n ): Promise<void> {\n const messagesToAdd = messages.map((message) => ({\n id: message.id || this.generateId(),\n conversationId,\n userId,\n role: message.role,\n parts: message.parts,\n metadata: message.metadata || null,\n }));\n\n await this.client.mutation(this.api.addMessages, {\n messages: messagesToAdd,\n });\n\n this.log(\n `Added ${messages.length} messages to conversation ${conversationId}`,\n );\n }\n\n /**\n * Get messages from a conversation with optional filtering\n */\n async getMessages(\n userId: string,\n conversationId: string,\n options?: GetMessagesOptions,\n _context?: OperationContext,\n ): Promise<UIMessage<{ createdAt: Date }>[]> {\n const { limit, before, after, roles } = options || {};\n\n const messages = await this.client.query(this.api.getMessages, {\n userId,\n conversationId,\n limit,\n before: before?.toISOString(),\n after: after?.toISOString(),\n roles,\n });\n\n return (\n messages as Array<{\n id: string;\n role: string;\n parts: unknown[];\n metadata?: Record<string, unknown> & { createdAt?: string };\n }>\n ).map((msg) => ({\n id: msg.id,\n role: msg.role as \"system\" | \"user\" | \"assistant\",\n parts: msg.parts as UIMessage[\"parts\"],\n metadata: {\n ...msg.metadata,\n createdAt: msg.metadata?.createdAt\n ? new Date(msg.metadata.createdAt as string)\n : new Date(),\n },\n }));\n }\n\n /**\n * Clear messages for a user (optionally for a specific conversation)\n */\n async clearMessages(\n userId: string,\n conversationId?: string,\n _context?: OperationContext,\n ): Promise<void> {\n await this.client.mutation(this.api.clearMessages, {\n userId,\n conversationId,\n });\n\n this.log(`Cleared messages for user ${userId}`);\n }\n\n // ============================================================================\n // Conversation Steps Operations\n // ============================================================================\n\n /**\n * Save conversation steps for observability\n */\n async saveConversationSteps(steps: ConversationStepRecord[]): Promise<void> {\n if (steps.length === 0) {\n return;\n }\n\n await this.client.mutation(this.api.saveConversationSteps, {\n steps: steps.map((step) => ({\n id: step.id,\n conversationId: step.conversationId,\n userId: step.userId,\n agentId: step.agentId,\n agentName: step.agentName,\n operationId: step.operationId,\n stepIndex: step.stepIndex,\n type: step.type,\n role: step.role,\n content: step.content,\n arguments: step.arguments,\n result: step.result,\n usage: step.usage,\n subAgentId: step.subAgentId,\n subAgentName: step.subAgentName,\n createdAt: step.createdAt,\n })),\n });\n\n this.log(`Saved ${steps.length} conversation steps`);\n }\n\n /**\n * Get conversation steps for observability\n */\n async getConversationSteps(\n userId: string,\n conversationId: string,\n options?: GetConversationStepsOptions,\n ): Promise<ConversationStepRecord[]> {\n const steps = await this.client.query(this.api.getConversationSteps, {\n userId,\n conversationId,\n limit: options?.limit,\n operationId: options?.operationId,\n });\n\n return steps as ConversationStepRecord[];\n }\n\n // ============================================================================\n // Conversation Operations\n // ============================================================================\n\n /**\n * Create a new conversation\n */\n async createConversation(\n input: CreateConversationInput,\n ): Promise<Conversation> {\n try {\n const result = await this.client.mutation(this.api.createConversation, {\n id: input.id,\n resourceId: input.resourceId,\n userId: input.userId,\n title: input.title,\n metadata: input.metadata || {},\n });\n\n this.log(`Created conversation ${input.id}`);\n\n return result as Conversation;\n } catch (error) {\n if (error instanceof Error && error.message.includes(\"already exists\")) {\n throw new ConversationAlreadyExistsError(input.id);\n }\n throw error;\n }\n }\n\n /**\n * Get a conversation by ID\n */\n async getConversation(id: string): Promise<Conversation | null> {\n const conversation = await this.client.query(this.api.getConversation, {\n id,\n });\n\n return conversation as Conversation | null;\n }\n\n /**\n * Get conversations by resource ID\n */\n async getConversations(resourceId: string): Promise<Conversation[]> {\n const conversations = await this.client.query(this.api.getConversations, {\n resourceId,\n });\n\n return conversations as Conversation[];\n }\n\n /**\n * Get conversations by user ID with optional query options\n */\n async getConversationsByUserId(\n userId: string,\n options?: Omit<ConversationQueryOptions, \"userId\">,\n ): Promise<Conversation[]> {\n const conversations = await this.client.query(\n this.api.getConversationsByUserId,\n {\n userId,\n limit: options?.limit,\n offset: options?.offset,\n orderBy: options?.orderBy,\n orderDirection: options?.orderDirection,\n },\n );\n\n return conversations as Conversation[];\n }\n\n /**\n * Query conversations with filters\n */\n async queryConversations(\n options: ConversationQueryOptions,\n ): Promise<Conversation[]> {\n const conversations = await this.client.query(this.api.queryConversations, {\n userId: options.userId,\n resourceId: options.resourceId,\n limit: options.limit,\n offset: options.offset,\n orderBy: options.orderBy,\n orderDirection: options.orderDirection,\n });\n\n return conversations as Conversation[];\n }\n\n /**\n * Update a conversation\n */\n async updateConversation(\n id: string,\n updates: Partial<Omit<Conversation, \"id\" | \"createdAt\" | \"updatedAt\">>,\n ): Promise<Conversation> {\n try {\n const result = await this.client.mutation(this.api.updateConversation, {\n id,\n title: updates.title,\n resourceId: updates.resourceId,\n metadata: updates.metadata,\n });\n\n this.log(`Updated conversation ${id}`);\n\n return result as Conversation;\n } catch (error) {\n if (error instanceof Error && error.message.includes(\"not found\")) {\n throw new ConversationNotFoundError(id);\n }\n throw error;\n }\n }\n\n /**\n * Delete a conversation and its associated data\n */\n async deleteConversation(id: string): Promise<void> {\n try {\n await this.client.mutation(this.api.deleteConversation, { id });\n this.log(`Deleted conversation ${id}`);\n } catch (error) {\n if (error instanceof Error && error.message.includes(\"not found\")) {\n throw new ConversationNotFoundError(id);\n }\n throw error;\n }\n }\n\n // ============================================================================\n // Working Memory Operations\n // ============================================================================\n\n /**\n * Get working memory content\n */\n async getWorkingMemory(params: {\n conversationId?: string;\n userId?: string;\n scope: WorkingMemoryScope;\n }): Promise<string | null> {\n const result = await this.client.query(this.api.getWorkingMemory, {\n conversationId: params.conversationId,\n userId: params.userId,\n scope: params.scope,\n });\n\n return result as string | null;\n }\n\n /**\n * Set working memory content\n */\n async setWorkingMemory(params: {\n conversationId?: string;\n userId?: string;\n content: string;\n scope: WorkingMemoryScope;\n }): Promise<void> {\n try {\n await this.client.mutation(this.api.setWorkingMemory, {\n conversationId: params.conversationId,\n userId: params.userId,\n content: params.content,\n scope: params.scope,\n });\n\n this.log(`Set working memory for ${params.scope}`);\n } catch (error) {\n if (\n error instanceof Error &&\n error.message.includes(\"not found\") &&\n params.conversationId\n ) {\n throw new ConversationNotFoundError(params.conversationId);\n }\n throw error;\n }\n }\n\n /**\n * Delete working memory content\n */\n async deleteWorkingMemory(params: {\n conversationId?: string;\n userId?: string;\n scope: WorkingMemoryScope;\n }): Promise<void> {\n await this.client.mutation(this.api.deleteWorkingMemory, {\n conversationId: params.conversationId,\n userId: params.userId,\n scope: params.scope,\n });\n\n this.log(`Deleted working memory for ${params.scope}`);\n }\n\n // ============================================================================\n // Workflow State Operations\n // ============================================================================\n\n /**\n * Get workflow state by execution ID\n */\n async getWorkflowState(\n executionId: string,\n ): Promise<WorkflowStateEntry | null> {\n const state = await this.client.query(this.api.getWorkflowState, {\n executionId,\n });\n\n if (!state) return null;\n\n const typedState = state as {\n id: string;\n workflowId: string;\n workflowName: string;\n status: string;\n input?: unknown;\n context?: unknown;\n suspension?: unknown;\n events?: unknown[];\n output?: unknown;\n cancellation?: unknown;\n userId?: string;\n conversationId?: string;\n metadata?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n };\n\n return {\n id: typedState.id,\n workflowId: typedState.workflowId,\n workflowName: typedState.workflowName,\n status: typedState.status as WorkflowStateEntry[\"status\"],\n input: typedState.input,\n context: typedState.context as WorkflowStateEntry[\"context\"],\n suspension: typedState.suspension as WorkflowStateEntry[\"suspension\"],\n events: typedState.events as WorkflowStateEntry[\"events\"],\n output: typedState.output,\n cancellation:\n typedState.cancellation as WorkflowStateEntry[\"cancellation\"],\n userId: typedState.userId,\n conversationId: typedState.conversationId,\n metadata: typedState.metadata,\n createdAt: new Date(typedState.createdAt),\n updatedAt: new Date(typedState.updatedAt),\n };\n }\n\n /**\n * Query workflow runs with optional filters\n */\n async queryWorkflowRuns(query: {\n workflowId?: string;\n status?: WorkflowStateEntry[\"status\"];\n from?: Date;\n to?: Date;\n limit?: number;\n offset?: number;\n }): Promise<WorkflowStateEntry[]> {\n const states = await this.client.query(this.api.queryWorkflowRuns, {\n workflowId: query.workflowId,\n status: query.status,\n from: query.from?.toISOString(),\n to: query.to?.toISOString(),\n limit: query.limit,\n offset: query.offset,\n });\n\n return (\n states as Array<{\n id: string;\n workflowId: string;\n workflowName: string;\n status: string;\n input?: unknown;\n context?: unknown;\n suspension?: unknown;\n events?: unknown[];\n output?: unknown;\n cancellation?: unknown;\n userId?: string;\n conversationId?: string;\n metadata?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n }>\n ).map((s) => ({\n id: s.id,\n workflowId: s.workflowId,\n workflowName: s.workflowName,\n status: s.status as WorkflowStateEntry[\"status\"],\n input: s.input,\n context: s.context as WorkflowStateEntry[\"context\"],\n suspension: s.suspension as WorkflowStateEntry[\"suspension\"],\n events: s.events as WorkflowStateEntry[\"events\"],\n output: s.output,\n cancellation: s.cancellation as WorkflowStateEntry[\"cancellation\"],\n userId: s.userId,\n conversationId: s.conversationId,\n metadata: s.metadata,\n createdAt: new Date(s.createdAt),\n updatedAt: new Date(s.updatedAt),\n }));\n }\n\n /**\n * Set workflow state\n */\n async setWorkflowState(\n executionId: string,\n state: WorkflowStateEntry,\n ): Promise<void> {\n await this.client.mutation(this.api.setWorkflowState, {\n executionId,\n workflowId: state.workflowId,\n workflowName: state.workflowName,\n status: state.status,\n input: state.input,\n context: state.context,\n suspension: state.suspension,\n events: state.events,\n output: state.output,\n cancellation: state.cancellation,\n userId: state.userId,\n conversationId: state.conversationId,\n metadata: state.metadata,\n createdAt: state.createdAt.toISOString(),\n updatedAt: state.updatedAt.toISOString(),\n });\n\n this.log(`Set workflow state ${executionId}`);\n }\n\n /**\n * Update workflow state\n */\n async updateWorkflowState(\n executionId: string,\n updates: Partial<WorkflowStateEntry>,\n ): Promise<void> {\n await this.client.mutation(this.api.updateWorkflowState, {\n executionId,\n status: updates.status,\n suspension: updates.suspension,\n events: updates.events,\n output: updates.output,\n cancellation: updates.cancellation,\n metadata: updates.metadata,\n });\n\n this.log(`Updated workflow state ${executionId}`);\n }\n\n /**\n * Get suspended workflow states for a workflow\n */\n async getSuspendedWorkflowStates(\n workflowId: string,\n ): Promise<WorkflowStateEntry[]> {\n const states = await this.client.query(\n this.api.getSuspendedWorkflowStates,\n {\n workflowId,\n },\n );\n\n return (\n states as Array<{\n id: string;\n workflowId: string;\n workflowName: string;\n status: string;\n input?: unknown;\n context?: unknown;\n suspension?: unknown;\n events?: unknown[];\n output?: unknown;\n cancellation?: unknown;\n userId?: string;\n conversationId?: string;\n metadata?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n }>\n ).map((s) => ({\n id: s.id,\n workflowId: s.workflowId,\n workflowName: s.workflowName,\n status: s.status as WorkflowStateEntry[\"status\"],\n input: s.input,\n context: s.context as WorkflowStateEntry[\"context\"],\n suspension: s.suspension as WorkflowStateEntry[\"suspension\"],\n events: s.events as WorkflowStateEntry[\"events\"],\n output: s.output,\n cancellation: s.cancellation as WorkflowStateEntry[\"cancellation\"],\n userId: s.userId,\n conversationId: s.conversationId,\n metadata: s.metadata,\n createdAt: new Date(s.createdAt),\n updatedAt: new Date(s.updatedAt),\n }));\n }\n}\n"]}
|