@mastra/server 1.1.0 → 1.2.0-alpha.0

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.
Files changed (74) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/{chunk-J3EJR43M.js → chunk-32IP4IQQ.js} +436 -25
  3. package/dist/chunk-32IP4IQQ.js.map +1 -0
  4. package/dist/{chunk-H4VFL22H.cjs → chunk-33WUKZ5N.cjs} +6 -6
  5. package/dist/{chunk-H4VFL22H.cjs.map → chunk-33WUKZ5N.cjs.map} +1 -1
  6. package/dist/{chunk-WWVDNKEF.cjs → chunk-ADNT2PDV.cjs} +6 -6
  7. package/dist/{chunk-WWVDNKEF.cjs.map → chunk-ADNT2PDV.cjs.map} +1 -1
  8. package/dist/{chunk-XXBURIYX.js → chunk-BEMGUJPC.js} +3 -3
  9. package/dist/{chunk-XXBURIYX.js.map → chunk-BEMGUJPC.js.map} +1 -1
  10. package/dist/{chunk-BWINB344.js → chunk-BV24MR2R.js} +3 -3
  11. package/dist/{chunk-BWINB344.js.map → chunk-BV24MR2R.js.map} +1 -1
  12. package/dist/{chunk-JUGGEWCR.js → chunk-CRGRPMWI.js} +3 -3
  13. package/dist/{chunk-JUGGEWCR.js.map → chunk-CRGRPMWI.js.map} +1 -1
  14. package/dist/{chunk-C4NZAUUW.js → chunk-G75NUKBO.js} +14 -6
  15. package/dist/chunk-G75NUKBO.js.map +1 -0
  16. package/dist/{chunk-I3CJUT6J.cjs → chunk-JANOIUVD.cjs} +4 -4
  17. package/dist/{chunk-I3CJUT6J.cjs.map → chunk-JANOIUVD.cjs.map} +1 -1
  18. package/dist/{chunk-ZFHZRI6C.js → chunk-JG46WVHC.js} +3 -3
  19. package/dist/{chunk-ZFHZRI6C.js.map → chunk-JG46WVHC.js.map} +1 -1
  20. package/dist/{chunk-7YCFHDWX.js → chunk-KPNL6ZFK.js} +20 -11
  21. package/dist/chunk-KPNL6ZFK.js.map +1 -0
  22. package/dist/{chunk-VXPVROQJ.cjs → chunk-MGJLH2AB.cjs} +5 -5
  23. package/dist/{chunk-VXPVROQJ.cjs.map → chunk-MGJLH2AB.cjs.map} +1 -1
  24. package/dist/{chunk-GDWZ2R7I.js → chunk-OBH5ZLNK.js} +73 -4
  25. package/dist/chunk-OBH5ZLNK.js.map +1 -0
  26. package/dist/{chunk-37DO73XV.cjs → chunk-QL3KET2C.cjs} +14 -6
  27. package/dist/chunk-QL3KET2C.cjs.map +1 -0
  28. package/dist/{chunk-4UNYZYBB.cjs → chunk-W7AZENC3.cjs} +84 -3
  29. package/dist/chunk-W7AZENC3.cjs.map +1 -0
  30. package/dist/{chunk-RWV4GKEY.cjs → chunk-WK2FRQEW.cjs} +480 -62
  31. package/dist/chunk-WK2FRQEW.cjs.map +1 -0
  32. package/dist/{chunk-6DHJKQLP.cjs → chunk-XC42BH7B.cjs} +21 -11
  33. package/dist/chunk-XC42BH7B.cjs.map +1 -0
  34. package/dist/docs/README.md +1 -1
  35. package/dist/docs/SKILL.md +1 -1
  36. package/dist/docs/SOURCE_MAP.json +1 -1
  37. package/dist/server/handlers/a2a.cjs +9 -9
  38. package/dist/server/handlers/a2a.js +1 -1
  39. package/dist/server/handlers/agent-builder.cjs +16 -16
  40. package/dist/server/handlers/agent-builder.js +1 -1
  41. package/dist/server/handlers/agents.cjs +35 -31
  42. package/dist/server/handlers/agents.d.ts +8 -0
  43. package/dist/server/handlers/agents.d.ts.map +1 -1
  44. package/dist/server/handlers/agents.js +1 -1
  45. package/dist/server/handlers/memory.d.ts +1 -1
  46. package/dist/server/handlers/scores.cjs +7 -7
  47. package/dist/server/handlers/scores.js +1 -1
  48. package/dist/server/handlers/tools.cjs +6 -6
  49. package/dist/server/handlers/tools.js +1 -1
  50. package/dist/server/handlers/voice.cjs +8 -8
  51. package/dist/server/handlers/voice.js +1 -1
  52. package/dist/server/handlers/workspace.cjs +47 -19
  53. package/dist/server/handlers/workspace.d.ts +265 -0
  54. package/dist/server/handlers/workspace.d.ts.map +1 -1
  55. package/dist/server/handlers/workspace.js +1 -1
  56. package/dist/server/handlers.cjs +12 -12
  57. package/dist/server/handlers.js +6 -6
  58. package/dist/server/schemas/memory.d.ts +2 -2
  59. package/dist/server/schemas/workspace.d.ts +255 -0
  60. package/dist/server/schemas/workspace.d.ts.map +1 -1
  61. package/dist/server/server-adapter/index.cjs +71 -69
  62. package/dist/server/server-adapter/index.cjs.map +1 -1
  63. package/dist/server/server-adapter/index.js +10 -8
  64. package/dist/server/server-adapter/index.js.map +1 -1
  65. package/dist/server/server-adapter/routes/workspace.d.ts.map +1 -1
  66. package/package.json +5 -5
  67. package/dist/chunk-37DO73XV.cjs.map +0 -1
  68. package/dist/chunk-4UNYZYBB.cjs.map +0 -1
  69. package/dist/chunk-6DHJKQLP.cjs.map +0 -1
  70. package/dist/chunk-7YCFHDWX.js.map +0 -1
  71. package/dist/chunk-C4NZAUUW.js.map +0 -1
  72. package/dist/chunk-GDWZ2R7I.js.map +0 -1
  73. package/dist/chunk-J3EJR43M.js.map +0 -1
  74. package/dist/chunk-RWV4GKEY.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["__export","createRoute","listToolsResponseSchema","stringify","zodToJsonSchema","handleError","toolIdPathParams","serializedToolSchema","HTTPException","optionalRunIdSchema","executeToolContextBodySchema","executeToolResponseSchema","validateBody","isVercelTool","result","agentToolPathParams","getAgentFromSystem","tool","executeToolBodySchema"],"mappings":"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","file":"chunk-VXPVROQJ.cjs","sourcesContent":["import { isVercelTool } from '@mastra/core/tools';\nimport { zodToJsonSchema } from '@mastra/core/utils/zod-to-json';\nimport { stringify } from 'superjson';\nimport { HTTPException } from '../http-exception';\nimport {\n executeToolContextBodySchema,\n executeToolResponseSchema,\n listToolsResponseSchema,\n serializedToolSchema,\n toolIdPathParams,\n agentToolPathParams,\n executeToolBodySchema,\n} from '../schemas/agents';\nimport { optionalRunIdSchema } from '../schemas/common';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/tools',\n responseType: 'json',\n responseSchema: listToolsResponseSchema,\n summary: 'List all tools',\n description: 'Returns a list of all available tools in the system',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools }) => {\n try {\n const allTools = registeredTools || mastra.listTools() || {};\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n // Cast to any since we're serializing to a generic Record<string, any>\n // and the tool types have varying property availability\n const tool = _tool as any;\n acc[id] = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n return acc;\n },\n {} as Record<string, any>,\n );\n\n return serializedTools;\n } catch (error) {\n return handleError(error, 'Error getting tools');\n }\n },\n});\n\nexport const GET_TOOL_BY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/tools/:toolId',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get tool by ID',\n description: 'Returns details for a specific tool including its schema and configuration',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, toolId }) => {\n try {\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n const serializedTool = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n\n return serializedTool;\n } catch (error) {\n return handleError(error, 'Error getting tool');\n }\n },\n});\n\nexport const EXECUTE_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n queryParamSchema: optionalRunIdSchema,\n bodySchema: executeToolContextBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute tool',\n description: 'Executes a specific tool with the provided input data',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {\n try {\n if (!toolId) {\n throw new HTTPException(400, { message: 'Tool ID is required' });\n }\n\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const { data } = bodyParams;\n\n validateBody({ data });\n\n if (isVercelTool(tool)) {\n const result = await (tool as any).execute(data);\n return result;\n }\n\n const result = await tool.execute(data!, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n ...(runId\n ? {\n workflow: {\n runId,\n suspend: async () => {},\n },\n }\n : {}),\n });\n return result;\n } catch (error) {\n return handleError(error, 'Error executing tool');\n }\n },\n});\n\n// ============================================================================\n// Agent Tool Routes\n// ============================================================================\n\nexport const GET_AGENT_TOOL_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get agent tool',\n description: 'Returns details for a specific tool assigned to the agent',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n const serializedTool = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n\n return serializedTool;\n } catch (error) {\n return handleError(error, 'Error getting agent tool');\n }\n },\n});\n\nexport const EXECUTE_AGENT_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute agent tool',\n description: 'Executes a specific tool assigned to the agent with the provided input data',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const result = await tool.execute(data, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing agent tool');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["__export","createRoute","listToolsResponseSchema","stringify","zodToJsonSchema","handleError","toolIdPathParams","serializedToolSchema","HTTPException","optionalRunIdSchema","executeToolContextBodySchema","executeToolResponseSchema","validateBody","isVercelTool","result","agentToolPathParams","getAgentFromSystem","tool","executeToolBodySchema"],"mappings":"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","file":"chunk-MGJLH2AB.cjs","sourcesContent":["import { isVercelTool } from '@mastra/core/tools';\nimport { zodToJsonSchema } from '@mastra/core/utils/zod-to-json';\nimport { stringify } from 'superjson';\nimport { HTTPException } from '../http-exception';\nimport {\n executeToolContextBodySchema,\n executeToolResponseSchema,\n listToolsResponseSchema,\n serializedToolSchema,\n toolIdPathParams,\n agentToolPathParams,\n executeToolBodySchema,\n} from '../schemas/agents';\nimport { optionalRunIdSchema } from '../schemas/common';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/tools',\n responseType: 'json',\n responseSchema: listToolsResponseSchema,\n summary: 'List all tools',\n description: 'Returns a list of all available tools in the system',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools }) => {\n try {\n const allTools = registeredTools || mastra.listTools() || {};\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n // Cast to any since we're serializing to a generic Record<string, any>\n // and the tool types have varying property availability\n const tool = _tool as any;\n acc[id] = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n return acc;\n },\n {} as Record<string, any>,\n );\n\n return serializedTools;\n } catch (error) {\n return handleError(error, 'Error getting tools');\n }\n },\n});\n\nexport const GET_TOOL_BY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/tools/:toolId',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get tool by ID',\n description: 'Returns details for a specific tool including its schema and configuration',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, toolId }) => {\n try {\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n const serializedTool = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n\n return serializedTool;\n } catch (error) {\n return handleError(error, 'Error getting tool');\n }\n },\n});\n\nexport const EXECUTE_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n queryParamSchema: optionalRunIdSchema,\n bodySchema: executeToolContextBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute tool',\n description: 'Executes a specific tool with the provided input data',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {\n try {\n if (!toolId) {\n throw new HTTPException(400, { message: 'Tool ID is required' });\n }\n\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const { data } = bodyParams;\n\n validateBody({ data });\n\n if (isVercelTool(tool)) {\n const result = await (tool as any).execute(data);\n return result;\n }\n\n const result = await tool.execute(data!, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n ...(runId\n ? {\n workflow: {\n runId,\n suspend: async () => {},\n },\n }\n : {}),\n });\n return result;\n } catch (error) {\n return handleError(error, 'Error executing tool');\n }\n },\n});\n\n// ============================================================================\n// Agent Tool Routes\n// ============================================================================\n\nexport const GET_AGENT_TOOL_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get agent tool',\n description: 'Returns details for a specific tool assigned to the agent',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n const serializedTool = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n\n return serializedTool;\n } catch (error) {\n return handleError(error, 'Error getting agent tool');\n }\n },\n});\n\nexport const EXECUTE_AGENT_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute agent tool',\n description: 'Executes a specific tool assigned to the agent with the provided input data',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const result = await tool.execute(data, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing agent tool');\n }\n },\n});\n"]}
@@ -174,8 +174,11 @@ var skillSchema = skillMetadataSchema.extend({
174
174
  scripts: z.array(z.string()),
175
175
  assets: z.array(z.string())
176
176
  });
177
+ var skillMetadataWithPathSchema = skillMetadataSchema.extend({
178
+ path: z.string().describe("Path to the skill directory")
179
+ });
177
180
  var listSkillsResponseSchema = z.object({
178
- skills: z.array(skillMetadataSchema),
181
+ skills: z.array(skillMetadataWithPathSchema),
179
182
  isSkillsConfigured: z.boolean().describe("Whether skills are configured in the workspace")
180
183
  });
181
184
  var getSkillResponseSchema = skillSchema;
@@ -214,7 +217,73 @@ var searchSkillsResponseSchema = z.object({
214
217
  results: z.array(skillSearchResultSchema),
215
218
  query: z.string()
216
219
  });
220
+ var skillsShSearchQuerySchema = z.object({
221
+ q: z.string().describe("Search query"),
222
+ limit: z.coerce.number().optional().default(10).describe("Maximum number of results")
223
+ });
224
+ var skillsShPopularQuerySchema = z.object({
225
+ limit: z.coerce.number().optional().default(10).describe("Maximum number of results"),
226
+ offset: z.coerce.number().optional().default(0).describe("Offset for pagination")
227
+ });
228
+ var skillsShSkillSchema = z.object({
229
+ id: z.string(),
230
+ name: z.string(),
231
+ installs: z.number(),
232
+ topSource: z.string()
233
+ });
234
+ var skillsShSearchResponseSchema = z.object({
235
+ query: z.string(),
236
+ searchType: z.string(),
237
+ skills: z.array(skillsShSkillSchema),
238
+ count: z.number()
239
+ });
240
+ var skillsShListResponseSchema = z.object({
241
+ skills: z.array(skillsShSkillSchema),
242
+ count: z.number(),
243
+ limit: z.number(),
244
+ offset: z.number()
245
+ });
246
+ var skillsShPreviewQuerySchema = z.object({
247
+ owner: z.string().describe("GitHub repository owner"),
248
+ repo: z.string().describe("GitHub repository name"),
249
+ path: z.string().describe("Path to skill within repo")
250
+ });
251
+ var skillsShPreviewResponseSchema = z.object({
252
+ content: z.string()
253
+ });
254
+ var skillsShInstallBodySchema = z.object({
255
+ owner: z.string().describe("GitHub repository owner"),
256
+ repo: z.string().describe("GitHub repository name"),
257
+ skillName: z.string().describe("Skill name from skills.sh")
258
+ });
259
+ var skillsShInstallResponseSchema = z.object({
260
+ success: z.boolean(),
261
+ skillName: z.string(),
262
+ installedPath: z.string(),
263
+ filesWritten: z.number()
264
+ });
265
+ var skillsShRemoveBodySchema = z.object({
266
+ skillName: z.string().describe("Name of the installed skill to remove")
267
+ });
268
+ var skillsShRemoveResponseSchema = z.object({
269
+ success: z.boolean(),
270
+ skillName: z.string(),
271
+ removedPath: z.string()
272
+ });
273
+ var skillsShUpdateBodySchema = z.object({
274
+ skillName: z.string().optional().describe("Specific skill to update, or omit to update all")
275
+ });
276
+ var skillsShUpdateResponseSchema = z.object({
277
+ updated: z.array(
278
+ z.object({
279
+ skillName: z.string(),
280
+ success: z.boolean(),
281
+ filesWritten: z.number().optional(),
282
+ error: z.string().optional()
283
+ })
284
+ )
285
+ });
217
286
 
218
- export { fsDeleteQuerySchema, fsDeleteResponseSchema, fsListQuerySchema, fsListResponseSchema, fsMkdirBodySchema, fsMkdirResponseSchema, fsReadQuerySchema, fsReadResponseSchema, fsStatQuerySchema, fsStatResponseSchema, fsWriteBodySchema, fsWriteResponseSchema, getAgentSkillResponseSchema, getSkillResponseSchema, indexBodySchema, indexResponseSchema, listReferencesResponseSchema, listSkillsResponseSchema, listWorkspacesResponseSchema, searchQuerySchema, searchResponseSchema, searchSkillsQuerySchema, searchSkillsResponseSchema, skillNamePathParams, skillReferencePathParams, skillReferenceResponseSchema, workspaceIdPathParams, workspaceInfoResponseSchema };
219
- //# sourceMappingURL=chunk-GDWZ2R7I.js.map
220
- //# sourceMappingURL=chunk-GDWZ2R7I.js.map
287
+ export { fsDeleteQuerySchema, fsDeleteResponseSchema, fsListQuerySchema, fsListResponseSchema, fsMkdirBodySchema, fsMkdirResponseSchema, fsReadQuerySchema, fsReadResponseSchema, fsStatQuerySchema, fsStatResponseSchema, fsWriteBodySchema, fsWriteResponseSchema, getAgentSkillResponseSchema, getSkillResponseSchema, indexBodySchema, indexResponseSchema, listReferencesResponseSchema, listSkillsResponseSchema, listWorkspacesResponseSchema, searchQuerySchema, searchResponseSchema, searchSkillsQuerySchema, searchSkillsResponseSchema, skillNamePathParams, skillReferencePathParams, skillReferenceResponseSchema, skillsShInstallBodySchema, skillsShInstallResponseSchema, skillsShListResponseSchema, skillsShPopularQuerySchema, skillsShPreviewQuerySchema, skillsShPreviewResponseSchema, skillsShRemoveBodySchema, skillsShRemoveResponseSchema, skillsShSearchQuerySchema, skillsShSearchResponseSchema, skillsShUpdateBodySchema, skillsShUpdateResponseSchema, workspaceIdPathParams, workspaceInfoResponseSchema };
288
+ //# sourceMappingURL=chunk-OBH5ZLNK.js.map
289
+ //# sourceMappingURL=chunk-OBH5ZLNK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/schemas/workspace.ts"],"names":[],"mappings":"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","file":"chunk-OBH5ZLNK.js","sourcesContent":["/**\n * Workspace Schemas\n *\n * All Zod schemas for workspace operations including:\n * - Filesystem operations (read, write, list, delete, mkdir, stat)\n * - Search operations (search, index)\n * - Skills operations (list, get, search, references)\n */\n\nimport z from 'zod';\n\n// =============================================================================\n// Filesystem Path Schemas\n// =============================================================================\n\nexport const fsPathParams = z.object({\n path: z.string().describe('File or directory path (URL encoded)'),\n});\n\nexport const workspaceIdPathParams = z.object({\n workspaceId: z.string().describe('Workspace ID'),\n});\n\n// =============================================================================\n// Filesystem Query Schemas\n// =============================================================================\n\nexport const fsReadQuerySchema = z.object({\n path: z.string().describe('Path to the file to read'),\n encoding: z.string().optional().describe('Encoding for text files (default: utf-8)'),\n});\n\nexport const fsListQuerySchema = z.object({\n path: z.string().describe('Path to the directory to list'),\n recursive: z.coerce.boolean().optional().describe('Include subdirectories'),\n});\n\nexport const fsStatQuerySchema = z.object({\n path: z.string().describe('Path to get info about'),\n});\n\nexport const fsDeleteQuerySchema = z.object({\n path: z.string().describe('Path to delete'),\n recursive: z.coerce.boolean().optional().describe('Delete directories recursively'),\n force: z.coerce.boolean().optional().describe(\"Don't error if path doesn't exist\"),\n});\n\n// =============================================================================\n// Filesystem Body Schemas\n// =============================================================================\n\nexport const fsWriteBodySchema = z.object({\n path: z.string().describe('Path to write to'),\n content: z.string().describe('Content to write (text or base64-encoded binary)'),\n encoding: z.enum(['utf-8', 'base64']).optional().default('utf-8').describe('Content encoding'),\n recursive: z.coerce.boolean().optional().describe('Create parent directories if needed'),\n});\n\nexport const fsMkdirBodySchema = z.object({\n path: z.string().describe('Directory path to create'),\n recursive: z.coerce.boolean().optional().describe('Create parent directories if needed'),\n});\n\n// =============================================================================\n// Filesystem Response Schemas\n// =============================================================================\n\nexport const fileEntrySchema = z.object({\n name: z.string(),\n type: z.enum(['file', 'directory']),\n size: z.number().optional(),\n});\n\nexport const fsReadResponseSchema = z.object({\n path: z.string(),\n content: z.string(),\n type: z.enum(['file', 'directory']),\n size: z.number().optional(),\n mimeType: z.string().optional(),\n});\n\nexport const fsWriteResponseSchema = z.object({\n success: z.boolean(),\n path: z.string(),\n});\n\nexport const fsListResponseSchema = z.object({\n path: z.string(),\n entries: z.array(fileEntrySchema),\n});\n\nexport const fsDeleteResponseSchema = z.object({\n success: z.boolean(),\n path: z.string(),\n});\n\nexport const fsMkdirResponseSchema = z.object({\n success: z.boolean(),\n path: z.string(),\n});\n\nexport const fsStatResponseSchema = z.object({\n path: z.string(),\n type: z.enum(['file', 'directory']),\n size: z.number().optional(),\n createdAt: z.string().optional(),\n modifiedAt: z.string().optional(),\n mimeType: z.string().optional(),\n});\n\n// =============================================================================\n// Search Schemas\n// =============================================================================\n\nexport const searchQuerySchema = z.object({\n query: z.string().describe('Search query text'),\n topK: z.coerce.number().optional().default(5).describe('Maximum number of results'),\n mode: z.enum(['bm25', 'vector', 'hybrid']).optional().describe('Search mode'),\n minScore: z.coerce.number().optional().describe('Minimum relevance score threshold'),\n});\n\nexport const searchResultSchema = z.object({\n id: z.string().describe('Document ID (file path)'),\n content: z.string(),\n score: z.number(),\n lineRange: z\n .object({\n start: z.number(),\n end: z.number(),\n })\n .optional(),\n scoreDetails: z\n .object({\n vector: z.number().optional(),\n bm25: z.number().optional(),\n })\n .optional(),\n});\n\nexport const searchResponseSchema = z.object({\n results: z.array(searchResultSchema),\n query: z.string(),\n mode: z.enum(['bm25', 'vector', 'hybrid']),\n});\n\nexport const indexBodySchema = z.object({\n path: z.string().describe('Path to use as document ID'),\n content: z.string().describe('Content to index'),\n metadata: z.record(z.unknown()).optional().describe('Optional metadata'),\n});\n\nexport const indexResponseSchema = z.object({\n success: z.boolean(),\n path: z.string(),\n});\n\n// =============================================================================\n// Workspace Info Schema\n// =============================================================================\n\nexport const workspaceInfoResponseSchema = z.object({\n isWorkspaceConfigured: z.boolean(),\n id: z.string().optional(),\n name: z.string().optional(),\n status: z.string().optional(),\n capabilities: z\n .object({\n hasFilesystem: z.boolean(),\n hasSandbox: z.boolean(),\n canBM25: z.boolean(),\n canVector: z.boolean(),\n canHybrid: z.boolean(),\n hasSkills: z.boolean(),\n })\n .optional(),\n safety: z\n .object({\n readOnly: z.boolean(),\n })\n .optional(),\n});\n\nconst workspaceItemSchema = z.object({\n id: z.string(),\n name: z.string(),\n status: z.string(),\n source: z.enum(['mastra', 'agent']),\n agentId: z.string().optional(),\n agentName: z.string().optional(),\n capabilities: z.object({\n hasFilesystem: z.boolean(),\n hasSandbox: z.boolean(),\n canBM25: z.boolean(),\n canVector: z.boolean(),\n canHybrid: z.boolean(),\n hasSkills: z.boolean(),\n }),\n safety: z.object({\n readOnly: z.boolean(),\n }),\n});\n\nexport const listWorkspacesResponseSchema = z.object({\n workspaces: z.array(workspaceItemSchema),\n});\n\n// =============================================================================\n// Skills Path Parameter Schemas\n// =============================================================================\n\nexport const skillNamePathParams = workspaceIdPathParams.extend({\n skillName: z.string().describe('Skill name identifier'),\n});\n\nexport const skillReferencePathParams = skillNamePathParams.extend({\n referencePath: z.string().describe('Reference file path (URL encoded)'),\n});\n\n// =============================================================================\n// Skills Query Parameter Schemas\n// =============================================================================\n\nexport const searchSkillsQuerySchema = z.object({\n query: z.string().describe('Search query text'),\n topK: z.coerce.number().optional().default(5).describe('Maximum number of results'),\n minScore: z.coerce.number().optional().describe('Minimum relevance score threshold'),\n skillNames: z.string().optional().describe('Comma-separated list of skill names to search within'),\n includeReferences: z.coerce.boolean().optional().default(true).describe('Include reference files in search'),\n});\n\n// =============================================================================\n// Skills Response Schemas\n// =============================================================================\n\nexport const skillMetadataSchema = z.object({\n name: z.string(),\n description: z.string(),\n license: z.string().optional(),\n compatibility: z.unknown().optional(),\n metadata: z.record(z.unknown()).optional(),\n});\n\nexport const skillSourceSchema = z.discriminatedUnion('type', [\n z.object({ type: z.literal('external'), packagePath: z.string() }),\n z.object({ type: z.literal('local'), projectPath: z.string() }),\n z.object({ type: z.literal('managed'), mastraPath: z.string() }),\n]);\n\nexport const skillSchema = skillMetadataSchema.extend({\n path: z.string(),\n instructions: z.string(),\n source: skillSourceSchema,\n references: z.array(z.string()),\n scripts: z.array(z.string()),\n assets: z.array(z.string()),\n});\n\nexport const skillMetadataWithPathSchema = skillMetadataSchema.extend({\n path: z.string().describe('Path to the skill directory'),\n});\n\nexport const listSkillsResponseSchema = z.object({\n skills: z.array(skillMetadataWithPathSchema),\n isSkillsConfigured: z.boolean().describe('Whether skills are configured in the workspace'),\n});\n\nexport const getSkillResponseSchema = skillSchema;\n\n/**\n * Agent skill response schema - similar to skillSchema but with optional fields\n * for when full skill details aren't available (e.g., inherited skills without\n * direct access to the Skills instance).\n */\nexport const getAgentSkillResponseSchema = skillMetadataSchema.extend({\n path: z.string().optional(),\n instructions: z.string().optional(),\n source: skillSourceSchema.optional(),\n references: z.array(z.string()).optional(),\n scripts: z.array(z.string()).optional(),\n assets: z.array(z.string()).optional(),\n});\n\nexport const skillReferenceResponseSchema = z.object({\n skillName: z.string(),\n referencePath: z.string(),\n content: z.string(),\n});\n\nexport const listReferencesResponseSchema = z.object({\n skillName: z.string(),\n references: z.array(z.string()),\n});\n\nexport const skillSearchResultSchema = z.object({\n skillName: z.string(),\n source: z.string(),\n content: z.string(),\n score: z.number(),\n lineRange: z\n .object({\n start: z.number(),\n end: z.number(),\n })\n .optional(),\n scoreDetails: z\n .object({\n vector: z.number().optional(),\n bm25: z.number().optional(),\n })\n .optional(),\n});\n\nexport const searchSkillsResponseSchema = z.object({\n results: z.array(skillSearchResultSchema),\n query: z.string(),\n});\n\n// =============================================================================\n// skills.sh Proxy Schemas\n// =============================================================================\n\nexport const skillsShSearchQuerySchema = z.object({\n q: z.string().describe('Search query'),\n limit: z.coerce.number().optional().default(10).describe('Maximum number of results'),\n});\n\nexport const skillsShPopularQuerySchema = z.object({\n limit: z.coerce.number().optional().default(10).describe('Maximum number of results'),\n offset: z.coerce.number().optional().default(0).describe('Offset for pagination'),\n});\n\nexport const skillsShSkillSchema = z.object({\n id: z.string(),\n name: z.string(),\n installs: z.number(),\n topSource: z.string(),\n});\n\nexport const skillsShSearchResponseSchema = z.object({\n query: z.string(),\n searchType: z.string(),\n skills: z.array(skillsShSkillSchema),\n count: z.number(),\n});\n\nexport const skillsShListResponseSchema = z.object({\n skills: z.array(skillsShSkillSchema),\n count: z.number(),\n limit: z.number(),\n offset: z.number(),\n});\n\nexport const skillsShPreviewQuerySchema = z.object({\n owner: z.string().describe('GitHub repository owner'),\n repo: z.string().describe('GitHub repository name'),\n path: z.string().describe('Path to skill within repo'),\n});\n\nexport const skillsShPreviewResponseSchema = z.object({\n content: z.string(),\n});\n\nexport const skillsShInstallBodySchema = z.object({\n owner: z.string().describe('GitHub repository owner'),\n repo: z.string().describe('GitHub repository name'),\n skillName: z.string().describe('Skill name from skills.sh'),\n});\n\nexport const skillsShInstallResponseSchema = z.object({\n success: z.boolean(),\n skillName: z.string(),\n installedPath: z.string(),\n filesWritten: z.number(),\n});\n\nexport const skillsShRemoveBodySchema = z.object({\n skillName: z.string().describe('Name of the installed skill to remove'),\n});\n\nexport const skillsShRemoveResponseSchema = z.object({\n success: z.boolean(),\n skillName: z.string(),\n removedPath: z.string(),\n});\n\nexport const skillsShUpdateBodySchema = z.object({\n skillName: z.string().optional().describe('Specific skill to update, or omit to update all'),\n});\n\nexport const skillsShUpdateResponseSchema = z.object({\n updated: z.array(\n z.object({\n skillName: z.string(),\n success: z.boolean(),\n filesWritten: z.number().optional(),\n error: z.string().optional(),\n }),\n ),\n});\n"]}
@@ -21348,8 +21348,11 @@ var Memory = class extends memory.MastraMemory {
21348
21348
  `Memory error: Resource-scoped semantic recall is enabled but no resourceId was provided. Either provide a resourceId or explicitly set semanticRecall.scope to 'thread'.`
21349
21349
  );
21350
21350
  }
21351
+ let usage;
21351
21352
  if (config?.semanticRecall && vectorSearchString && this.vector) {
21352
- const { embeddings, dimension } = await this.embedMessageContent(vectorSearchString);
21353
+ const result = await this.embedMessageContent(vectorSearchString);
21354
+ usage = result.usage;
21355
+ const { embeddings, dimension } = result;
21353
21356
  const { indexName } = await this.createEmbeddingIndex(dimension, config);
21354
21357
  await Promise.all(
21355
21358
  embeddings.map(async (embedding) => {
@@ -21393,7 +21396,7 @@ var Memory = class extends memory.MastraMemory {
21393
21396
  const rawMessages = shouldGetNewestAndReverse ? paginatedResult.messages.reverse() : paginatedResult.messages;
21394
21397
  const list = new agent.MessageList({ threadId, resourceId }).add(rawMessages, "memory");
21395
21398
  const messages = list.get.all.db();
21396
- return { messages };
21399
+ return { messages, usage };
21397
21400
  }
21398
21401
  async getThreadById({ threadId }) {
21399
21402
  const memoryStore = await this.getMemoryStore();
@@ -21640,10 +21643,11 @@ ${workingMemory}`;
21640
21643
  ...this.embedderOptions || {}
21641
21644
  });
21642
21645
  if (isFastEmbed && !this.firstEmbed) this.firstEmbed = promise;
21643
- const { embeddings } = await promise;
21646
+ const { embeddings, usage } = await promise;
21644
21647
  const result = {
21645
21648
  embeddings,
21646
21649
  chunks,
21650
+ usage,
21647
21651
  dimension: embeddings[0]?.length
21648
21652
  };
21649
21653
  this.embeddingCache.set(key, result);
@@ -21664,6 +21668,7 @@ ${workingMemory}`;
21664
21668
  const result = await memoryStore.saveMessages({
21665
21669
  messages: dbMessages
21666
21670
  });
21671
+ let totalTokens = 0;
21667
21672
  if (this.vector && config.semanticRecall) {
21668
21673
  const embeddingData = [];
21669
21674
  let dimension;
@@ -21679,6 +21684,9 @@ ${workingMemory}`;
21679
21684
  if (!textForEmbedding) return;
21680
21685
  const result2 = await this.embedMessageContent(textForEmbedding);
21681
21686
  dimension = result2.dimension;
21687
+ if (result2.usage?.tokens) {
21688
+ totalTokens += result2.usage.tokens;
21689
+ }
21682
21690
  embeddingData.push({
21683
21691
  embeddings: result2.embeddings,
21684
21692
  metadata: result2.chunks.map(() => ({
@@ -21707,7 +21715,7 @@ ${workingMemory}`;
21707
21715
  });
21708
21716
  }
21709
21717
  }
21710
- return result;
21718
+ return { ...result, usage: totalTokens > 0 ? { tokens: totalTokens } : void 0 };
21711
21719
  }
21712
21720
  updateMessageToHideWorkingMemoryV2(message) {
21713
21721
  const newMessage = { ...message };
@@ -33203,5 +33211,5 @@ exports.START_ASYNC_AGENT_BUILDER_ACTION_ROUTE = START_ASYNC_AGENT_BUILDER_ACTIO
33203
33211
  exports.STREAM_AGENT_BUILDER_ACTION_ROUTE = STREAM_AGENT_BUILDER_ACTION_ROUTE;
33204
33212
  exports.STREAM_LEGACY_AGENT_BUILDER_ACTION_ROUTE = STREAM_LEGACY_AGENT_BUILDER_ACTION_ROUTE;
33205
33213
  exports.agent_builder_exports = agent_builder_exports;
33206
- //# sourceMappingURL=chunk-37DO73XV.cjs.map
33207
- //# sourceMappingURL=chunk-37DO73XV.cjs.map
33214
+ //# sourceMappingURL=chunk-QL3KET2C.cjs.map
33215
+ //# sourceMappingURL=chunk-QL3KET2C.cjs.map