@mastra/core 0.17.2-alpha.0 → 0.18.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (192) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/dist/agent/agent.d.ts +7 -4
  3. package/dist/agent/agent.d.ts.map +1 -1
  4. package/dist/agent/agent.types.d.ts +5 -1
  5. package/dist/agent/agent.types.d.ts.map +1 -1
  6. package/dist/agent/index.cjs +11 -11
  7. package/dist/agent/index.js +2 -2
  8. package/dist/agent/input-processor/index.cjs +6 -6
  9. package/dist/agent/input-processor/index.js +1 -1
  10. package/dist/agent/types.d.ts +8 -6
  11. package/dist/agent/types.d.ts.map +1 -1
  12. package/dist/agent/workflows/prepare-stream/index.d.ts +5 -2
  13. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  14. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +2 -1
  15. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  16. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +2 -1
  17. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -1
  18. package/dist/agent/workflows/prepare-stream/stream-step.d.ts +3 -1
  19. package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -1
  20. package/dist/ai-tracing/index.cjs +32 -32
  21. package/dist/ai-tracing/index.js +1 -1
  22. package/dist/{chunk-R655GQ3Z.js → chunk-2ZSMA4EM.js} +54 -48
  23. package/dist/chunk-2ZSMA4EM.js.map +1 -0
  24. package/dist/{chunk-RF32ODBL.js → chunk-6NZTZOEI.js} +22 -47
  25. package/dist/chunk-6NZTZOEI.js.map +1 -0
  26. package/dist/{chunk-XSZYAAUC.js → chunk-7CF3FKP3.js} +10 -40
  27. package/dist/chunk-7CF3FKP3.js.map +1 -0
  28. package/dist/{chunk-MTJXEZUV.cjs → chunk-AEYCHF2U.cjs} +20 -10
  29. package/dist/chunk-AEYCHF2U.cjs.map +1 -0
  30. package/dist/{chunk-RAQ4VAQ4.js → chunk-AR76DMZQ.js} +10 -3
  31. package/dist/chunk-AR76DMZQ.js.map +1 -0
  32. package/dist/{chunk-DK7N45JH.cjs → chunk-CBV6EVJK.cjs} +69 -62
  33. package/dist/chunk-CBV6EVJK.cjs.map +1 -0
  34. package/dist/chunk-F7GI2OYP.js +3 -0
  35. package/dist/chunk-F7GI2OYP.js.map +1 -0
  36. package/dist/chunk-FVIT6JZ5.cjs +4 -0
  37. package/dist/chunk-FVIT6JZ5.cjs.map +1 -0
  38. package/dist/{chunk-N4YXCARN.cjs → chunk-GGN63GU5.cjs} +8 -7
  39. package/dist/chunk-GGN63GU5.cjs.map +1 -0
  40. package/dist/{chunk-GWSHTBQY.js → chunk-GMQUHK3L.js} +18 -8
  41. package/dist/chunk-GMQUHK3L.js.map +1 -0
  42. package/dist/{chunk-HBOOZ4W3.cjs → chunk-JRTFV63C.cjs} +27 -52
  43. package/dist/chunk-JRTFV63C.cjs.map +1 -0
  44. package/dist/{chunk-L77INLRG.js → chunk-JXRAFE3E.js} +3 -3
  45. package/dist/{chunk-L77INLRG.js.map → chunk-JXRAFE3E.js.map} +1 -1
  46. package/dist/{chunk-WYBYCVS3.cjs → chunk-L7Z3C5XG.cjs} +4 -4
  47. package/dist/{chunk-WYBYCVS3.cjs.map → chunk-L7Z3C5XG.cjs.map} +1 -1
  48. package/dist/{chunk-PRVMPHNQ.cjs → chunk-OVVKYARB.cjs} +10 -3
  49. package/dist/chunk-OVVKYARB.cjs.map +1 -0
  50. package/dist/{chunk-TD2CGJTC.cjs → chunk-QIXLPKMN.cjs} +4 -4
  51. package/dist/{chunk-TD2CGJTC.cjs.map → chunk-QIXLPKMN.cjs.map} +1 -1
  52. package/dist/{chunk-CIPXOPLS.js → chunk-SHFLPFKN.js} +3 -3
  53. package/dist/{chunk-CIPXOPLS.js.map → chunk-SHFLPFKN.js.map} +1 -1
  54. package/dist/{chunk-VRRY6NGC.js → chunk-SQFVIROI.js} +4 -3
  55. package/dist/chunk-SQFVIROI.js.map +1 -0
  56. package/dist/{chunk-RGJ7F32F.cjs → chunk-TJZ4ERV4.cjs} +13 -47
  57. package/dist/chunk-TJZ4ERV4.cjs.map +1 -0
  58. package/dist/{chunk-BZ4AOVOL.cjs → chunk-TRZT7QPJ.cjs} +6 -6
  59. package/dist/{chunk-BZ4AOVOL.cjs.map → chunk-TRZT7QPJ.cjs.map} +1 -1
  60. package/dist/{chunk-BJLIYOUK.js → chunk-TZZFP4EW.js} +3 -3
  61. package/dist/{chunk-BJLIYOUK.js.map → chunk-TZZFP4EW.js.map} +1 -1
  62. package/dist/{chunk-3N57EBJB.cjs → chunk-UMATHB4Q.cjs} +56 -23
  63. package/dist/chunk-UMATHB4Q.cjs.map +1 -0
  64. package/dist/{chunk-JXKSCEDW.js → chunk-USHKSVKL.js} +49 -16
  65. package/dist/chunk-USHKSVKL.js.map +1 -0
  66. package/dist/chunk-WAGAASWE.cjs +46 -0
  67. package/dist/chunk-WAGAASWE.cjs.map +1 -0
  68. package/dist/chunk-X2TVBX7O.js +41 -0
  69. package/dist/chunk-X2TVBX7O.js.map +1 -0
  70. package/dist/{chunk-WOC5SCZF.cjs → chunk-Y5XECV4O.cjs} +4 -4
  71. package/dist/{chunk-WOC5SCZF.cjs.map → chunk-Y5XECV4O.cjs.map} +1 -1
  72. package/dist/{chunk-C7EN3GVU.js → chunk-YDLEEOJ6.js} +3 -3
  73. package/dist/{chunk-C7EN3GVU.js.map → chunk-YDLEEOJ6.js.map} +1 -1
  74. package/dist/index.cjs +48 -44
  75. package/dist/index.cjs.map +1 -1
  76. package/dist/index.js +10 -10
  77. package/dist/index.js.map +1 -1
  78. package/dist/integration/index.cjs +3 -3
  79. package/dist/integration/index.js +1 -1
  80. package/dist/llm/model/model.loop.d.ts +1 -1
  81. package/dist/llm/model/model.loop.d.ts.map +1 -1
  82. package/dist/loop/index.cjs +2 -2
  83. package/dist/loop/index.js +1 -1
  84. package/dist/loop/loop.d.ts +1 -1
  85. package/dist/loop/loop.d.ts.map +1 -1
  86. package/dist/loop/network/index.d.ts +6 -6
  87. package/dist/loop/test-utils/options.d.ts.map +1 -1
  88. package/dist/loop/types.d.ts +10 -1
  89. package/dist/loop/types.d.ts.map +1 -1
  90. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -1
  91. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  92. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +1 -1
  93. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  94. package/dist/loop/workflows/stream.d.ts +1 -1
  95. package/dist/loop/workflows/stream.d.ts.map +1 -1
  96. package/dist/mastra/hooks.d.ts.map +1 -1
  97. package/dist/mastra/index.cjs +2 -2
  98. package/dist/mastra/index.d.ts +3 -0
  99. package/dist/mastra/index.d.ts.map +1 -1
  100. package/dist/mastra/index.js +1 -1
  101. package/dist/memory/index.cjs +4 -4
  102. package/dist/memory/index.js +1 -1
  103. package/dist/memory/memory.d.ts +1 -1
  104. package/dist/memory/memory.d.ts.map +1 -1
  105. package/dist/memory/types.d.ts +27 -0
  106. package/dist/memory/types.d.ts.map +1 -1
  107. package/dist/network/vNext/index.cjs +34 -31
  108. package/dist/network/vNext/index.cjs.map +1 -1
  109. package/dist/network/vNext/index.d.ts +18 -18
  110. package/dist/network/vNext/index.d.ts.map +1 -1
  111. package/dist/network/vNext/index.js +7 -4
  112. package/dist/network/vNext/index.js.map +1 -1
  113. package/dist/processors/index.cjs +10 -10
  114. package/dist/processors/index.js +1 -1
  115. package/dist/relevance/index.cjs +4 -4
  116. package/dist/relevance/index.js +1 -1
  117. package/dist/scores/base.d.ts +24 -1
  118. package/dist/scores/base.d.ts.map +1 -1
  119. package/dist/scores/index.cjs +9 -8
  120. package/dist/scores/index.js +2 -1
  121. package/dist/scores/scoreTraces/index.cjs +442 -0
  122. package/dist/scores/scoreTraces/index.cjs.map +1 -0
  123. package/dist/scores/scoreTraces/index.d.ts +3 -0
  124. package/dist/scores/scoreTraces/index.d.ts.map +1 -0
  125. package/dist/scores/scoreTraces/index.js +434 -0
  126. package/dist/scores/scoreTraces/index.js.map +1 -0
  127. package/dist/scores/scoreTraces/scoreTraces.d.ts +10 -0
  128. package/dist/scores/scoreTraces/scoreTraces.d.ts.map +1 -0
  129. package/dist/scores/scoreTraces/scoreTracesWorkflow.d.ts +87 -0
  130. package/dist/scores/scoreTraces/scoreTracesWorkflow.d.ts.map +1 -0
  131. package/dist/scores/scoreTraces/utils.d.ts +25 -0
  132. package/dist/scores/scoreTraces/utils.d.ts.map +1 -0
  133. package/dist/scores/types.d.ts +8 -7
  134. package/dist/scores/types.d.ts.map +1 -1
  135. package/dist/storage/index.cjs +3 -3
  136. package/dist/storage/index.js +1 -1
  137. package/dist/stream/base/output.d.ts +30 -1
  138. package/dist/stream/base/output.d.ts.map +1 -1
  139. package/dist/stream/index.cjs +4 -4
  140. package/dist/stream/index.js +1 -1
  141. package/dist/stream/types.d.ts +16 -0
  142. package/dist/stream/types.d.ts.map +1 -1
  143. package/dist/test-utils/llm-mock.cjs +2 -2
  144. package/dist/test-utils/llm-mock.js +1 -1
  145. package/dist/tools/index.cjs +4 -4
  146. package/dist/tools/index.js +1 -1
  147. package/dist/tools/index.warning.d.ts +2 -2
  148. package/dist/tools/index.warning.d.ts.map +1 -1
  149. package/dist/tools/is-vercel-tool.cjs +2 -2
  150. package/dist/tools/is-vercel-tool.js +1 -1
  151. package/dist/tools/tool-builder/builder.d.ts.map +1 -1
  152. package/dist/tools/tool.d.ts +13 -8
  153. package/dist/tools/tool.d.ts.map +1 -1
  154. package/dist/tools/types.d.ts +7 -2
  155. package/dist/tools/types.d.ts.map +1 -1
  156. package/dist/utils.cjs +17 -17
  157. package/dist/utils.d.ts +1 -0
  158. package/dist/utils.d.ts.map +1 -1
  159. package/dist/utils.js +1 -1
  160. package/dist/workflows/default.d.ts.map +1 -1
  161. package/dist/workflows/evented/index.cjs +10 -10
  162. package/dist/workflows/evented/index.js +1 -1
  163. package/dist/workflows/evented/step-executor.d.ts.map +1 -1
  164. package/dist/workflows/evented/workflow-event-processor/index.d.ts.map +1 -1
  165. package/dist/workflows/evented/workflow.d.ts +1 -1
  166. package/dist/workflows/evented/workflow.d.ts.map +1 -1
  167. package/dist/workflows/index.cjs +14 -10
  168. package/dist/workflows/index.js +1 -1
  169. package/dist/workflows/legacy/index.cjs +22 -22
  170. package/dist/workflows/legacy/index.js +1 -1
  171. package/dist/workflows/step.d.ts +4 -2
  172. package/dist/workflows/step.d.ts.map +1 -1
  173. package/dist/workflows/types.d.ts +1 -0
  174. package/dist/workflows/types.d.ts.map +1 -1
  175. package/dist/workflows/workflow.d.ts +2 -2
  176. package/dist/workflows/workflow.d.ts.map +1 -1
  177. package/package.json +14 -4
  178. package/scores/scoreTraces.d.ts +1 -0
  179. package/dist/chunk-3N57EBJB.cjs.map +0 -1
  180. package/dist/chunk-DK7N45JH.cjs.map +0 -1
  181. package/dist/chunk-GWSHTBQY.js.map +0 -1
  182. package/dist/chunk-HBOOZ4W3.cjs.map +0 -1
  183. package/dist/chunk-JXKSCEDW.js.map +0 -1
  184. package/dist/chunk-MTJXEZUV.cjs.map +0 -1
  185. package/dist/chunk-N4YXCARN.cjs.map +0 -1
  186. package/dist/chunk-PRVMPHNQ.cjs.map +0 -1
  187. package/dist/chunk-R655GQ3Z.js.map +0 -1
  188. package/dist/chunk-RAQ4VAQ4.js.map +0 -1
  189. package/dist/chunk-RF32ODBL.js.map +0 -1
  190. package/dist/chunk-RGJ7F32F.cjs.map +0 -1
  191. package/dist/chunk-VRRY6NGC.js.map +0 -1
  192. package/dist/chunk-XSZYAAUC.js.map +0 -1
@@ -71,22 +71,29 @@ var Tool = class {
71
71
  description;
72
72
  inputSchema;
73
73
  outputSchema;
74
+ suspendSchema;
75
+ resumeSchema;
74
76
  execute;
75
77
  mastra;
78
+ requireApproval;
76
79
  constructor(opts) {
77
80
  this.id = opts.id;
78
81
  this.description = opts.description;
79
82
  this.inputSchema = opts.inputSchema;
80
83
  this.outputSchema = opts.outputSchema;
84
+ this.suspendSchema = opts.suspendSchema;
85
+ this.resumeSchema = opts.resumeSchema;
81
86
  this.mastra = opts.mastra;
87
+ this.requireApproval = opts.requireApproval || false;
82
88
  if (opts.execute) {
83
89
  const originalExecute = opts.execute;
84
90
  this.execute = async (context, options) => {
91
+ const { resumeData, suspend } = options ?? {};
85
92
  const { data, error } = validateToolInput(this.inputSchema, context, this.id);
86
93
  if (error) {
87
94
  return error;
88
95
  }
89
- return originalExecute(data, options);
96
+ return originalExecute({ ...data, suspend, resumeData }, options);
90
97
  };
91
98
  }
92
99
  }
@@ -104,5 +111,5 @@ exports.Tool = Tool;
104
111
  exports.createTool = createTool;
105
112
  exports.isVercelTool = isVercelTool;
106
113
  exports.validateToolInput = validateToolInput;
107
- //# sourceMappingURL=chunk-PRVMPHNQ.cjs.map
108
- //# sourceMappingURL=chunk-PRVMPHNQ.cjs.map
114
+ //# sourceMappingURL=chunk-OVVKYARB.cjs.map
115
+ //# sourceMappingURL=chunk-OVVKYARB.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/tools/validation.ts","../src/tools/tool.ts","../src/tools/toolchecks.ts"],"names":[],"mappings":"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","file":"chunk-OVVKYARB.cjs","sourcesContent":["import type { z } from 'zod';\n\nexport interface ValidationError<T = any> {\n error: true;\n message: string;\n validationErrors: z.ZodFormattedError<T>;\n}\n\n/**\n * Validates input against a Zod schema and returns a structured error if validation fails\n * @param schema The Zod schema to validate against\n * @param input The input to validate\n * @param toolId Optional tool ID for better error messages\n * @returns The validation error object if validation fails, undefined if successful\n */\nexport function validateToolInput<T = any>(\n schema: z.ZodSchema<T> | undefined,\n input: unknown,\n toolId?: string,\n): { data: T | unknown; error?: ValidationError<T> } {\n if (!schema || !('safeParse' in schema)) {\n return { data: input };\n }\n\n // Store validation results to avoid duplicate validation\n type ValidationAttempt = {\n result: z.SafeParseReturnType<any, T>;\n data: unknown;\n structure: 'direct' | 'context' | 'inputData';\n };\n\n const validationAttempts: ValidationAttempt[] = [];\n\n // Try validating the input directly first\n const directValidation = schema.safeParse(input);\n validationAttempts.push({\n result: directValidation,\n data: input,\n structure: 'direct',\n });\n\n if (directValidation.success) {\n return { data: input };\n }\n\n // Handle ToolExecutionContext format { context: data, ... }\n if (input && typeof input === 'object' && 'context' in input) {\n const contextData = (input as any).context;\n const contextValidation = schema.safeParse(contextData);\n validationAttempts.push({\n result: contextValidation,\n data: contextData,\n structure: 'context',\n });\n\n if (contextValidation.success) {\n return { data: { ...(input as object), context: contextValidation.data } };\n }\n\n // Handle StepExecutionContext format { context: { inputData: data, ... }, ... }\n if (contextData && typeof contextData === 'object' && 'inputData' in contextData) {\n const inputDataValue = (contextData as any).inputData;\n const inputDataValidation = schema.safeParse(inputDataValue);\n validationAttempts.push({\n result: inputDataValidation,\n data: inputDataValue,\n structure: 'inputData',\n });\n\n if (inputDataValidation.success) {\n // For inputData unwrapping, preserve the structure if the original context had additional properties\n // but return just the validated data if it was a pure inputData wrapper\n const contextKeys = Object.keys(contextData);\n\n // If context only has inputData, return the full structure with the validated data\n // Otherwise, return just the validated inputData\n if (contextKeys.length === 1 && contextKeys[0] === 'inputData') {\n return { data: { ...(input as object), context: { inputData: inputDataValidation.data } } };\n } else {\n // Multiple keys in context, return just the validated data\n return { data: inputDataValidation.data };\n }\n }\n }\n }\n\n // All validations failed, find the best error to return\n // Prefer the most specific error (deepest unwrapping level that has meaningful errors)\n let bestAttempt = validationAttempts[0]; // Start with direct validation\n\n for (const attempt of validationAttempts) {\n if (!attempt.result.success && attempt.result.error.issues.length > 0) {\n bestAttempt = attempt;\n }\n }\n\n // Use the best validation attempt for error reporting\n if (bestAttempt && !bestAttempt.result.success) {\n const errorMessages = bestAttempt.result.error.issues\n .map((e: z.ZodIssue) => `- ${e.path?.join('.') || 'root'}: ${e.message}`)\n .join('\\n');\n\n const error: ValidationError<T> = {\n error: true,\n message: `Tool validation failed${toolId ? ` for ${toolId}` : ''}. Please fix the following errors and try again:\\n${errorMessages}\\n\\nProvided arguments: ${JSON.stringify(bestAttempt.data, null, 2)}`,\n validationErrors: bestAttempt.result.error.format() as z.ZodFormattedError<T>,\n };\n\n return { data: input, error };\n }\n\n // This should not happen since we handle all valid cases above\n return { data: input };\n}\n","import type { ToolExecutionOptions } from 'ai';\nimport type { ToolCallOptions } from 'ai-v5';\nimport type { z } from 'zod';\n\nimport type { Mastra } from '../mastra';\nimport type { ToolAction, ToolExecutionContext, ToolInvocationOptions } from './types';\nimport { validateToolInput } from './validation';\n\nexport class Tool<\n TSchemaIn extends z.ZodSchema | undefined = undefined,\n TSchemaOut extends z.ZodSchema | undefined = undefined,\n TSuspendSchema extends z.ZodSchema = any,\n TResumeSchema extends z.ZodSchema = any,\n TContext extends ToolExecutionContext<TSchemaIn, TSuspendSchema, TResumeSchema> = ToolExecutionContext<\n TSchemaIn,\n TSuspendSchema,\n TResumeSchema\n >,\n> implements ToolAction<TSchemaIn, TSchemaOut, TSuspendSchema, TResumeSchema, TContext>\n{\n id: string;\n description: string;\n inputSchema?: TSchemaIn;\n outputSchema?: TSchemaOut;\n suspendSchema?: TSuspendSchema;\n resumeSchema?: TResumeSchema;\n execute?: ToolAction<TSchemaIn, TSchemaOut, TSuspendSchema, TResumeSchema, TContext>['execute'];\n mastra?: Mastra;\n requireApproval?: boolean;\n\n constructor(opts: ToolAction<TSchemaIn, TSchemaOut, TSuspendSchema, TResumeSchema, TContext>) {\n this.id = opts.id;\n this.description = opts.description;\n this.inputSchema = opts.inputSchema;\n this.outputSchema = opts.outputSchema;\n this.suspendSchema = opts.suspendSchema;\n this.resumeSchema = opts.resumeSchema;\n this.mastra = opts.mastra;\n this.requireApproval = opts.requireApproval || false;\n\n // Wrap the execute function with validation if it exists\n if (opts.execute) {\n const originalExecute = opts.execute;\n this.execute = async (context: TContext, options?: ToolInvocationOptions) => {\n const { resumeData, suspend } = (options ?? {}) as {\n resumeData?: any;\n suspend?: (suspendPayload: any) => Promise<any>;\n };\n // Validate input if schema exists\n const { data, error } = validateToolInput(this.inputSchema, context, this.id);\n if (error) {\n return error as any;\n }\n\n return originalExecute({ ...(data as TContext), suspend, resumeData } as TContext, options);\n };\n }\n }\n}\n\nexport function createTool<\n TSchemaIn extends z.ZodSchema | undefined = undefined,\n TSchemaOut extends z.ZodSchema | undefined = undefined,\n TSuspendSchema extends z.ZodSchema = any,\n TResumeSchema extends z.ZodSchema = any,\n TContext extends ToolExecutionContext<TSchemaIn, TSuspendSchema, TResumeSchema> = ToolExecutionContext<\n TSchemaIn,\n TSuspendSchema,\n TResumeSchema\n >,\n TExecute extends ToolAction<TSchemaIn, TSchemaOut, TSuspendSchema, TResumeSchema, TContext>['execute'] = ToolAction<\n TSchemaIn,\n TSchemaOut,\n TSuspendSchema,\n TResumeSchema,\n TContext\n >['execute'],\n>(\n opts: ToolAction<TSchemaIn, TSchemaOut, TSuspendSchema, TResumeSchema, TContext> & {\n execute?: TExecute;\n },\n): [TSchemaIn, TSchemaOut, TExecute] extends [z.ZodSchema, z.ZodSchema, Function]\n ? Tool<TSchemaIn, TSchemaOut, TSuspendSchema, TResumeSchema, TContext> & {\n inputSchema: TSchemaIn;\n outputSchema: TSchemaOut;\n execute: (context: TContext, options: ToolExecutionOptions | ToolCallOptions) => Promise<any>;\n }\n : Tool<TSchemaIn, TSchemaOut, TSuspendSchema, TResumeSchema, TContext> {\n return new Tool(opts) as any;\n}\n","import { Tool } from './tool';\nimport type { ToolToConvert } from './tool-builder/builder';\nimport type { VercelTool } from './types';\n\n/**\n * Checks if a tool is a Vercel Tool\n * @param tool - The tool to check\n * @returns True if the tool is a Vercel Tool, false otherwise\n */\nexport function isVercelTool(tool?: ToolToConvert): tool is VercelTool {\n // Checks if this tool is not an instance of Tool\n return !!(tool && !(tool instanceof Tool) && 'parameters' in tool);\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkDK7N45JH_cjs = require('./chunk-DK7N45JH.cjs');
3
+ var chunkCBV6EVJK_cjs = require('./chunk-CBV6EVJK.cjs');
4
4
 
5
5
  // src/relevance/cohere/index.ts
6
6
  var CohereRelevanceScorer = class {
@@ -54,7 +54,7 @@ Relevance score (0-1):`;
54
54
  var MastraAgentRelevanceScorer = class {
55
55
  agent;
56
56
  constructor(name, model) {
57
- this.agent = new chunkDK7N45JH_cjs.Agent({
57
+ this.agent = new chunkCBV6EVJK_cjs.Agent({
58
58
  name: `Relevance Scorer ${name}`,
59
59
  instructions: `You are a specialized agent for evaluating the relevance of text to queries.
60
60
  Your task is to rate how well a text passage answers a given query.
@@ -87,5 +87,5 @@ Always return just the number, no explanation.`,
87
87
  exports.CohereRelevanceScorer = CohereRelevanceScorer;
88
88
  exports.MastraAgentRelevanceScorer = MastraAgentRelevanceScorer;
89
89
  exports.createSimilarityPrompt = createSimilarityPrompt;
90
- //# sourceMappingURL=chunk-TD2CGJTC.cjs.map
91
- //# sourceMappingURL=chunk-TD2CGJTC.cjs.map
90
+ //# sourceMappingURL=chunk-QIXLPKMN.cjs.map
91
+ //# sourceMappingURL=chunk-QIXLPKMN.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/relevance/cohere/index.ts","../src/relevance/relevance-score-provider.ts","../src/relevance/mastra-agent/index.ts"],"names":["Agent"],"mappings":";;;;;AAoBO,IAAM,wBAAN,MAA8D;AAAA,EAC3D,KAAA;AAAA,EACA,MAAA;AAAA,EACR,WAAA,CAAY,OAAe,MAAA,EAAiB;AAC1C,IAAA,OAAA,CAAQ,IAAA;AAAA,MACN;AAAA,KACF;AACA,IAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AACd,IAAA,IAAA,CAAK,KAAA,GAAQ,KAAA;AAAA,EACf;AAAA,EACA,MAAM,iBAAA,CAAkB,KAAA,EAAe,IAAA,EAA+B;AACpE,IAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,CAAA,gCAAA,CAAA,EAAoC;AAAA,MAC/D,MAAA,EAAQ,MAAA;AAAA,MACR,OAAA,EAAS;AAAA,QACP,cAAA,EAAgB,kBAAA;AAAA,QAChB,aAAA,EAAe,CAAA,OAAA,EAAU,IAAA,CAAK,MAAM,CAAA;AAAA,OACtC;AAAA,MACA,IAAA,EAAM,KAAK,SAAA,CAAU;AAAA,QACnB,KAAA;AAAA,QACA,SAAA,EAAW,CAAC,IAAI,CAAA;AAAA,QAChB,OAAO,IAAA,CAAK,KAAA;AAAA,QACZ,KAAA,EAAO;AAAA,OACR;AAAA,KACF,CAAA;AAED,IAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,MAAA,MAAM,IAAI,KAAA,CAAM,CAAA,kBAAA,EAAqB,QAAA,CAAS,MAAM,IAAI,MAAM,QAAA,CAAS,IAAA,EAAM,CAAA,CAAE,CAAA;AAAA,IACjF;AAEA,IAAA,MAAM,IAAA,GAAQ,MAAM,QAAA,CAAS,IAAA,EAAK;AAClC,IAAA,MAAM,cAAA,GAAiB,IAAA,CAAK,OAAA,CAAQ,CAAC,CAAA,EAAG,eAAA;AAExC,IAAA,IAAI,CAAC,cAAA,EAAgB;AACnB,MAAA,MAAM,IAAI,MAAM,6CAA6C,CAAA;AAAA,IAC/D;AAEA,IAAA,OAAO,cAAA;AAAA,EACT;AACF;;;ACpDO,SAAS,sBAAA,CAAuB,OAAe,IAAA,EAAsB;AAC1E,EAAA,OAAO,CAAA;;AAAA,OAAA,EAEA,KAAK;;AAAA,MAAA,EAEN,IAAI;;AAAA,sBAAA,CAAA;AAGZ;;;ACRO,IAAM,6BAAN,MAAmE;AAAA,EAChE,KAAA;AAAA,EAER,WAAA,CAAY,MAAc,KAAA,EAA4B;AACpD,IAAA,IAAA,CAAK,KAAA,GAAQ,IAAIA,uBAAA,CAAM;AAAA,MACrB,IAAA,EAAM,oBAAoB,IAAI,CAAA,CAAA;AAAA,MAC9B,YAAA,EAAc,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8CAAA,CAAA;AAAA,MAUd;AAAA,KACD,CAAA;AAAA,EACH;AAAA,EAEA,MAAM,iBAAA,CAAkB,KAAA,EAAe,IAAA,EAA+B;AACpE,IAAA,MAAM,MAAA,GAAS,sBAAA,CAAuB,KAAA,EAAO,IAAI,CAAA;AAEjD,IAAA,MAAM,KAAA,GAAQ,MAAM,IAAA,CAAK,KAAA,CAAM,QAAA,EAAS;AAExC,IAAA,IAAI,QAAA;AACJ,IAAA,IAAI,KAAA,CAAM,yBAAyB,IAAA,EAAM;AACvC,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,KAAA,CAAM,cAAc,MAAM,CAAA;AAC1D,MAAA,QAAA,GAAW,YAAA,CAAa,IAAA;AAAA,IAC1B,CAAA,MAAO;AACL,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,KAAA,CAAM,SAAS,MAAM,CAAA;AACrD,MAAA,QAAA,GAAW,YAAA,CAAa,IAAA;AAAA,IAC1B;AACA,IAAA,OAAO,WAAW,QAAQ,CAAA;AAAA,EAC5B;AACF","file":"chunk-TD2CGJTC.cjs","sourcesContent":["import type { RelevanceScoreProvider } from '../relevance-score-provider';\n\ninterface CohereRerankingResponse {\n results: Array<{\n index: number;\n relevance_score: number;\n }>;\n id: string;\n meta: {\n api_version: {\n version: string;\n is_experimental: boolean;\n };\n billed_units: {\n search_units: number;\n };\n };\n}\n\n/** @deprecated Import from `@mastra/rag` instead */\nexport class CohereRelevanceScorer implements RelevanceScoreProvider {\n private model: string;\n private apiKey?: string;\n constructor(model: string, apiKey?: string) {\n console.warn(\n 'CohereRelevanceScorer exported from @mastra/core is deprecated. Please import from \"@mastra/rag\" instead.',\n );\n this.apiKey = apiKey;\n this.model = model;\n }\n async getRelevanceScore(query: string, text: string): Promise<number> {\n const response = await fetch(`https://api.cohere.com/v2/rerank`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${this.apiKey}`,\n },\n body: JSON.stringify({\n query,\n documents: [text],\n model: this.model,\n top_n: 1,\n }),\n });\n\n if (!response.ok) {\n throw new Error(`Cohere API error: ${response.status} ${await response.text()}`);\n }\n\n const data = (await response.json()) as CohereRerankingResponse;\n const relevanceScore = data.results[0]?.relevance_score;\n\n if (!relevanceScore) {\n throw new Error('No relevance score found on Cohere response');\n }\n\n return relevanceScore;\n }\n}\n","// Provider interfaces\nexport interface RelevanceScoreProvider {\n getRelevanceScore(text1: string, text2: string): Promise<number>;\n}\n\n// Helper function used by providers\nexport function createSimilarityPrompt(query: string, text: string): string {\n return `Rate the semantic similarity between the following the query and the text on a scale from 0 to 1 (decimals allowed), where 1 means exactly the same meaning and 0 means completely different:\n\nQuery: ${query}\n\nText: ${text}\n\nRelevance score (0-1):`;\n}\n","import { Agent } from '../../agent';\nimport type { MastraLanguageModel } from '../../llm/model/shared.types';\nimport { createSimilarityPrompt } from '../relevance-score-provider';\nimport type { RelevanceScoreProvider } from '../relevance-score-provider';\n\n// Mastra Agent implementation\nexport class MastraAgentRelevanceScorer implements RelevanceScoreProvider {\n private agent: Agent;\n\n constructor(name: string, model: MastraLanguageModel) {\n this.agent = new Agent({\n name: `Relevance Scorer ${name}`,\n instructions: `You are a specialized agent for evaluating the relevance of text to queries.\nYour task is to rate how well a text passage answers a given query.\nOutput only a number between 0 and 1, where:\n1.0 = Perfectly relevant, directly answers the query\n0.0 = Completely irrelevant\nConsider:\n- Direct relevance to the question\n- Completeness of information\n- Quality and specificity\nAlways return just the number, no explanation.`,\n model,\n });\n }\n\n async getRelevanceScore(query: string, text: string): Promise<number> {\n const prompt = createSimilarityPrompt(query, text);\n\n const model = await this.agent.getModel();\n\n let response: string;\n if (model.specificationVersion === 'v2') {\n const responseText = await this.agent.generateVNext(prompt);\n response = responseText.text;\n } else {\n const responseText = await this.agent.generate(prompt);\n response = responseText.text;\n }\n return parseFloat(response);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/relevance/cohere/index.ts","../src/relevance/relevance-score-provider.ts","../src/relevance/mastra-agent/index.ts"],"names":["Agent"],"mappings":";;;;;AAoBO,IAAM,wBAAN,MAA8D;AAAA,EAC3D,KAAA;AAAA,EACA,MAAA;AAAA,EACR,WAAA,CAAY,OAAe,MAAA,EAAiB;AAC1C,IAAA,OAAA,CAAQ,IAAA;AAAA,MACN;AAAA,KACF;AACA,IAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AACd,IAAA,IAAA,CAAK,KAAA,GAAQ,KAAA;AAAA,EACf;AAAA,EACA,MAAM,iBAAA,CAAkB,KAAA,EAAe,IAAA,EAA+B;AACpE,IAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,CAAA,gCAAA,CAAA,EAAoC;AAAA,MAC/D,MAAA,EAAQ,MAAA;AAAA,MACR,OAAA,EAAS;AAAA,QACP,cAAA,EAAgB,kBAAA;AAAA,QAChB,aAAA,EAAe,CAAA,OAAA,EAAU,IAAA,CAAK,MAAM,CAAA;AAAA,OACtC;AAAA,MACA,IAAA,EAAM,KAAK,SAAA,CAAU;AAAA,QACnB,KAAA;AAAA,QACA,SAAA,EAAW,CAAC,IAAI,CAAA;AAAA,QAChB,OAAO,IAAA,CAAK,KAAA;AAAA,QACZ,KAAA,EAAO;AAAA,OACR;AAAA,KACF,CAAA;AAED,IAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,MAAA,MAAM,IAAI,KAAA,CAAM,CAAA,kBAAA,EAAqB,QAAA,CAAS,MAAM,IAAI,MAAM,QAAA,CAAS,IAAA,EAAM,CAAA,CAAE,CAAA;AAAA,IACjF;AAEA,IAAA,MAAM,IAAA,GAAQ,MAAM,QAAA,CAAS,IAAA,EAAK;AAClC,IAAA,MAAM,cAAA,GAAiB,IAAA,CAAK,OAAA,CAAQ,CAAC,CAAA,EAAG,eAAA;AAExC,IAAA,IAAI,CAAC,cAAA,EAAgB;AACnB,MAAA,MAAM,IAAI,MAAM,6CAA6C,CAAA;AAAA,IAC/D;AAEA,IAAA,OAAO,cAAA;AAAA,EACT;AACF;;;ACpDO,SAAS,sBAAA,CAAuB,OAAe,IAAA,EAAsB;AAC1E,EAAA,OAAO,CAAA;;AAAA,OAAA,EAEA,KAAK;;AAAA,MAAA,EAEN,IAAI;;AAAA,sBAAA,CAAA;AAGZ;;;ACRO,IAAM,6BAAN,MAAmE;AAAA,EAChE,KAAA;AAAA,EAER,WAAA,CAAY,MAAc,KAAA,EAA4B;AACpD,IAAA,IAAA,CAAK,KAAA,GAAQ,IAAIA,uBAAA,CAAM;AAAA,MACrB,IAAA,EAAM,oBAAoB,IAAI,CAAA,CAAA;AAAA,MAC9B,YAAA,EAAc,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8CAAA,CAAA;AAAA,MAUd;AAAA,KACD,CAAA;AAAA,EACH;AAAA,EAEA,MAAM,iBAAA,CAAkB,KAAA,EAAe,IAAA,EAA+B;AACpE,IAAA,MAAM,MAAA,GAAS,sBAAA,CAAuB,KAAA,EAAO,IAAI,CAAA;AAEjD,IAAA,MAAM,KAAA,GAAQ,MAAM,IAAA,CAAK,KAAA,CAAM,QAAA,EAAS;AAExC,IAAA,IAAI,QAAA;AACJ,IAAA,IAAI,KAAA,CAAM,yBAAyB,IAAA,EAAM;AACvC,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,KAAA,CAAM,cAAc,MAAM,CAAA;AAC1D,MAAA,QAAA,GAAW,YAAA,CAAa,IAAA;AAAA,IAC1B,CAAA,MAAO;AACL,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,KAAA,CAAM,SAAS,MAAM,CAAA;AACrD,MAAA,QAAA,GAAW,YAAA,CAAa,IAAA;AAAA,IAC1B;AACA,IAAA,OAAO,WAAW,QAAQ,CAAA;AAAA,EAC5B;AACF","file":"chunk-QIXLPKMN.cjs","sourcesContent":["import type { RelevanceScoreProvider } from '../relevance-score-provider';\n\ninterface CohereRerankingResponse {\n results: Array<{\n index: number;\n relevance_score: number;\n }>;\n id: string;\n meta: {\n api_version: {\n version: string;\n is_experimental: boolean;\n };\n billed_units: {\n search_units: number;\n };\n };\n}\n\n/** @deprecated Import from `@mastra/rag` instead */\nexport class CohereRelevanceScorer implements RelevanceScoreProvider {\n private model: string;\n private apiKey?: string;\n constructor(model: string, apiKey?: string) {\n console.warn(\n 'CohereRelevanceScorer exported from @mastra/core is deprecated. Please import from \"@mastra/rag\" instead.',\n );\n this.apiKey = apiKey;\n this.model = model;\n }\n async getRelevanceScore(query: string, text: string): Promise<number> {\n const response = await fetch(`https://api.cohere.com/v2/rerank`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${this.apiKey}`,\n },\n body: JSON.stringify({\n query,\n documents: [text],\n model: this.model,\n top_n: 1,\n }),\n });\n\n if (!response.ok) {\n throw new Error(`Cohere API error: ${response.status} ${await response.text()}`);\n }\n\n const data = (await response.json()) as CohereRerankingResponse;\n const relevanceScore = data.results[0]?.relevance_score;\n\n if (!relevanceScore) {\n throw new Error('No relevance score found on Cohere response');\n }\n\n return relevanceScore;\n }\n}\n","// Provider interfaces\nexport interface RelevanceScoreProvider {\n getRelevanceScore(text1: string, text2: string): Promise<number>;\n}\n\n// Helper function used by providers\nexport function createSimilarityPrompt(query: string, text: string): string {\n return `Rate the semantic similarity between the following the query and the text on a scale from 0 to 1 (decimals allowed), where 1 means exactly the same meaning and 0 means completely different:\n\nQuery: ${query}\n\nText: ${text}\n\nRelevance score (0-1):`;\n}\n","import { Agent } from '../../agent';\nimport type { MastraLanguageModel } from '../../llm/model/shared.types';\nimport { createSimilarityPrompt } from '../relevance-score-provider';\nimport type { RelevanceScoreProvider } from '../relevance-score-provider';\n\n// Mastra Agent implementation\nexport class MastraAgentRelevanceScorer implements RelevanceScoreProvider {\n private agent: Agent;\n\n constructor(name: string, model: MastraLanguageModel) {\n this.agent = new Agent({\n name: `Relevance Scorer ${name}`,\n instructions: `You are a specialized agent for evaluating the relevance of text to queries.\nYour task is to rate how well a text passage answers a given query.\nOutput only a number between 0 and 1, where:\n1.0 = Perfectly relevant, directly answers the query\n0.0 = Completely irrelevant\nConsider:\n- Direct relevance to the question\n- Completeness of information\n- Quality and specificity\nAlways return just the number, no explanation.`,\n model,\n });\n }\n\n async getRelevanceScore(query: string, text: string): Promise<number> {\n const prompt = createSimilarityPrompt(query, text);\n\n const model = await this.agent.getModel();\n\n let response: string;\n if (model.specificationVersion === 'v2') {\n const responseText = await this.agent.generateVNext(prompt);\n response = responseText.text;\n } else {\n const responseText = await this.agent.generate(prompt);\n response = responseText.text;\n }\n return parseFloat(response);\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { fetchWithRetry } from './chunk-VRRY6NGC.js';
1
+ import { fetchWithRetry } from './chunk-SQFVIROI.js';
2
2
  import { MastraError } from './chunk-MCOVMKIS.js';
3
3
  import { randomUUID } from 'crypto';
4
4
  import * as AIV4 from 'ai';
@@ -2956,5 +2956,5 @@ function convertMessages(messages) {
2956
2956
  }
2957
2957
 
2958
2958
  export { DefaultGeneratedFile, DefaultGeneratedFileWithType, MessageList, convertMessages };
2959
- //# sourceMappingURL=chunk-CIPXOPLS.js.map
2960
- //# sourceMappingURL=chunk-CIPXOPLS.js.map
2959
+ //# sourceMappingURL=chunk-SHFLPFKN.js.map
2960
+ //# sourceMappingURL=chunk-SHFLPFKN.js.map