@mastra/server 0.0.0-mcp-server-deploy-20250507160341 → 0.0.0-pass-headers-for-create-mastra-client-20250529190531
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +48 -135
- package/dist/_tsup-dts-rollup.d.cts +268 -186
- package/dist/_tsup-dts-rollup.d.ts +268 -186
- package/dist/{chunk-4JINXASC.js → chunk-55DOQLP6.js} +5 -4
- package/dist/{chunk-QN4KF3BH.cjs → chunk-57CJTIPW.cjs} +2 -2
- package/dist/chunk-5SN4U5AC.cjs +508 -0
- package/dist/{chunk-ZLBRQFDD.cjs → chunk-64U3UDTH.cjs} +2 -2
- package/dist/chunk-75ZPJI57.cjs +9 -0
- package/dist/{chunk-4BIX6GMY.cjs → chunk-A3KDUGS7.cjs} +78 -28
- package/dist/{chunk-M56ECCHK.cjs → chunk-BNEY4P4P.cjs} +20 -19
- package/dist/{chunk-QJ3AHN64.js → chunk-C7564HUT.js} +4 -3
- package/dist/{chunk-RBQASTUP.js → chunk-DJJIUEL2.js} +13 -5
- package/dist/{chunk-3EJZQ6TQ.js → chunk-DQLE3DVM.js} +5 -5
- package/dist/{chunk-L7XE5QTW.js → chunk-H5PTF3Y4.js} +1 -1
- package/dist/{chunk-Q6SHQECN.js → chunk-HFWCEP5S.js} +4 -3
- package/dist/{chunk-Y3SV5XK4.js → chunk-J3PKLB3A.js} +60 -10
- package/dist/{chunk-IQTNZSFP.js → chunk-KUNQFY2W.js} +103 -50
- package/dist/chunk-LIVAK2DM.js +2001 -0
- package/dist/{chunk-3AHQ5RGN.js → chunk-M5ABIP7D.js} +1 -1
- package/dist/{chunk-AMVOS7YB.cjs → chunk-MHKNLNAN.cjs} +9 -8
- package/dist/chunk-MLKGABMK.js +7 -0
- package/dist/chunk-MMO2HDM6.cjs +378 -0
- package/dist/{chunk-SKBVVI24.cjs → chunk-NEOOQUKW.cjs} +11 -11
- package/dist/{chunk-TRDNDNGQ.js → chunk-NYN7KFXL.js} +1 -7
- package/dist/{chunk-FV45V6WC.cjs → chunk-OCWPVYNI.cjs} +0 -7
- package/dist/{chunk-BPL2CBLV.js → chunk-OR3CIE2H.js} +3 -2
- package/dist/chunk-P6SCPDYW.js +500 -0
- package/dist/{chunk-5JNVY6DU.js → chunk-TJKLBTFB.js} +20 -8
- package/dist/{chunk-5YGDYMRB.cjs → chunk-VPNDC2DI.cjs} +14 -13
- package/dist/{chunk-3XTEV33Q.js → chunk-W7VCKPAD.js} +53 -50
- package/dist/{chunk-2FJURXCL.cjs → chunk-Y7UWRW5X.cjs} +43 -35
- package/dist/{chunk-55HTWX4C.cjs → chunk-YBVOQN4M.cjs} +20 -19
- package/dist/chunk-YIOVBYZH.cjs +332 -0
- package/dist/chunk-YWLUOY3D.cjs +2004 -0
- package/dist/{chunk-D3G23FP3.cjs → chunk-ZE5AAC4I.cjs} +37 -25
- package/dist/index.cjs +0 -12
- package/dist/index.d.cts +1 -2
- package/dist/index.d.ts +1 -2
- package/dist/index.js +1 -1
- package/dist/server/handlers/a2a.cjs +30 -0
- package/dist/server/handlers/a2a.d.cts +6 -0
- package/dist/server/handlers/a2a.d.ts +6 -0
- package/dist/server/handlers/a2a.js +1 -0
- package/dist/server/handlers/agents.cjs +7 -7
- package/dist/server/handlers/agents.js +1 -1
- package/dist/server/handlers/error.cjs +2 -2
- package/dist/server/handlers/error.js +1 -1
- package/dist/server/handlers/legacyWorkflows.cjs +46 -0
- package/dist/server/handlers/legacyWorkflows.d.cts +10 -0
- package/dist/server/handlers/legacyWorkflows.d.ts +10 -0
- package/dist/server/handlers/legacyWorkflows.js +1 -0
- package/dist/server/handlers/logs.cjs +4 -4
- package/dist/server/handlers/logs.js +1 -1
- package/dist/server/handlers/memory.cjs +9 -9
- package/dist/server/handlers/memory.js +1 -1
- package/dist/server/handlers/network.cjs +5 -5
- package/dist/server/handlers/network.js +1 -1
- package/dist/server/handlers/telemetry.cjs +3 -3
- package/dist/server/handlers/telemetry.js +1 -1
- package/dist/server/handlers/tools.cjs +5 -5
- package/dist/server/handlers/tools.js +1 -1
- package/dist/server/handlers/utils.cjs +2 -2
- package/dist/server/handlers/utils.js +1 -1
- package/dist/server/handlers/vector.cjs +7 -7
- package/dist/server/handlers/vector.js +1 -1
- package/dist/server/handlers/voice.cjs +4 -4
- package/dist/server/handlers/voice.js +1 -1
- package/dist/server/handlers/workflows.cjs +17 -13
- package/dist/server/handlers/workflows.d.cts +3 -2
- package/dist/server/handlers/workflows.d.ts +3 -2
- package/dist/server/handlers/workflows.js +1 -1
- package/dist/server/handlers.cjs +31 -26
- package/dist/server/handlers.d.cts +2 -1
- package/dist/server/handlers.d.ts +2 -1
- package/dist/server/handlers.js +11 -10
- package/package.json +7 -5
- package/dist/chunk-5SWCVTNL.cjs +0 -5579
- package/dist/chunk-74DLDQTQ.cjs +0 -36
- package/dist/chunk-CHFORQ7J.cjs +0 -329
- package/dist/chunk-FOXHTOQZ.cjs +0 -324
- package/dist/chunk-HAA5T7JL.js +0 -33
- package/dist/chunk-OMN3UI6X.js +0 -5576
- package/dist/server/handlers/mcp.cjs +0 -14
- package/dist/server/handlers/mcp.d.cts +0 -2
- package/dist/server/handlers/mcp.d.ts +0 -2
- package/dist/server/handlers/mcp.js +0 -1
- package/dist/server/handlers/vNextWorkflows.cjs +0 -46
- package/dist/server/handlers/vNextWorkflows.d.cts +0 -10
- package/dist/server/handlers/vNextWorkflows.d.ts +0 -10
- package/dist/server/handlers/vNextWorkflows.js +0 -1
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var
|
|
3
|
+
var chunkYWLUOY3D_cjs = require('./chunk-YWLUOY3D.cjs');
|
|
4
|
+
var chunk57CJTIPW_cjs = require('./chunk-57CJTIPW.cjs');
|
|
5
|
+
var chunk64U3UDTH_cjs = require('./chunk-64U3UDTH.cjs');
|
|
6
|
+
var chunkOCWPVYNI_cjs = require('./chunk-OCWPVYNI.cjs');
|
|
7
|
+
var chunk75ZPJI57_cjs = require('./chunk-75ZPJI57.cjs');
|
|
8
|
+
var runtimeContext = require('@mastra/core/runtime-context');
|
|
7
9
|
|
|
8
10
|
// src/server/handlers/agents.ts
|
|
9
11
|
var agents_exports = {};
|
|
10
|
-
|
|
12
|
+
chunk75ZPJI57_cjs.__export(agents_exports, {
|
|
11
13
|
generateHandler: () => generateHandler,
|
|
12
14
|
getAgentByIdHandler: () => getAgentByIdHandler,
|
|
13
15
|
getAgentsHandler: () => getAgentsHandler,
|
|
@@ -27,18 +29,38 @@ async function getAgentsHandler({ mastra, runtimeContext }) {
|
|
|
27
29
|
const _tool = tool;
|
|
28
30
|
acc[key] = {
|
|
29
31
|
..._tool,
|
|
30
|
-
inputSchema: _tool.inputSchema ?
|
|
31
|
-
outputSchema: _tool.outputSchema ?
|
|
32
|
+
inputSchema: _tool.inputSchema ? chunkYWLUOY3D_cjs.stringify(chunkYWLUOY3D_cjs.esm_default(_tool.inputSchema)) : void 0,
|
|
33
|
+
outputSchema: _tool.outputSchema ? chunkYWLUOY3D_cjs.stringify(chunkYWLUOY3D_cjs.esm_default(_tool.outputSchema)) : void 0
|
|
32
34
|
};
|
|
33
35
|
return acc;
|
|
34
36
|
}, {});
|
|
37
|
+
let serializedAgentWorkflows = {};
|
|
38
|
+
if ("getWorkflows" in agent) {
|
|
39
|
+
const logger = mastra.getLogger();
|
|
40
|
+
try {
|
|
41
|
+
const workflows = await agent.getWorkflows({ runtimeContext });
|
|
42
|
+
serializedAgentWorkflows = Object.entries(workflows || {}).reduce((acc, [key, workflow]) => {
|
|
43
|
+
return {
|
|
44
|
+
...acc,
|
|
45
|
+
[key]: {
|
|
46
|
+
name: workflow.name
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
}, {});
|
|
50
|
+
} catch (error) {
|
|
51
|
+
logger.error("Error getting workflows for agent", { agentName: agent.name, error });
|
|
52
|
+
}
|
|
53
|
+
}
|
|
35
54
|
return {
|
|
36
55
|
id,
|
|
37
56
|
name: agent.name,
|
|
38
57
|
instructions,
|
|
39
58
|
tools: serializedAgentTools,
|
|
59
|
+
workflows: serializedAgentWorkflows,
|
|
40
60
|
provider: llm?.getProvider(),
|
|
41
|
-
modelId: llm?.getModelId()
|
|
61
|
+
modelId: llm?.getModelId(),
|
|
62
|
+
defaultGenerateOptions: agent.getDefaultGenerateOptions(),
|
|
63
|
+
defaultStreamOptions: agent.getDefaultStreamOptions()
|
|
42
64
|
};
|
|
43
65
|
})
|
|
44
66
|
);
|
|
@@ -48,7 +70,7 @@ async function getAgentsHandler({ mastra, runtimeContext }) {
|
|
|
48
70
|
}, {});
|
|
49
71
|
return serializedAgents;
|
|
50
72
|
} catch (error) {
|
|
51
|
-
return
|
|
73
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error getting agents");
|
|
52
74
|
}
|
|
53
75
|
}
|
|
54
76
|
async function getAgentByIdHandler({
|
|
@@ -59,29 +81,49 @@ async function getAgentByIdHandler({
|
|
|
59
81
|
try {
|
|
60
82
|
const agent = mastra.getAgent(agentId);
|
|
61
83
|
if (!agent) {
|
|
62
|
-
throw new
|
|
84
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(404, { message: "Agent not found" });
|
|
63
85
|
}
|
|
64
86
|
const tools = await agent.getTools({ runtimeContext });
|
|
65
87
|
const serializedAgentTools = Object.entries(tools || {}).reduce((acc, [key, tool]) => {
|
|
66
88
|
const _tool = tool;
|
|
67
89
|
acc[key] = {
|
|
68
90
|
..._tool,
|
|
69
|
-
inputSchema: _tool.inputSchema ?
|
|
70
|
-
outputSchema: _tool.outputSchema ?
|
|
91
|
+
inputSchema: _tool.inputSchema ? chunkYWLUOY3D_cjs.stringify(chunkYWLUOY3D_cjs.esm_default(_tool.inputSchema)) : void 0,
|
|
92
|
+
outputSchema: _tool.outputSchema ? chunkYWLUOY3D_cjs.stringify(chunkYWLUOY3D_cjs.esm_default(_tool.outputSchema)) : void 0
|
|
71
93
|
};
|
|
72
94
|
return acc;
|
|
73
95
|
}, {});
|
|
96
|
+
let serializedAgentWorkflows = {};
|
|
97
|
+
if ("getWorkflows" in agent) {
|
|
98
|
+
const logger = mastra.getLogger();
|
|
99
|
+
try {
|
|
100
|
+
const workflows = await agent.getWorkflows({ runtimeContext });
|
|
101
|
+
serializedAgentWorkflows = Object.entries(workflows || {}).reduce((acc, [key, workflow]) => {
|
|
102
|
+
return {
|
|
103
|
+
...acc,
|
|
104
|
+
[key]: {
|
|
105
|
+
name: workflow.name
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
}, {});
|
|
109
|
+
} catch (error) {
|
|
110
|
+
logger.error("Error getting workflows for agent", { agentName: agent.name, error });
|
|
111
|
+
}
|
|
112
|
+
}
|
|
74
113
|
const instructions = await agent.getInstructions({ runtimeContext });
|
|
75
114
|
const llm = await agent.getLLM({ runtimeContext });
|
|
76
115
|
return {
|
|
77
116
|
name: agent.name,
|
|
78
117
|
instructions,
|
|
79
118
|
tools: serializedAgentTools,
|
|
119
|
+
workflows: serializedAgentWorkflows,
|
|
80
120
|
provider: llm?.getProvider(),
|
|
81
|
-
modelId: llm?.getModelId()
|
|
121
|
+
modelId: llm?.getModelId(),
|
|
122
|
+
defaultGenerateOptions: agent.getDefaultGenerateOptions(),
|
|
123
|
+
defaultStreamOptions: agent.getDefaultStreamOptions()
|
|
82
124
|
};
|
|
83
125
|
} catch (error) {
|
|
84
|
-
return
|
|
126
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error getting agent");
|
|
85
127
|
}
|
|
86
128
|
}
|
|
87
129
|
async function getEvalsByAgentIdHandler({
|
|
@@ -100,7 +142,7 @@ async function getEvalsByAgentIdHandler({
|
|
|
100
142
|
evals
|
|
101
143
|
};
|
|
102
144
|
} catch (error) {
|
|
103
|
-
return
|
|
145
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error getting test evals");
|
|
104
146
|
}
|
|
105
147
|
}
|
|
106
148
|
async function getLiveEvalsByAgentIdHandler({
|
|
@@ -119,53 +161,61 @@ async function getLiveEvalsByAgentIdHandler({
|
|
|
119
161
|
evals
|
|
120
162
|
};
|
|
121
163
|
} catch (error) {
|
|
122
|
-
return
|
|
164
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error getting live evals");
|
|
123
165
|
}
|
|
124
166
|
}
|
|
125
167
|
async function generateHandler({
|
|
126
168
|
mastra,
|
|
127
|
-
runtimeContext,
|
|
169
|
+
runtimeContext: runtimeContext$1,
|
|
128
170
|
agentId,
|
|
129
171
|
body
|
|
130
172
|
}) {
|
|
131
173
|
try {
|
|
132
174
|
const agent = mastra.getAgent(agentId);
|
|
133
175
|
if (!agent) {
|
|
134
|
-
throw new
|
|
176
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(404, { message: "Agent not found" });
|
|
135
177
|
}
|
|
136
|
-
const { messages, resourceId, resourceid, ...rest } = body;
|
|
178
|
+
const { messages, resourceId, resourceid, runtimeContext: agentRuntimeContext, ...rest } = body;
|
|
137
179
|
const finalResourceId = resourceId ?? resourceid;
|
|
138
|
-
|
|
180
|
+
const finalRuntimeContext = new runtimeContext.RuntimeContext([
|
|
181
|
+
...Array.from(runtimeContext$1.entries()),
|
|
182
|
+
...Array.from(Object.entries(agentRuntimeContext ?? {}))
|
|
183
|
+
]);
|
|
184
|
+
chunk57CJTIPW_cjs.validateBody({ messages });
|
|
139
185
|
const result = await agent.generate(messages, {
|
|
140
186
|
...rest,
|
|
141
187
|
// @ts-expect-error TODO fix types
|
|
142
188
|
resourceId: finalResourceId,
|
|
143
|
-
runtimeContext
|
|
189
|
+
runtimeContext: finalRuntimeContext
|
|
144
190
|
});
|
|
145
191
|
return result;
|
|
146
192
|
} catch (error) {
|
|
147
|
-
return
|
|
193
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error generating from agent");
|
|
148
194
|
}
|
|
149
195
|
}
|
|
150
196
|
async function streamGenerateHandler({
|
|
151
197
|
mastra,
|
|
152
|
-
runtimeContext,
|
|
198
|
+
runtimeContext: runtimeContext$1,
|
|
153
199
|
agentId,
|
|
154
200
|
body
|
|
155
201
|
}) {
|
|
156
202
|
try {
|
|
157
203
|
const agent = mastra.getAgent(agentId);
|
|
158
204
|
if (!agent) {
|
|
159
|
-
throw new
|
|
205
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(404, { message: "Agent not found" });
|
|
160
206
|
}
|
|
161
|
-
const { messages, resourceId, resourceid, ...rest } = body;
|
|
207
|
+
const { messages, resourceId, resourceid, runtimeContext: agentRuntimeContext, ...rest } = body;
|
|
162
208
|
const finalResourceId = resourceId ?? resourceid;
|
|
163
|
-
|
|
209
|
+
const finalRuntimeContext = new runtimeContext.RuntimeContext([
|
|
210
|
+
...Array.from(runtimeContext$1.entries()),
|
|
211
|
+
...Array.from(Object.entries(agentRuntimeContext ?? {}))
|
|
212
|
+
]);
|
|
213
|
+
chunk57CJTIPW_cjs.validateBody({ messages });
|
|
164
214
|
const streamResult = await agent.stream(messages, {
|
|
165
215
|
...rest,
|
|
166
216
|
// @ts-expect-error TODO fix types
|
|
167
217
|
resourceId: finalResourceId,
|
|
168
|
-
runtimeContext
|
|
218
|
+
runtimeContext: finalRuntimeContext
|
|
169
219
|
});
|
|
170
220
|
const streamResponse = rest.output ? streamResult.toTextStreamResponse() : streamResult.toDataStreamResponse({
|
|
171
221
|
sendUsage: true,
|
|
@@ -176,7 +226,7 @@ async function streamGenerateHandler({
|
|
|
176
226
|
});
|
|
177
227
|
return streamResponse;
|
|
178
228
|
} catch (error) {
|
|
179
|
-
throw new
|
|
229
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(error?.status ?? 500, { message: error?.message ?? "Error streaming from agent" });
|
|
180
230
|
}
|
|
181
231
|
}
|
|
182
232
|
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunk64U3UDTH_cjs = require('./chunk-64U3UDTH.cjs');
|
|
4
|
+
var chunkOCWPVYNI_cjs = require('./chunk-OCWPVYNI.cjs');
|
|
5
|
+
var chunk75ZPJI57_cjs = require('./chunk-75ZPJI57.cjs');
|
|
5
6
|
|
|
6
7
|
// src/server/handlers/vector.ts
|
|
7
8
|
var vector_exports = {};
|
|
8
|
-
|
|
9
|
+
chunk75ZPJI57_cjs.__export(vector_exports, {
|
|
9
10
|
createIndex: () => createIndex,
|
|
10
11
|
deleteIndex: () => deleteIndex,
|
|
11
12
|
describeIndex: () => describeIndex,
|
|
@@ -15,24 +16,24 @@ chunkFV45V6WC_cjs.__export(vector_exports, {
|
|
|
15
16
|
});
|
|
16
17
|
function getVector(mastra, vectorName) {
|
|
17
18
|
if (!vectorName) {
|
|
18
|
-
throw new
|
|
19
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(400, { message: "Vector name is required" });
|
|
19
20
|
}
|
|
20
21
|
const vector = mastra.getVector(vectorName);
|
|
21
22
|
if (!vector) {
|
|
22
|
-
throw new
|
|
23
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(404, { message: `Vector store ${vectorName} not found` });
|
|
23
24
|
}
|
|
24
25
|
return vector;
|
|
25
26
|
}
|
|
26
27
|
async function upsertVectors({ mastra, vectorName, index }) {
|
|
27
28
|
try {
|
|
28
29
|
if (!index?.indexName || !index?.vectors || !Array.isArray(index.vectors)) {
|
|
29
|
-
throw new
|
|
30
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(400, { message: "Invalid request index. indexName and vectors array are required." });
|
|
30
31
|
}
|
|
31
32
|
const vector = getVector(mastra, vectorName);
|
|
32
33
|
const result = await vector.upsert(index);
|
|
33
34
|
return { ids: result };
|
|
34
35
|
} catch (error) {
|
|
35
|
-
return
|
|
36
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error upserting vectors");
|
|
36
37
|
}
|
|
37
38
|
}
|
|
38
39
|
async function createIndex({
|
|
@@ -43,18 +44,18 @@ async function createIndex({
|
|
|
43
44
|
try {
|
|
44
45
|
const { indexName, dimension, metric } = index;
|
|
45
46
|
if (!indexName || typeof dimension !== "number" || dimension <= 0) {
|
|
46
|
-
throw new
|
|
47
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(400, {
|
|
47
48
|
message: "Invalid request index, indexName and positive dimension number are required."
|
|
48
49
|
});
|
|
49
50
|
}
|
|
50
51
|
if (metric && !["cosine", "euclidean", "dotproduct"].includes(metric)) {
|
|
51
|
-
throw new
|
|
52
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(400, { message: "Invalid metric. Must be one of: cosine, euclidean, dotproduct" });
|
|
52
53
|
}
|
|
53
54
|
const vector = getVector(mastra, vectorName);
|
|
54
55
|
await vector.createIndex({ indexName, dimension, metric });
|
|
55
56
|
return { success: true };
|
|
56
57
|
} catch (error) {
|
|
57
|
-
return
|
|
58
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error creating index");
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
61
|
async function queryVectors({
|
|
@@ -64,13 +65,13 @@ async function queryVectors({
|
|
|
64
65
|
}) {
|
|
65
66
|
try {
|
|
66
67
|
if (!query?.indexName || !query?.queryVector || !Array.isArray(query.queryVector)) {
|
|
67
|
-
throw new
|
|
68
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(400, { message: "Invalid request query. indexName and queryVector array are required." });
|
|
68
69
|
}
|
|
69
70
|
const vector = getVector(mastra, vectorName);
|
|
70
71
|
const results = await vector.query(query);
|
|
71
72
|
return results;
|
|
72
73
|
} catch (error) {
|
|
73
|
-
return
|
|
74
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error querying vectors");
|
|
74
75
|
}
|
|
75
76
|
}
|
|
76
77
|
async function listIndexes({ mastra, vectorName }) {
|
|
@@ -79,7 +80,7 @@ async function listIndexes({ mastra, vectorName }) {
|
|
|
79
80
|
const indexes = await vector.listIndexes();
|
|
80
81
|
return indexes.filter(Boolean);
|
|
81
82
|
} catch (error) {
|
|
82
|
-
return
|
|
83
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error listing indexes");
|
|
83
84
|
}
|
|
84
85
|
}
|
|
85
86
|
async function describeIndex({
|
|
@@ -89,17 +90,17 @@ async function describeIndex({
|
|
|
89
90
|
}) {
|
|
90
91
|
try {
|
|
91
92
|
if (!indexName) {
|
|
92
|
-
throw new
|
|
93
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(400, { message: "Index name is required" });
|
|
93
94
|
}
|
|
94
95
|
const vector = getVector(mastra, vectorName);
|
|
95
|
-
const stats = await vector.describeIndex(indexName);
|
|
96
|
+
const stats = await vector.describeIndex({ indexName });
|
|
96
97
|
return {
|
|
97
98
|
dimension: stats.dimension,
|
|
98
99
|
count: stats.count,
|
|
99
100
|
metric: stats.metric?.toLowerCase()
|
|
100
101
|
};
|
|
101
102
|
} catch (error) {
|
|
102
|
-
return
|
|
103
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error describing index");
|
|
103
104
|
}
|
|
104
105
|
}
|
|
105
106
|
async function deleteIndex({
|
|
@@ -109,13 +110,13 @@ async function deleteIndex({
|
|
|
109
110
|
}) {
|
|
110
111
|
try {
|
|
111
112
|
if (!indexName) {
|
|
112
|
-
throw new
|
|
113
|
+
throw new chunkOCWPVYNI_cjs.HTTPException(400, { message: "Index name is required" });
|
|
113
114
|
}
|
|
114
115
|
const vector = getVector(mastra, vectorName);
|
|
115
|
-
await vector.deleteIndex(indexName);
|
|
116
|
+
await vector.deleteIndex({ indexName });
|
|
116
117
|
return { success: true };
|
|
117
118
|
} catch (error) {
|
|
118
|
-
return
|
|
119
|
+
return chunk64U3UDTH_cjs.handleError(error, "Error deleting index");
|
|
119
120
|
}
|
|
120
121
|
}
|
|
121
122
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { validateBody } from './chunk-
|
|
2
|
-
import { handleError } from './chunk-
|
|
3
|
-
import {
|
|
1
|
+
import { validateBody } from './chunk-H5PTF3Y4.js';
|
|
2
|
+
import { handleError } from './chunk-M5ABIP7D.js';
|
|
3
|
+
import { HTTPException } from './chunk-NYN7KFXL.js';
|
|
4
|
+
import { __export } from './chunk-MLKGABMK.js';
|
|
4
5
|
|
|
5
6
|
// src/server/handlers/network.ts
|
|
6
7
|
var network_exports = {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { validateBody } from './chunk-
|
|
2
|
-
import { handleError } from './chunk-
|
|
3
|
-
import {
|
|
1
|
+
import { validateBody } from './chunk-H5PTF3Y4.js';
|
|
2
|
+
import { handleError } from './chunk-M5ABIP7D.js';
|
|
3
|
+
import { HTTPException } from './chunk-NYN7KFXL.js';
|
|
4
|
+
import { __export } from './chunk-MLKGABMK.js';
|
|
4
5
|
|
|
5
6
|
// src/server/handlers/memory.ts
|
|
6
7
|
var memory_exports = {};
|
|
@@ -181,8 +182,12 @@ async function deleteThreadHandler({
|
|
|
181
182
|
async function getMessagesHandler({
|
|
182
183
|
mastra,
|
|
183
184
|
agentId,
|
|
184
|
-
threadId
|
|
185
|
+
threadId,
|
|
186
|
+
limit
|
|
185
187
|
}) {
|
|
188
|
+
if (limit !== void 0 && (!Number.isInteger(limit) || limit <= 0)) {
|
|
189
|
+
throw new HTTPException(400, { message: "Invalid limit: must be a positive integer" });
|
|
190
|
+
}
|
|
186
191
|
try {
|
|
187
192
|
validateBody({ threadId });
|
|
188
193
|
const memory = getMemoryFromContext({ mastra, agentId });
|
|
@@ -193,7 +198,10 @@ async function getMessagesHandler({
|
|
|
193
198
|
if (!thread) {
|
|
194
199
|
throw new HTTPException(404, { message: "Thread not found" });
|
|
195
200
|
}
|
|
196
|
-
const result = await memory.query({
|
|
201
|
+
const result = await memory.query({
|
|
202
|
+
threadId,
|
|
203
|
+
...limit && { selectBy: { last: limit } }
|
|
204
|
+
});
|
|
197
205
|
return result;
|
|
198
206
|
} catch (error) {
|
|
199
207
|
return handleError(error, "Error getting messages");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { validateBody } from './chunk-
|
|
2
|
-
import { handleError } from './chunk-
|
|
3
|
-
import { __export } from './chunk-
|
|
1
|
+
import { validateBody } from './chunk-H5PTF3Y4.js';
|
|
2
|
+
import { handleError } from './chunk-M5ABIP7D.js';
|
|
3
|
+
import { __export } from './chunk-MLKGABMK.js';
|
|
4
4
|
|
|
5
5
|
// src/server/handlers/logs.ts
|
|
6
6
|
var logs_exports = {};
|
|
@@ -37,9 +37,9 @@ async function getLogsByRunIdHandler({
|
|
|
37
37
|
async function getLogTransports({ mastra }) {
|
|
38
38
|
try {
|
|
39
39
|
const logger = mastra.getLogger();
|
|
40
|
-
const transports = logger.
|
|
40
|
+
const transports = logger.getTransports();
|
|
41
41
|
return {
|
|
42
|
-
transports: transports ?
|
|
42
|
+
transports: transports ? [...transports.keys()] : []
|
|
43
43
|
};
|
|
44
44
|
} catch (error) {
|
|
45
45
|
return handleError(error, "Error getting log Transports");
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { validateBody } from './chunk-
|
|
2
|
-
import { handleError } from './chunk-
|
|
3
|
-
import {
|
|
1
|
+
import { validateBody } from './chunk-H5PTF3Y4.js';
|
|
2
|
+
import { handleError } from './chunk-M5ABIP7D.js';
|
|
3
|
+
import { HTTPException } from './chunk-NYN7KFXL.js';
|
|
4
|
+
import { __export } from './chunk-MLKGABMK.js';
|
|
4
5
|
import { Readable } from 'stream';
|
|
5
6
|
|
|
6
7
|
// src/server/handlers/voice.ts
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import { stringify, esm_default } from './chunk-
|
|
2
|
-
import { validateBody } from './chunk-
|
|
3
|
-
import { handleError } from './chunk-
|
|
4
|
-
import {
|
|
1
|
+
import { stringify, esm_default } from './chunk-LIVAK2DM.js';
|
|
2
|
+
import { validateBody } from './chunk-H5PTF3Y4.js';
|
|
3
|
+
import { handleError } from './chunk-M5ABIP7D.js';
|
|
4
|
+
import { HTTPException } from './chunk-NYN7KFXL.js';
|
|
5
|
+
import { __export } from './chunk-MLKGABMK.js';
|
|
6
|
+
import { RuntimeContext } from '@mastra/core/runtime-context';
|
|
5
7
|
|
|
6
8
|
// src/server/handlers/agents.ts
|
|
7
9
|
var agents_exports = {};
|
|
@@ -30,13 +32,33 @@ async function getAgentsHandler({ mastra, runtimeContext }) {
|
|
|
30
32
|
};
|
|
31
33
|
return acc;
|
|
32
34
|
}, {});
|
|
35
|
+
let serializedAgentWorkflows = {};
|
|
36
|
+
if ("getWorkflows" in agent) {
|
|
37
|
+
const logger = mastra.getLogger();
|
|
38
|
+
try {
|
|
39
|
+
const workflows = await agent.getWorkflows({ runtimeContext });
|
|
40
|
+
serializedAgentWorkflows = Object.entries(workflows || {}).reduce((acc, [key, workflow]) => {
|
|
41
|
+
return {
|
|
42
|
+
...acc,
|
|
43
|
+
[key]: {
|
|
44
|
+
name: workflow.name
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
}, {});
|
|
48
|
+
} catch (error) {
|
|
49
|
+
logger.error("Error getting workflows for agent", { agentName: agent.name, error });
|
|
50
|
+
}
|
|
51
|
+
}
|
|
33
52
|
return {
|
|
34
53
|
id,
|
|
35
54
|
name: agent.name,
|
|
36
55
|
instructions,
|
|
37
56
|
tools: serializedAgentTools,
|
|
57
|
+
workflows: serializedAgentWorkflows,
|
|
38
58
|
provider: llm?.getProvider(),
|
|
39
|
-
modelId: llm?.getModelId()
|
|
59
|
+
modelId: llm?.getModelId(),
|
|
60
|
+
defaultGenerateOptions: agent.getDefaultGenerateOptions(),
|
|
61
|
+
defaultStreamOptions: agent.getDefaultStreamOptions()
|
|
40
62
|
};
|
|
41
63
|
})
|
|
42
64
|
);
|
|
@@ -69,14 +91,34 @@ async function getAgentByIdHandler({
|
|
|
69
91
|
};
|
|
70
92
|
return acc;
|
|
71
93
|
}, {});
|
|
94
|
+
let serializedAgentWorkflows = {};
|
|
95
|
+
if ("getWorkflows" in agent) {
|
|
96
|
+
const logger = mastra.getLogger();
|
|
97
|
+
try {
|
|
98
|
+
const workflows = await agent.getWorkflows({ runtimeContext });
|
|
99
|
+
serializedAgentWorkflows = Object.entries(workflows || {}).reduce((acc, [key, workflow]) => {
|
|
100
|
+
return {
|
|
101
|
+
...acc,
|
|
102
|
+
[key]: {
|
|
103
|
+
name: workflow.name
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
}, {});
|
|
107
|
+
} catch (error) {
|
|
108
|
+
logger.error("Error getting workflows for agent", { agentName: agent.name, error });
|
|
109
|
+
}
|
|
110
|
+
}
|
|
72
111
|
const instructions = await agent.getInstructions({ runtimeContext });
|
|
73
112
|
const llm = await agent.getLLM({ runtimeContext });
|
|
74
113
|
return {
|
|
75
114
|
name: agent.name,
|
|
76
115
|
instructions,
|
|
77
116
|
tools: serializedAgentTools,
|
|
117
|
+
workflows: serializedAgentWorkflows,
|
|
78
118
|
provider: llm?.getProvider(),
|
|
79
|
-
modelId: llm?.getModelId()
|
|
119
|
+
modelId: llm?.getModelId(),
|
|
120
|
+
defaultGenerateOptions: agent.getDefaultGenerateOptions(),
|
|
121
|
+
defaultStreamOptions: agent.getDefaultStreamOptions()
|
|
80
122
|
};
|
|
81
123
|
} catch (error) {
|
|
82
124
|
return handleError(error, "Error getting agent");
|
|
@@ -131,14 +173,18 @@ async function generateHandler({
|
|
|
131
173
|
if (!agent) {
|
|
132
174
|
throw new HTTPException(404, { message: "Agent not found" });
|
|
133
175
|
}
|
|
134
|
-
const { messages, resourceId, resourceid, ...rest } = body;
|
|
176
|
+
const { messages, resourceId, resourceid, runtimeContext: agentRuntimeContext, ...rest } = body;
|
|
135
177
|
const finalResourceId = resourceId ?? resourceid;
|
|
178
|
+
const finalRuntimeContext = new RuntimeContext([
|
|
179
|
+
...Array.from(runtimeContext.entries()),
|
|
180
|
+
...Array.from(Object.entries(agentRuntimeContext ?? {}))
|
|
181
|
+
]);
|
|
136
182
|
validateBody({ messages });
|
|
137
183
|
const result = await agent.generate(messages, {
|
|
138
184
|
...rest,
|
|
139
185
|
// @ts-expect-error TODO fix types
|
|
140
186
|
resourceId: finalResourceId,
|
|
141
|
-
runtimeContext
|
|
187
|
+
runtimeContext: finalRuntimeContext
|
|
142
188
|
});
|
|
143
189
|
return result;
|
|
144
190
|
} catch (error) {
|
|
@@ -156,14 +202,18 @@ async function streamGenerateHandler({
|
|
|
156
202
|
if (!agent) {
|
|
157
203
|
throw new HTTPException(404, { message: "Agent not found" });
|
|
158
204
|
}
|
|
159
|
-
const { messages, resourceId, resourceid, ...rest } = body;
|
|
205
|
+
const { messages, resourceId, resourceid, runtimeContext: agentRuntimeContext, ...rest } = body;
|
|
160
206
|
const finalResourceId = resourceId ?? resourceid;
|
|
207
|
+
const finalRuntimeContext = new RuntimeContext([
|
|
208
|
+
...Array.from(runtimeContext.entries()),
|
|
209
|
+
...Array.from(Object.entries(agentRuntimeContext ?? {}))
|
|
210
|
+
]);
|
|
161
211
|
validateBody({ messages });
|
|
162
212
|
const streamResult = await agent.stream(messages, {
|
|
163
213
|
...rest,
|
|
164
214
|
// @ts-expect-error TODO fix types
|
|
165
215
|
resourceId: finalResourceId,
|
|
166
|
-
runtimeContext
|
|
216
|
+
runtimeContext: finalRuntimeContext
|
|
167
217
|
});
|
|
168
218
|
const streamResponse = rest.output ? streamResult.toTextStreamResponse() : streamResult.toDataStreamResponse({
|
|
169
219
|
sendUsage: true,
|