n8n-nodes-vercel-ai-sdk-universal-temp 0.3.9 → 0.3.10
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/nodes/UniversalAI/UniversalAI.node.d.ts +0 -1
- package/dist/nodes/UniversalAI/UniversalAI.node.js +13 -18
- package/dist/nodes/UniversalAI/UniversalAI.node.js.map +1 -1
- package/dist/nodes/UniversalAI/providers/google.d.ts +1 -1
- package/dist/nodes/UniversalAI/providers/google.js +1 -1
- package/dist/nodes/UniversalAI/providers/google.js.map +1 -1
- package/dist/nodes/UniversalAI/providers/index.js +0 -4
- package/dist/nodes/UniversalAI/providers/index.js.map +1 -1
- package/dist/nodes/UniversalAI/providers/openaicompatible.d.ts +1 -1
- package/dist/nodes/UniversalAI/providers/openaicompatible.js +1 -1
- package/dist/nodes/UniversalAI/providers/openaicompatible.js.map +1 -1
- package/dist/nodes/UniversalAI/providers/strategy.d.ts +1 -1
- package/dist/nodes/UniversalAI/providers/types.d.ts +1 -1
- package/dist/nodes/UniversalAgent/UniversalAgent.node.d.ts +3 -0
- package/dist/nodes/UniversalAgent/UniversalAgent.node.js +17 -0
- package/dist/nodes/UniversalAgent/UniversalAgent.node.js.map +1 -1
- package/dist/nodes/UniversalAgent/UniversalAgentDescription.js +1438 -166
- package/dist/nodes/UniversalAgent/UniversalAgentDescription.js.map +1 -1
- package/dist/nodes/UniversalAgent/handlers/access-tokens.handler.d.ts +2 -0
- package/dist/nodes/UniversalAgent/handlers/access-tokens.handler.js +52 -0
- package/dist/nodes/UniversalAgent/handlers/access-tokens.handler.js.map +1 -0
- package/dist/nodes/UniversalAgent/handlers/agent-blocks.handler.d.ts +2 -0
- package/dist/nodes/UniversalAgent/handlers/agent-blocks.handler.js +114 -0
- package/dist/nodes/UniversalAgent/handlers/agent-blocks.handler.js.map +1 -0
- package/dist/nodes/UniversalAgent/handlers/agent.handler.js +203 -71
- package/dist/nodes/UniversalAgent/handlers/agent.handler.js.map +1 -1
- package/dist/nodes/UniversalAgent/handlers/chat.handler.js +55 -7
- package/dist/nodes/UniversalAgent/handlers/chat.handler.js.map +1 -1
- package/dist/nodes/UniversalAgent/handlers/identity.handler.js +19 -8
- package/dist/nodes/UniversalAgent/handlers/identity.handler.js.map +1 -1
- package/dist/nodes/UniversalAgent/handlers/mcp.handler.js +171 -26
- package/dist/nodes/UniversalAgent/handlers/mcp.handler.js.map +1 -1
- package/dist/nodes/UniversalAgent/handlers/messages.handler.d.ts +2 -0
- package/dist/nodes/UniversalAgent/handlers/messages.handler.js +59 -0
- package/dist/nodes/UniversalAgent/handlers/messages.handler.js.map +1 -0
- package/dist/nodes/UniversalAgent/handlers/passages.handler.d.ts +2 -0
- package/dist/nodes/UniversalAgent/handlers/passages.handler.js +88 -0
- package/dist/nodes/UniversalAgent/handlers/passages.handler.js.map +1 -0
- package/dist/nodes/UniversalAgent/handlers/templates.handler.js +22 -0
- package/dist/nodes/UniversalAgent/handlers/templates.handler.js.map +1 -1
- package/dist/nodes/UniversalAgent/handlers/tools.handler.js +54 -66
- package/dist/nodes/UniversalAgent/handlers/tools.handler.js.map +1 -1
- package/dist/nodes/UniversalAgent/handlers/utils.js +3 -4
- package/dist/nodes/UniversalAgent/handlers/utils.js.map +1 -1
- package/dist/nodes/UniversalEmbedding/UniversalEmbedding.node.js +25 -7
- package/dist/nodes/UniversalEmbedding/UniversalEmbedding.node.js.map +1 -1
- package/dist/nodes/UniversalImageGen/UniversalImageGen.node.js +1 -1
- package/dist/nodes/UniversalImageGen/UniversalImageGen.node.js.map +1 -1
- package/dist/nodes/UniversalSpeechGen/UniversalSpeechGen.node.d.ts +2 -2
- package/dist/nodes/UniversalSpeechGen/UniversalSpeechGen.node.js +5 -12
- package/dist/nodes/UniversalSpeechGen/UniversalSpeechGen.node.js.map +1 -1
- package/dist/nodes/shared/descriptions.js +20 -3
- package/dist/nodes/shared/descriptions.js.map +1 -1
- package/dist/nodes/shared/helpers.js +0 -12
- package/dist/nodes/shared/helpers.js.map +1 -1
- package/dist/nodes/shared/letta/client.d.ts +67 -19
- package/dist/nodes/shared/letta/client.js +353 -114
- package/dist/nodes/shared/letta/client.js.map +1 -1
- package/dist/nodes/shared/letta/load-options.d.ts +3 -0
- package/dist/nodes/shared/letta/load-options.js +93 -0
- package/dist/nodes/shared/letta/load-options.js.map +1 -1
- package/dist/nodes/shared/providers/factory.d.ts +0 -1
- package/dist/nodes/shared/providers/factory.js +35 -15
- package/dist/nodes/shared/providers/factory.js.map +1 -1
- package/dist/nodes/shared/providers/registry.js +1 -20
- package/dist/nodes/shared/providers/registry.js.map +1 -1
- package/dist/nodes/shared/types.d.ts +1 -1
- package/index.js +33 -0
- package/package.json +13 -13
- package/dist/credentials/GeminiCliApi.credentials.d.ts +0 -8
- package/dist/credentials/GeminiCliApi.credentials.js +0 -80
- package/dist/credentials/GeminiCliApi.credentials.js.map +0 -1
- package/dist/nodes/UniversalAI/providers/gemini-cli.d.ts +0 -5
- package/dist/nodes/UniversalAI/providers/gemini-cli.js +0 -12
- package/dist/nodes/UniversalAI/providers/gemini-cli.js.map +0 -1
- package/dist/nodes/UniversalAI/providers/letta.d.ts +0 -16
- package/dist/nodes/UniversalAI/providers/letta.js +0 -77
- package/dist/nodes/UniversalAI/providers/letta.js.map +0 -1
- package/dist/nodes/shared/providers/gemini-cli.d.ts +0 -2
- package/dist/nodes/shared/providers/gemini-cli.js +0 -180
- package/dist/nodes/shared/providers/gemini-cli.js.map +0 -1
|
@@ -15,7 +15,7 @@ class LettaClientWrapper {
|
|
|
15
15
|
return await this.client.agents.retrieve(agentId);
|
|
16
16
|
}
|
|
17
17
|
catch (error) {
|
|
18
|
-
const message =
|
|
18
|
+
const message = this.getErrorMessage(error);
|
|
19
19
|
if (message.includes('401') || message.includes('Unauthorized')) {
|
|
20
20
|
throw new Error(`Authentication failed: Invalid or missing API key for Letta instance`);
|
|
21
21
|
}
|
|
@@ -27,12 +27,13 @@ class LettaClientWrapper {
|
|
|
27
27
|
}
|
|
28
28
|
async listAgents(tags) {
|
|
29
29
|
try {
|
|
30
|
-
|
|
30
|
+
const result = this.client.agents.list({
|
|
31
31
|
tags: tags || [],
|
|
32
32
|
});
|
|
33
|
+
return await this.collectResult(result);
|
|
33
34
|
}
|
|
34
35
|
catch (error) {
|
|
35
|
-
const message =
|
|
36
|
+
const message = this.getErrorMessage(error);
|
|
36
37
|
if (message.includes('401') || message.includes('Unauthorized')) {
|
|
37
38
|
throw new Error(`Authentication failed: Invalid or missing API key for Letta instance`);
|
|
38
39
|
}
|
|
@@ -44,7 +45,7 @@ class LettaClientWrapper {
|
|
|
44
45
|
return await this.client.agents.create(params);
|
|
45
46
|
}
|
|
46
47
|
catch (error) {
|
|
47
|
-
const message =
|
|
48
|
+
const message = this.getErrorMessage(error);
|
|
48
49
|
throw new Error(`Failed to create agent: ${message}`);
|
|
49
50
|
}
|
|
50
51
|
}
|
|
@@ -53,25 +54,74 @@ class LettaClientWrapper {
|
|
|
53
54
|
return await this.client.agents.delete(agentId);
|
|
54
55
|
}
|
|
55
56
|
catch (error) {
|
|
56
|
-
const message =
|
|
57
|
+
const message = this.getErrorMessage(error);
|
|
57
58
|
throw new Error(`Failed to delete agent: ${message}`);
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
61
|
async updateAgent(agentId, updates) {
|
|
61
62
|
try {
|
|
62
|
-
return await this.client.agents.
|
|
63
|
+
return await this.client.agents.update(agentId, updates);
|
|
63
64
|
}
|
|
64
65
|
catch (error) {
|
|
65
|
-
const message =
|
|
66
|
+
const message = this.getErrorMessage(error);
|
|
66
67
|
throw new Error(`Failed to update agent: ${message}`);
|
|
67
68
|
}
|
|
68
69
|
}
|
|
70
|
+
async listAgentBlocks(agentId, query) {
|
|
71
|
+
try {
|
|
72
|
+
const result = this.client.agents.blocks.list(agentId, query);
|
|
73
|
+
return await this.collectResult(result);
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
const message = this.getErrorMessage(error);
|
|
77
|
+
throw new Error(`Failed to list agent blocks: ${message}`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
async getAgentBlock(agentId, blockLabel) {
|
|
81
|
+
try {
|
|
82
|
+
return await this.client.agents.blocks.retrieve(blockLabel, { agent_id: agentId });
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
const message = this.getErrorMessage(error);
|
|
86
|
+
throw new Error(`Failed to get agent block: ${message}`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
async updateAgentBlock(agentId, blockLabel, updates) {
|
|
90
|
+
try {
|
|
91
|
+
return await this.client.agents.blocks.update(blockLabel, {
|
|
92
|
+
agent_id: agentId,
|
|
93
|
+
...updates,
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
const message = this.getErrorMessage(error);
|
|
98
|
+
throw new Error(`Failed to update agent block: ${message}`);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
async attachAgentBlock(agentId, blockId) {
|
|
102
|
+
try {
|
|
103
|
+
return await this.client.agents.blocks.attach(blockId, { agent_id: agentId });
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
const message = this.getErrorMessage(error);
|
|
107
|
+
throw new Error(`Failed to attach agent block: ${message}`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
async detachAgentBlock(agentId, blockId) {
|
|
111
|
+
try {
|
|
112
|
+
return await this.client.agents.blocks.detach(blockId, { agent_id: agentId });
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
const message = this.getErrorMessage(error);
|
|
116
|
+
throw new Error(`Failed to detach agent block: ${message}`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
69
119
|
async getIdentity(identityId) {
|
|
70
120
|
try {
|
|
71
121
|
return await this.client.identities.retrieve(identityId);
|
|
72
122
|
}
|
|
73
123
|
catch (error) {
|
|
74
|
-
const message =
|
|
124
|
+
const message = this.getErrorMessage(error);
|
|
75
125
|
if (message.includes('404') || message.includes('not found')) {
|
|
76
126
|
throw new Error(`Identity not found: ${identityId}`);
|
|
77
127
|
}
|
|
@@ -80,10 +130,11 @@ class LettaClientWrapper {
|
|
|
80
130
|
}
|
|
81
131
|
async listIdentities() {
|
|
82
132
|
try {
|
|
83
|
-
|
|
133
|
+
const result = this.client.identities.list();
|
|
134
|
+
return await this.collectResult(result);
|
|
84
135
|
}
|
|
85
136
|
catch (error) {
|
|
86
|
-
const message =
|
|
137
|
+
const message = this.getErrorMessage(error);
|
|
87
138
|
throw new Error(`Failed to list identities: ${message}`);
|
|
88
139
|
}
|
|
89
140
|
}
|
|
@@ -92,7 +143,7 @@ class LettaClientWrapper {
|
|
|
92
143
|
return await this.client.identities.delete(identityId);
|
|
93
144
|
}
|
|
94
145
|
catch (error) {
|
|
95
|
-
const message =
|
|
146
|
+
const message = this.getErrorMessage(error);
|
|
96
147
|
throw new Error(`Failed to delete identity: ${message}`);
|
|
97
148
|
}
|
|
98
149
|
}
|
|
@@ -101,22 +152,23 @@ class LettaClientWrapper {
|
|
|
101
152
|
return await this.client.identities.update(identityId, updates);
|
|
102
153
|
}
|
|
103
154
|
catch (error) {
|
|
104
|
-
const message =
|
|
155
|
+
const message = this.getErrorMessage(error);
|
|
105
156
|
throw new Error(`Failed to update identity: ${message}`);
|
|
106
157
|
}
|
|
107
158
|
}
|
|
108
159
|
async getIdentityByIdentifierKey(identifierKey) {
|
|
109
160
|
try {
|
|
110
|
-
const
|
|
111
|
-
identifierKey,
|
|
161
|
+
const result = this.client.identities.list({
|
|
162
|
+
identifier_key: identifierKey,
|
|
163
|
+
limit: 1,
|
|
112
164
|
});
|
|
113
|
-
|
|
165
|
+
const identities = await this.collectResult(result, 1);
|
|
166
|
+
if (identities.length > 0)
|
|
114
167
|
return identities[0];
|
|
115
|
-
}
|
|
116
168
|
return null;
|
|
117
169
|
}
|
|
118
170
|
catch (error) {
|
|
119
|
-
const message =
|
|
171
|
+
const message = this.getErrorMessage(error);
|
|
120
172
|
if (message.includes('404') || message.includes('not found')) {
|
|
121
173
|
return null;
|
|
122
174
|
}
|
|
@@ -137,15 +189,15 @@ class LettaClientWrapper {
|
|
|
137
189
|
})
|
|
138
190
|
.filter((p) => p !== null);
|
|
139
191
|
return await this.client.identities.create({
|
|
140
|
-
identifierKey,
|
|
192
|
+
identifier_key: identifierKey,
|
|
141
193
|
name,
|
|
142
|
-
identityType,
|
|
143
|
-
agentIds,
|
|
194
|
+
identity_type: identityType,
|
|
195
|
+
agent_ids: agentIds,
|
|
144
196
|
properties: propertiesToUpsert,
|
|
145
197
|
});
|
|
146
198
|
}
|
|
147
199
|
catch (error) {
|
|
148
|
-
const message =
|
|
200
|
+
const message = this.getErrorMessage(error);
|
|
149
201
|
throw new Error(`Failed to create identity: ${message}`);
|
|
150
202
|
}
|
|
151
203
|
}
|
|
@@ -212,10 +264,10 @@ class LettaClientWrapper {
|
|
|
212
264
|
return existingIdentity;
|
|
213
265
|
}
|
|
214
266
|
return await this.client.identities.upsert({
|
|
215
|
-
identifierKey,
|
|
267
|
+
identifier_key: identifierKey,
|
|
216
268
|
name: finalName,
|
|
217
|
-
|
|
218
|
-
|
|
269
|
+
identity_type: finalIdentityType,
|
|
270
|
+
agent_ids: finalAgentIds,
|
|
219
271
|
properties: finalProperties,
|
|
220
272
|
});
|
|
221
273
|
}
|
|
@@ -295,7 +347,7 @@ class LettaClientWrapper {
|
|
|
295
347
|
messages: [{ role: 'user', content: message }],
|
|
296
348
|
};
|
|
297
349
|
if (options.maxSteps) {
|
|
298
|
-
messagePayload.
|
|
350
|
+
messagePayload.max_steps = options.maxSteps;
|
|
299
351
|
}
|
|
300
352
|
if (identityId) {
|
|
301
353
|
messagePayload.messages[0].sender_id = identityId;
|
|
@@ -303,14 +355,35 @@ class LettaClientWrapper {
|
|
|
303
355
|
if (options.background) {
|
|
304
356
|
messagePayload.background = options.background;
|
|
305
357
|
}
|
|
358
|
+
if (options.streaming) {
|
|
359
|
+
messagePayload.streaming = options.streaming;
|
|
360
|
+
}
|
|
306
361
|
if (options.streamTokens) {
|
|
307
362
|
messagePayload.stream_tokens = options.streamTokens;
|
|
308
363
|
}
|
|
364
|
+
if (options.includePings) {
|
|
365
|
+
messagePayload.include_pings = options.includePings;
|
|
366
|
+
}
|
|
367
|
+
if (options.enableThinking && options.enableThinking !== 'auto') {
|
|
368
|
+
messagePayload.enable_thinking = options.enableThinking;
|
|
369
|
+
}
|
|
370
|
+
if (options.includeReturnMessageTypes) {
|
|
371
|
+
messagePayload.include_return_message_types = options.includeReturnMessageTypes;
|
|
372
|
+
}
|
|
373
|
+
if (options.useAssistantMessage) {
|
|
374
|
+
messagePayload.use_assistant_message = options.useAssistantMessage;
|
|
375
|
+
if (options.assistantMessageToolName) {
|
|
376
|
+
messagePayload.assistant_message_tool_name = options.assistantMessageToolName;
|
|
377
|
+
}
|
|
378
|
+
if (options.assistantMessageToolKwarg) {
|
|
379
|
+
messagePayload.assistant_message_tool_kwarg = options.assistantMessageToolKwarg;
|
|
380
|
+
}
|
|
381
|
+
}
|
|
309
382
|
try {
|
|
310
383
|
return await this.client.agents.messages.create(agentId, messagePayload);
|
|
311
384
|
}
|
|
312
385
|
catch (error) {
|
|
313
|
-
const message =
|
|
386
|
+
const message = this.getErrorMessage(error);
|
|
314
387
|
throw new Error(`Failed to send message to agent ${agentId}: ${message}`);
|
|
315
388
|
}
|
|
316
389
|
}
|
|
@@ -335,49 +408,30 @@ class LettaClientWrapper {
|
|
|
335
408
|
async listLlmModels() {
|
|
336
409
|
try {
|
|
337
410
|
const response = await this.client.models.list();
|
|
338
|
-
|
|
339
|
-
return response;
|
|
340
|
-
}
|
|
341
|
-
if (response && Array.isArray(response.data)) {
|
|
342
|
-
return response.data;
|
|
343
|
-
}
|
|
344
|
-
if (response && Array.isArray(response.models)) {
|
|
345
|
-
return response.models;
|
|
346
|
-
}
|
|
347
|
-
console.warn('Unexpected response structure from models.list():', response);
|
|
348
|
-
return [];
|
|
411
|
+
return await this.collectResult(response);
|
|
349
412
|
}
|
|
350
413
|
catch (error) {
|
|
351
|
-
const message =
|
|
414
|
+
const message = this.getErrorMessage(error);
|
|
352
415
|
throw new Error(`Failed to list LLM models: ${message}`);
|
|
353
416
|
}
|
|
354
417
|
}
|
|
355
418
|
async listEmbeddingModels() {
|
|
356
419
|
try {
|
|
357
420
|
const response = await this.client.models.embeddings.list();
|
|
358
|
-
|
|
359
|
-
return response;
|
|
360
|
-
}
|
|
361
|
-
if (response && Array.isArray(response.data)) {
|
|
362
|
-
return response.data;
|
|
363
|
-
}
|
|
364
|
-
if (response && Array.isArray(response.models)) {
|
|
365
|
-
return response.models;
|
|
366
|
-
}
|
|
367
|
-
console.warn('Unexpected response structure from models.embeddings.list():', response);
|
|
368
|
-
return [];
|
|
421
|
+
return await this.collectResult(response);
|
|
369
422
|
}
|
|
370
423
|
catch (error) {
|
|
371
|
-
const message =
|
|
424
|
+
const message = this.getErrorMessage(error);
|
|
372
425
|
throw new Error(`Failed to list embedding models: ${message}`);
|
|
373
426
|
}
|
|
374
427
|
}
|
|
375
428
|
async listTools() {
|
|
376
429
|
try {
|
|
377
|
-
|
|
430
|
+
const result = this.client.tools.list();
|
|
431
|
+
return await this.collectResult(result);
|
|
378
432
|
}
|
|
379
433
|
catch (error) {
|
|
380
|
-
const message =
|
|
434
|
+
const message = this.getErrorMessage(error);
|
|
381
435
|
throw new Error(`Failed to list tools: ${message}`);
|
|
382
436
|
}
|
|
383
437
|
}
|
|
@@ -386,7 +440,7 @@ class LettaClientWrapper {
|
|
|
386
440
|
return await this.client.tools.create(params);
|
|
387
441
|
}
|
|
388
442
|
catch (error) {
|
|
389
|
-
const message =
|
|
443
|
+
const message = this.getErrorMessage(error);
|
|
390
444
|
throw new Error(`Failed to create tool: ${message}`);
|
|
391
445
|
}
|
|
392
446
|
}
|
|
@@ -395,7 +449,7 @@ class LettaClientWrapper {
|
|
|
395
449
|
return await this.client.tools.retrieve(toolId);
|
|
396
450
|
}
|
|
397
451
|
catch (error) {
|
|
398
|
-
const message =
|
|
452
|
+
const message = this.getErrorMessage(error);
|
|
399
453
|
throw new Error(`Failed to get tool: ${message}`);
|
|
400
454
|
}
|
|
401
455
|
}
|
|
@@ -404,7 +458,7 @@ class LettaClientWrapper {
|
|
|
404
458
|
return await this.client.tools.update(toolId, updates);
|
|
405
459
|
}
|
|
406
460
|
catch (error) {
|
|
407
|
-
const message =
|
|
461
|
+
const message = this.getErrorMessage(error);
|
|
408
462
|
throw new Error(`Failed to update tool: ${message}`);
|
|
409
463
|
}
|
|
410
464
|
}
|
|
@@ -413,7 +467,7 @@ class LettaClientWrapper {
|
|
|
413
467
|
return await this.client.tools.delete(toolId);
|
|
414
468
|
}
|
|
415
469
|
catch (error) {
|
|
416
|
-
const message =
|
|
470
|
+
const message = this.getErrorMessage(error);
|
|
417
471
|
throw new Error(`Failed to delete tool: ${message}`);
|
|
418
472
|
}
|
|
419
473
|
}
|
|
@@ -422,25 +476,26 @@ class LettaClientWrapper {
|
|
|
422
476
|
return await this.client.tools.upsert(params);
|
|
423
477
|
}
|
|
424
478
|
catch (error) {
|
|
425
|
-
const message =
|
|
479
|
+
const message = this.getErrorMessage(error);
|
|
426
480
|
throw new Error(`Failed to upsert tool: ${message}`);
|
|
427
481
|
}
|
|
428
482
|
}
|
|
429
|
-
async
|
|
483
|
+
async searchTools(params) {
|
|
430
484
|
try {
|
|
431
|
-
return await this.client.tools.
|
|
485
|
+
return await this.client.tools.search(params);
|
|
432
486
|
}
|
|
433
487
|
catch (error) {
|
|
434
|
-
const message =
|
|
435
|
-
throw new Error(`Failed to
|
|
488
|
+
const message = this.getErrorMessage(error);
|
|
489
|
+
throw new Error(`Failed to search tools: ${message}`);
|
|
436
490
|
}
|
|
437
491
|
}
|
|
438
492
|
async listBlocks(limit) {
|
|
439
493
|
try {
|
|
440
|
-
|
|
494
|
+
const result = this.client.blocks.list({ limit });
|
|
495
|
+
return await this.collectResult(result);
|
|
441
496
|
}
|
|
442
497
|
catch (error) {
|
|
443
|
-
const message =
|
|
498
|
+
const message = this.getErrorMessage(error);
|
|
444
499
|
throw new Error(`Failed to list blocks: ${message}`);
|
|
445
500
|
}
|
|
446
501
|
}
|
|
@@ -449,7 +504,7 @@ class LettaClientWrapper {
|
|
|
449
504
|
return await this.client.blocks.create(params);
|
|
450
505
|
}
|
|
451
506
|
catch (error) {
|
|
452
|
-
const message =
|
|
507
|
+
const message = this.getErrorMessage(error);
|
|
453
508
|
throw new Error(`Failed to create block: ${message}`);
|
|
454
509
|
}
|
|
455
510
|
}
|
|
@@ -458,7 +513,7 @@ class LettaClientWrapper {
|
|
|
458
513
|
return await this.client.blocks.retrieve(blockId);
|
|
459
514
|
}
|
|
460
515
|
catch (error) {
|
|
461
|
-
const message =
|
|
516
|
+
const message = this.getErrorMessage(error);
|
|
462
517
|
throw new Error(`Failed to get block: ${message}`);
|
|
463
518
|
}
|
|
464
519
|
}
|
|
@@ -467,7 +522,7 @@ class LettaClientWrapper {
|
|
|
467
522
|
return await this.client.blocks.update(blockId, updates);
|
|
468
523
|
}
|
|
469
524
|
catch (error) {
|
|
470
|
-
const message =
|
|
525
|
+
const message = this.getErrorMessage(error);
|
|
471
526
|
throw new Error(`Failed to update block: ${message}`);
|
|
472
527
|
}
|
|
473
528
|
}
|
|
@@ -476,16 +531,17 @@ class LettaClientWrapper {
|
|
|
476
531
|
return await this.client.blocks.delete(blockId);
|
|
477
532
|
}
|
|
478
533
|
catch (error) {
|
|
479
|
-
const message =
|
|
534
|
+
const message = this.getErrorMessage(error);
|
|
480
535
|
throw new Error(`Failed to delete block: ${message}`);
|
|
481
536
|
}
|
|
482
537
|
}
|
|
483
538
|
async listFolders() {
|
|
484
539
|
try {
|
|
485
|
-
|
|
540
|
+
const result = this.client.folders.list();
|
|
541
|
+
return await this.collectResult(result);
|
|
486
542
|
}
|
|
487
543
|
catch (error) {
|
|
488
|
-
const message =
|
|
544
|
+
const message = this.getErrorMessage(error);
|
|
489
545
|
throw new Error(`Failed to list folders: ${message}`);
|
|
490
546
|
}
|
|
491
547
|
}
|
|
@@ -494,7 +550,7 @@ class LettaClientWrapper {
|
|
|
494
550
|
return await this.client.folders.create(params);
|
|
495
551
|
}
|
|
496
552
|
catch (error) {
|
|
497
|
-
const message =
|
|
553
|
+
const message = this.getErrorMessage(error);
|
|
498
554
|
throw new Error(`Failed to create folder: ${message}`);
|
|
499
555
|
}
|
|
500
556
|
}
|
|
@@ -503,7 +559,7 @@ class LettaClientWrapper {
|
|
|
503
559
|
return await this.client.folders.retrieve(folderId);
|
|
504
560
|
}
|
|
505
561
|
catch (error) {
|
|
506
|
-
const message =
|
|
562
|
+
const message = this.getErrorMessage(error);
|
|
507
563
|
throw new Error(`Failed to get folder: ${message}`);
|
|
508
564
|
}
|
|
509
565
|
}
|
|
@@ -512,7 +568,7 @@ class LettaClientWrapper {
|
|
|
512
568
|
return await this.client.folders.update(folderId, updates);
|
|
513
569
|
}
|
|
514
570
|
catch (error) {
|
|
515
|
-
const message =
|
|
571
|
+
const message = this.getErrorMessage(error);
|
|
516
572
|
throw new Error(`Failed to update folder: ${message}`);
|
|
517
573
|
}
|
|
518
574
|
}
|
|
@@ -521,16 +577,17 @@ class LettaClientWrapper {
|
|
|
521
577
|
return await this.client.folders.delete(folderId);
|
|
522
578
|
}
|
|
523
579
|
catch (error) {
|
|
524
|
-
const message =
|
|
580
|
+
const message = this.getErrorMessage(error);
|
|
525
581
|
throw new Error(`Failed to delete folder: ${message}`);
|
|
526
582
|
}
|
|
527
583
|
}
|
|
528
584
|
async listMcpServers() {
|
|
529
585
|
try {
|
|
530
|
-
|
|
586
|
+
const result = this.client.mcpServers.list();
|
|
587
|
+
return await this.collectResult(result);
|
|
531
588
|
}
|
|
532
589
|
catch (error) {
|
|
533
|
-
const message =
|
|
590
|
+
const message = this.getErrorMessage(error);
|
|
534
591
|
throw new Error(`Failed to list MCP servers: ${message}`);
|
|
535
592
|
}
|
|
536
593
|
}
|
|
@@ -539,7 +596,7 @@ class LettaClientWrapper {
|
|
|
539
596
|
return await this.client.mcpServers.create(params);
|
|
540
597
|
}
|
|
541
598
|
catch (error) {
|
|
542
|
-
const message =
|
|
599
|
+
const message = this.getErrorMessage(error);
|
|
543
600
|
throw new Error(`Failed to create MCP server: ${message}`);
|
|
544
601
|
}
|
|
545
602
|
}
|
|
@@ -548,7 +605,7 @@ class LettaClientWrapper {
|
|
|
548
605
|
return await this.client.mcpServers.retrieve(serverId);
|
|
549
606
|
}
|
|
550
607
|
catch (error) {
|
|
551
|
-
const message =
|
|
608
|
+
const message = this.getErrorMessage(error);
|
|
552
609
|
throw new Error(`Failed to get MCP server: ${message}`);
|
|
553
610
|
}
|
|
554
611
|
}
|
|
@@ -557,7 +614,7 @@ class LettaClientWrapper {
|
|
|
557
614
|
return await this.client.mcpServers.update(serverId, updates);
|
|
558
615
|
}
|
|
559
616
|
catch (error) {
|
|
560
|
-
const message =
|
|
617
|
+
const message = this.getErrorMessage(error);
|
|
561
618
|
throw new Error(`Failed to update MCP server: ${message}`);
|
|
562
619
|
}
|
|
563
620
|
}
|
|
@@ -566,25 +623,49 @@ class LettaClientWrapper {
|
|
|
566
623
|
return await this.client.mcpServers.delete(serverId);
|
|
567
624
|
}
|
|
568
625
|
catch (error) {
|
|
569
|
-
const message =
|
|
626
|
+
const message = this.getErrorMessage(error);
|
|
570
627
|
throw new Error(`Failed to delete MCP server: ${message}`);
|
|
571
628
|
}
|
|
572
629
|
}
|
|
573
|
-
async refreshMcpServer(serverId) {
|
|
630
|
+
async refreshMcpServer(serverId, params) {
|
|
574
631
|
try {
|
|
632
|
+
if (params && Object.keys(params).length) {
|
|
633
|
+
return await this.client.mcpServers.refresh(serverId, params);
|
|
634
|
+
}
|
|
575
635
|
return await this.client.mcpServers.refresh(serverId);
|
|
576
636
|
}
|
|
577
637
|
catch (error) {
|
|
578
|
-
const message =
|
|
638
|
+
const message = this.getErrorMessage(error);
|
|
579
639
|
throw new Error(`Failed to refresh MCP server: ${message}`);
|
|
580
640
|
}
|
|
581
641
|
}
|
|
642
|
+
async listMcpServerTools(serverId) {
|
|
643
|
+
try {
|
|
644
|
+
return await this.client.mcpServers.tools.list(serverId);
|
|
645
|
+
}
|
|
646
|
+
catch (error) {
|
|
647
|
+
const message = this.getErrorMessage(error);
|
|
648
|
+
throw new Error(`Failed to list MCP server tools: ${message}`);
|
|
649
|
+
}
|
|
650
|
+
}
|
|
651
|
+
async getMcpServerTool(serverId, toolId) {
|
|
652
|
+
try {
|
|
653
|
+
return await this.client.mcpServers.tools.retrieve(toolId, {
|
|
654
|
+
mcp_server_id: serverId,
|
|
655
|
+
});
|
|
656
|
+
}
|
|
657
|
+
catch (error) {
|
|
658
|
+
const message = this.getErrorMessage(error);
|
|
659
|
+
throw new Error(`Failed to retrieve MCP server tool: ${message}`);
|
|
660
|
+
}
|
|
661
|
+
}
|
|
582
662
|
async listArchives() {
|
|
583
663
|
try {
|
|
584
|
-
|
|
664
|
+
const result = this.client.archives.list();
|
|
665
|
+
return await this.collectResult(result);
|
|
585
666
|
}
|
|
586
667
|
catch (error) {
|
|
587
|
-
const message =
|
|
668
|
+
const message = this.getErrorMessage(error);
|
|
588
669
|
throw new Error(`Failed to list archives: ${message}`);
|
|
589
670
|
}
|
|
590
671
|
}
|
|
@@ -593,7 +674,7 @@ class LettaClientWrapper {
|
|
|
593
674
|
return await this.client.archives.create(params);
|
|
594
675
|
}
|
|
595
676
|
catch (error) {
|
|
596
|
-
const message =
|
|
677
|
+
const message = this.getErrorMessage(error);
|
|
597
678
|
throw new Error(`Failed to create archive: ${message}`);
|
|
598
679
|
}
|
|
599
680
|
}
|
|
@@ -602,7 +683,7 @@ class LettaClientWrapper {
|
|
|
602
683
|
return await this.client.archives.retrieve(archiveId);
|
|
603
684
|
}
|
|
604
685
|
catch (error) {
|
|
605
|
-
const message =
|
|
686
|
+
const message = this.getErrorMessage(error);
|
|
606
687
|
throw new Error(`Failed to get archive: ${message}`);
|
|
607
688
|
}
|
|
608
689
|
}
|
|
@@ -611,7 +692,7 @@ class LettaClientWrapper {
|
|
|
611
692
|
return await this.client.archives.update(archiveId, updates);
|
|
612
693
|
}
|
|
613
694
|
catch (error) {
|
|
614
|
-
const message =
|
|
695
|
+
const message = this.getErrorMessage(error);
|
|
615
696
|
throw new Error(`Failed to update archive: ${message}`);
|
|
616
697
|
}
|
|
617
698
|
}
|
|
@@ -620,16 +701,17 @@ class LettaClientWrapper {
|
|
|
620
701
|
return await this.client.archives.delete(archiveId);
|
|
621
702
|
}
|
|
622
703
|
catch (error) {
|
|
623
|
-
const message =
|
|
704
|
+
const message = this.getErrorMessage(error);
|
|
624
705
|
throw new Error(`Failed to delete archive: ${message}`);
|
|
625
706
|
}
|
|
626
707
|
}
|
|
627
708
|
async listBatches() {
|
|
628
709
|
try {
|
|
629
|
-
|
|
710
|
+
const result = this.client.batches.list();
|
|
711
|
+
return await this.collectResult(result);
|
|
630
712
|
}
|
|
631
713
|
catch (error) {
|
|
632
|
-
const message =
|
|
714
|
+
const message = this.getErrorMessage(error);
|
|
633
715
|
throw new Error(`Failed to list batches: ${message}`);
|
|
634
716
|
}
|
|
635
717
|
}
|
|
@@ -638,7 +720,7 @@ class LettaClientWrapper {
|
|
|
638
720
|
return await this.client.batches.create(params);
|
|
639
721
|
}
|
|
640
722
|
catch (error) {
|
|
641
|
-
const message =
|
|
723
|
+
const message = this.getErrorMessage(error);
|
|
642
724
|
throw new Error(`Failed to create batch: ${message}`);
|
|
643
725
|
}
|
|
644
726
|
}
|
|
@@ -647,7 +729,7 @@ class LettaClientWrapper {
|
|
|
647
729
|
return await this.client.batches.retrieve(batchId);
|
|
648
730
|
}
|
|
649
731
|
catch (error) {
|
|
650
|
-
const message =
|
|
732
|
+
const message = this.getErrorMessage(error);
|
|
651
733
|
throw new Error(`Failed to get batch: ${message}`);
|
|
652
734
|
}
|
|
653
735
|
}
|
|
@@ -656,16 +738,17 @@ class LettaClientWrapper {
|
|
|
656
738
|
return await this.client.batches.delete(batchId);
|
|
657
739
|
}
|
|
658
740
|
catch (error) {
|
|
659
|
-
const message =
|
|
741
|
+
const message = this.getErrorMessage(error);
|
|
660
742
|
throw new Error(`Failed to delete batch: ${message}`);
|
|
661
743
|
}
|
|
662
744
|
}
|
|
663
745
|
async listGroups() {
|
|
664
746
|
try {
|
|
665
|
-
|
|
747
|
+
const result = this.client.groups.list();
|
|
748
|
+
return await this.collectResult(result);
|
|
666
749
|
}
|
|
667
750
|
catch (error) {
|
|
668
|
-
const message =
|
|
751
|
+
const message = this.getErrorMessage(error);
|
|
669
752
|
throw new Error(`Failed to list groups: ${message}`);
|
|
670
753
|
}
|
|
671
754
|
}
|
|
@@ -674,7 +757,7 @@ class LettaClientWrapper {
|
|
|
674
757
|
return await this.client.groups.create(params);
|
|
675
758
|
}
|
|
676
759
|
catch (error) {
|
|
677
|
-
const message =
|
|
760
|
+
const message = this.getErrorMessage(error);
|
|
678
761
|
throw new Error(`Failed to create group: ${message}`);
|
|
679
762
|
}
|
|
680
763
|
}
|
|
@@ -683,7 +766,7 @@ class LettaClientWrapper {
|
|
|
683
766
|
return await this.client.groups.retrieve(groupId);
|
|
684
767
|
}
|
|
685
768
|
catch (error) {
|
|
686
|
-
const message =
|
|
769
|
+
const message = this.getErrorMessage(error);
|
|
687
770
|
throw new Error(`Failed to get group: ${message}`);
|
|
688
771
|
}
|
|
689
772
|
}
|
|
@@ -692,7 +775,7 @@ class LettaClientWrapper {
|
|
|
692
775
|
return await this.client.groups.update(groupId, updates);
|
|
693
776
|
}
|
|
694
777
|
catch (error) {
|
|
695
|
-
const message =
|
|
778
|
+
const message = this.getErrorMessage(error);
|
|
696
779
|
throw new Error(`Failed to update group: ${message}`);
|
|
697
780
|
}
|
|
698
781
|
}
|
|
@@ -701,16 +784,17 @@ class LettaClientWrapper {
|
|
|
701
784
|
return await this.client.groups.delete(groupId);
|
|
702
785
|
}
|
|
703
786
|
catch (error) {
|
|
704
|
-
const message =
|
|
787
|
+
const message = this.getErrorMessage(error);
|
|
705
788
|
throw new Error(`Failed to delete group: ${message}`);
|
|
706
789
|
}
|
|
707
790
|
}
|
|
708
791
|
async listRuns() {
|
|
709
792
|
try {
|
|
710
|
-
|
|
793
|
+
const result = this.client.runs.list();
|
|
794
|
+
return await this.collectResult(result);
|
|
711
795
|
}
|
|
712
796
|
catch (error) {
|
|
713
|
-
const message =
|
|
797
|
+
const message = this.getErrorMessage(error);
|
|
714
798
|
throw new Error(`Failed to list runs: ${message}`);
|
|
715
799
|
}
|
|
716
800
|
}
|
|
@@ -719,7 +803,7 @@ class LettaClientWrapper {
|
|
|
719
803
|
return await this.client.runs.create(params);
|
|
720
804
|
}
|
|
721
805
|
catch (error) {
|
|
722
|
-
const message =
|
|
806
|
+
const message = this.getErrorMessage(error);
|
|
723
807
|
throw new Error(`Failed to create run: ${message}`);
|
|
724
808
|
}
|
|
725
809
|
}
|
|
@@ -728,7 +812,7 @@ class LettaClientWrapper {
|
|
|
728
812
|
return await this.client.runs.retrieve(runId);
|
|
729
813
|
}
|
|
730
814
|
catch (error) {
|
|
731
|
-
const message =
|
|
815
|
+
const message = this.getErrorMessage(error);
|
|
732
816
|
throw new Error(`Failed to get run: ${message}`);
|
|
733
817
|
}
|
|
734
818
|
}
|
|
@@ -737,16 +821,17 @@ class LettaClientWrapper {
|
|
|
737
821
|
return await this.client.runs.delete(runId);
|
|
738
822
|
}
|
|
739
823
|
catch (error) {
|
|
740
|
-
const message =
|
|
824
|
+
const message = this.getErrorMessage(error);
|
|
741
825
|
throw new Error(`Failed to delete run: ${message}`);
|
|
742
826
|
}
|
|
743
827
|
}
|
|
744
828
|
async listSteps(params) {
|
|
745
829
|
try {
|
|
746
|
-
|
|
830
|
+
const result = this.client.steps.list(params);
|
|
831
|
+
return await this.collectResult(result);
|
|
747
832
|
}
|
|
748
833
|
catch (error) {
|
|
749
|
-
const message =
|
|
834
|
+
const message = this.getErrorMessage(error);
|
|
750
835
|
throw new Error(`Failed to list steps: ${message}`);
|
|
751
836
|
}
|
|
752
837
|
}
|
|
@@ -755,16 +840,17 @@ class LettaClientWrapper {
|
|
|
755
840
|
return await this.client.steps.retrieve(stepId);
|
|
756
841
|
}
|
|
757
842
|
catch (error) {
|
|
758
|
-
const message =
|
|
843
|
+
const message = this.getErrorMessage(error);
|
|
759
844
|
throw new Error(`Failed to get step: ${message}`);
|
|
760
845
|
}
|
|
761
846
|
}
|
|
762
847
|
async listTags() {
|
|
763
848
|
try {
|
|
764
|
-
|
|
849
|
+
const result = this.client.tags.list();
|
|
850
|
+
return await this.collectResult(result);
|
|
765
851
|
}
|
|
766
852
|
catch (error) {
|
|
767
|
-
const message =
|
|
853
|
+
const message = this.getErrorMessage(error);
|
|
768
854
|
throw new Error(`Failed to list tags: ${message}`);
|
|
769
855
|
}
|
|
770
856
|
}
|
|
@@ -773,16 +859,17 @@ class LettaClientWrapper {
|
|
|
773
859
|
return await this.client.tags.retrieve(tagId);
|
|
774
860
|
}
|
|
775
861
|
catch (error) {
|
|
776
|
-
const message =
|
|
862
|
+
const message = this.getErrorMessage(error);
|
|
777
863
|
throw new Error(`Failed to get tag: ${message}`);
|
|
778
864
|
}
|
|
779
865
|
}
|
|
780
866
|
async listTemplates() {
|
|
781
867
|
try {
|
|
782
|
-
|
|
868
|
+
const result = this.client.templates.list();
|
|
869
|
+
return await this.collectResult(result);
|
|
783
870
|
}
|
|
784
871
|
catch (error) {
|
|
785
|
-
const message =
|
|
872
|
+
const message = this.getErrorMessage(error);
|
|
786
873
|
throw new Error(`Failed to list templates: ${message}`);
|
|
787
874
|
}
|
|
788
875
|
}
|
|
@@ -791,7 +878,7 @@ class LettaClientWrapper {
|
|
|
791
878
|
return await this.client.templates.create(params);
|
|
792
879
|
}
|
|
793
880
|
catch (error) {
|
|
794
|
-
const message =
|
|
881
|
+
const message = this.getErrorMessage(error);
|
|
795
882
|
throw new Error(`Failed to create template: ${message}`);
|
|
796
883
|
}
|
|
797
884
|
}
|
|
@@ -800,7 +887,7 @@ class LettaClientWrapper {
|
|
|
800
887
|
return await this.client.templates.retrieve(templateId);
|
|
801
888
|
}
|
|
802
889
|
catch (error) {
|
|
803
|
-
const message =
|
|
890
|
+
const message = this.getErrorMessage(error);
|
|
804
891
|
throw new Error(`Failed to get template: ${message}`);
|
|
805
892
|
}
|
|
806
893
|
}
|
|
@@ -809,10 +896,162 @@ class LettaClientWrapper {
|
|
|
809
896
|
return await this.client.templates.delete(templateId);
|
|
810
897
|
}
|
|
811
898
|
catch (error) {
|
|
812
|
-
const message =
|
|
899
|
+
const message = this.getErrorMessage(error);
|
|
813
900
|
throw new Error(`Failed to delete template: ${message}`);
|
|
814
901
|
}
|
|
815
902
|
}
|
|
903
|
+
async updateTemplate(templateId, updates) {
|
|
904
|
+
try {
|
|
905
|
+
return await this.client.templates.update(templateId, updates);
|
|
906
|
+
}
|
|
907
|
+
catch (error) {
|
|
908
|
+
const message = this.getErrorMessage(error);
|
|
909
|
+
throw new Error(`Failed to update template: ${message}`);
|
|
910
|
+
}
|
|
911
|
+
}
|
|
912
|
+
async createAgentFromTemplate(templateVersion, params) {
|
|
913
|
+
try {
|
|
914
|
+
return await this.client.templates.agents.create(templateVersion, params);
|
|
915
|
+
}
|
|
916
|
+
catch (error) {
|
|
917
|
+
const message = this.getErrorMessage(error);
|
|
918
|
+
throw new Error(`Failed to create agent from template: ${message}`);
|
|
919
|
+
}
|
|
920
|
+
}
|
|
921
|
+
async createAccessToken(params) {
|
|
922
|
+
try {
|
|
923
|
+
return await this.client.accessTokens.create(params);
|
|
924
|
+
}
|
|
925
|
+
catch (error) {
|
|
926
|
+
const message = this.getErrorMessage(error);
|
|
927
|
+
throw new Error(`Failed to create access token: ${message}`);
|
|
928
|
+
}
|
|
929
|
+
}
|
|
930
|
+
async listAccessTokens() {
|
|
931
|
+
try {
|
|
932
|
+
const result = this.client.accessTokens.list();
|
|
933
|
+
return await this.collectResult(result);
|
|
934
|
+
}
|
|
935
|
+
catch (error) {
|
|
936
|
+
const message = this.getErrorMessage(error);
|
|
937
|
+
throw new Error(`Failed to list access tokens: ${message}`);
|
|
938
|
+
}
|
|
939
|
+
}
|
|
940
|
+
async deleteAccessToken(tokenId) {
|
|
941
|
+
try {
|
|
942
|
+
return await this.client.accessTokens.delete(tokenId);
|
|
943
|
+
}
|
|
944
|
+
catch (error) {
|
|
945
|
+
const message = this.getErrorMessage(error);
|
|
946
|
+
throw new Error(`Failed to delete access token: ${message}`);
|
|
947
|
+
}
|
|
948
|
+
}
|
|
949
|
+
async searchMessages(params) {
|
|
950
|
+
try {
|
|
951
|
+
return await this.client.messages.search(params);
|
|
952
|
+
}
|
|
953
|
+
catch (error) {
|
|
954
|
+
const message = this.getErrorMessage(error);
|
|
955
|
+
throw new Error(`Failed to search messages: ${message}`);
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
async listMessages(params) {
|
|
959
|
+
try {
|
|
960
|
+
const result = this.client.messages.list(params);
|
|
961
|
+
return await this.collectResult(result);
|
|
962
|
+
}
|
|
963
|
+
catch (error) {
|
|
964
|
+
const message = this.getErrorMessage(error);
|
|
965
|
+
throw new Error(`Failed to list messages: ${message}`);
|
|
966
|
+
}
|
|
967
|
+
}
|
|
968
|
+
async listAgentMessages(agentId, params) {
|
|
969
|
+
try {
|
|
970
|
+
const result = this.client.agents.messages.list(agentId, params);
|
|
971
|
+
return await this.collectResult(result);
|
|
972
|
+
}
|
|
973
|
+
catch (error) {
|
|
974
|
+
const message = this.getErrorMessage(error);
|
|
975
|
+
throw new Error(`Failed to list agent messages: ${message}`);
|
|
976
|
+
}
|
|
977
|
+
}
|
|
978
|
+
async searchPassages(params) {
|
|
979
|
+
try {
|
|
980
|
+
return await this.client.passages.search(params);
|
|
981
|
+
}
|
|
982
|
+
catch (error) {
|
|
983
|
+
const message = this.getErrorMessage(error);
|
|
984
|
+
throw new Error(`Failed to search passages: ${message}`);
|
|
985
|
+
}
|
|
986
|
+
}
|
|
987
|
+
async listAgentPassages(agentId, params) {
|
|
988
|
+
try {
|
|
989
|
+
const result = this.client.agents.passages.list(agentId, params);
|
|
990
|
+
return await this.collectResult(result);
|
|
991
|
+
}
|
|
992
|
+
catch (error) {
|
|
993
|
+
const message = this.getErrorMessage(error);
|
|
994
|
+
throw new Error(`Failed to list agent passages: ${message}`);
|
|
995
|
+
}
|
|
996
|
+
}
|
|
997
|
+
async createAgentPassage(agentId, params) {
|
|
998
|
+
try {
|
|
999
|
+
return await this.client.agents.passages.create(agentId, params);
|
|
1000
|
+
}
|
|
1001
|
+
catch (error) {
|
|
1002
|
+
const message = this.getErrorMessage(error);
|
|
1003
|
+
throw new Error(`Failed to create agent passage: ${message}`);
|
|
1004
|
+
}
|
|
1005
|
+
}
|
|
1006
|
+
async deleteAgentPassage(agentId, passageId) {
|
|
1007
|
+
try {
|
|
1008
|
+
return await this.client.agents.passages.delete(passageId, { agent_id: agentId });
|
|
1009
|
+
}
|
|
1010
|
+
catch (error) {
|
|
1011
|
+
const message = this.getErrorMessage(error);
|
|
1012
|
+
throw new Error(`Failed to delete agent passage: ${message}`);
|
|
1013
|
+
}
|
|
1014
|
+
}
|
|
1015
|
+
async runAgentTool(agentId, toolName, args) {
|
|
1016
|
+
try {
|
|
1017
|
+
return await this.client.agents.tools.run(toolName, {
|
|
1018
|
+
agent_id: agentId,
|
|
1019
|
+
args,
|
|
1020
|
+
});
|
|
1021
|
+
}
|
|
1022
|
+
catch (error) {
|
|
1023
|
+
const message = this.getErrorMessage(error);
|
|
1024
|
+
throw new Error(`Failed to run agent tool: ${message}`);
|
|
1025
|
+
}
|
|
1026
|
+
}
|
|
1027
|
+
getErrorMessage(error) {
|
|
1028
|
+
return error instanceof Error ? error.message : String(error);
|
|
1029
|
+
}
|
|
1030
|
+
async collectResult(result, limit) {
|
|
1031
|
+
if (!result)
|
|
1032
|
+
return [];
|
|
1033
|
+
if (Array.isArray(result))
|
|
1034
|
+
return result;
|
|
1035
|
+
if (typeof result === 'object' && result !== null) {
|
|
1036
|
+
const asAny = result;
|
|
1037
|
+
if (Array.isArray(asAny.data))
|
|
1038
|
+
return asAny.data;
|
|
1039
|
+
if (Array.isArray(asAny.models))
|
|
1040
|
+
return asAny.models;
|
|
1041
|
+
}
|
|
1042
|
+
const items = [];
|
|
1043
|
+
const maybeIterable = result;
|
|
1044
|
+
const isIterable = typeof maybeIterable?.[Symbol.asyncIterator] === 'function' ||
|
|
1045
|
+
typeof maybeIterable?.[Symbol.iterator] === 'function';
|
|
1046
|
+
if (!isIterable)
|
|
1047
|
+
return [];
|
|
1048
|
+
for await (const item of maybeIterable) {
|
|
1049
|
+
items.push(item);
|
|
1050
|
+
if (limit !== undefined && items.length >= limit)
|
|
1051
|
+
break;
|
|
1052
|
+
}
|
|
1053
|
+
return items;
|
|
1054
|
+
}
|
|
816
1055
|
}
|
|
817
1056
|
exports.LettaClientWrapper = LettaClientWrapper;
|
|
818
1057
|
//# sourceMappingURL=client.js.map
|