@mastra/core 1.0.0-beta.16 → 1.0.0-beta.18

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 (123) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/agent/index.cjs +8 -8
  3. package/dist/agent/index.js +1 -1
  4. package/dist/{chunk-UT6MASE5.cjs → chunk-2OOMJRXZ.cjs} +3 -3
  5. package/dist/{chunk-UT6MASE5.cjs.map → chunk-2OOMJRXZ.cjs.map} +1 -1
  6. package/dist/{chunk-F7PAZAGE.js → chunk-2XX35XRX.js} +8 -9
  7. package/dist/chunk-2XX35XRX.js.map +1 -0
  8. package/dist/{chunk-QD776HMB.js → chunk-5YYAQUEF.js} +3 -3
  9. package/dist/{chunk-QD776HMB.js.map → chunk-5YYAQUEF.js.map} +1 -1
  10. package/dist/{chunk-UTMBASR5.js → chunk-6R4744NH.js} +4 -4
  11. package/dist/{chunk-UTMBASR5.js.map → chunk-6R4744NH.js.map} +1 -1
  12. package/dist/{chunk-CSCTVLD5.js → chunk-6RFJWX4V.js} +3 -3
  13. package/dist/{chunk-CSCTVLD5.js.map → chunk-6RFJWX4V.js.map} +1 -1
  14. package/dist/{chunk-KKYAYRIO.js → chunk-ABMWK6JU.js} +4 -4
  15. package/dist/{chunk-KKYAYRIO.js.map → chunk-ABMWK6JU.js.map} +1 -1
  16. package/dist/{chunk-37YWZMBX.js → chunk-AIJLACR2.js} +9 -5
  17. package/dist/chunk-AIJLACR2.js.map +1 -0
  18. package/dist/{chunk-WDXYPI3P.js → chunk-AR5CF3IN.js} +3 -3
  19. package/dist/{chunk-WDXYPI3P.js.map → chunk-AR5CF3IN.js.map} +1 -1
  20. package/dist/{chunk-4UH5LAF5.cjs → chunk-BWZ6UOBF.cjs} +15 -15
  21. package/dist/{chunk-4UH5LAF5.cjs.map → chunk-BWZ6UOBF.cjs.map} +1 -1
  22. package/dist/{chunk-DT5RMENY.js → chunk-CHVWQDMP.js} +39 -5
  23. package/dist/chunk-CHVWQDMP.js.map +1 -0
  24. package/dist/{chunk-OXV6QFSV.cjs → chunk-G6YCU7HJ.cjs} +8 -8
  25. package/dist/{chunk-OXV6QFSV.cjs.map → chunk-G6YCU7HJ.cjs.map} +1 -1
  26. package/dist/{chunk-5DL6Y7PJ.cjs → chunk-GFALVOBW.cjs} +35 -36
  27. package/dist/chunk-GFALVOBW.cjs.map +1 -0
  28. package/dist/{chunk-NNFF3URD.js → chunk-IHPCE24V.js} +8 -8
  29. package/dist/{chunk-NNFF3URD.js.map → chunk-IHPCE24V.js.map} +1 -1
  30. package/dist/{chunk-33VDGXRH.cjs → chunk-IY5QWADY.cjs} +16 -16
  31. package/dist/{chunk-33VDGXRH.cjs.map → chunk-IY5QWADY.cjs.map} +1 -1
  32. package/dist/{chunk-FB5QMTJJ.js → chunk-JBEKXEX6.js} +4 -4
  33. package/dist/{chunk-FB5QMTJJ.js.map → chunk-JBEKXEX6.js.map} +1 -1
  34. package/dist/{chunk-4KVIXN7K.cjs → chunk-NGRUGDFP.cjs} +14 -14
  35. package/dist/{chunk-4KVIXN7K.cjs.map → chunk-NGRUGDFP.cjs.map} +1 -1
  36. package/dist/{chunk-6YUHA5UH.cjs → chunk-O4YSWWLB.cjs} +5 -5
  37. package/dist/{chunk-6YUHA5UH.cjs.map → chunk-O4YSWWLB.cjs.map} +1 -1
  38. package/dist/{chunk-A6JNGJIU.cjs → chunk-P3XQ3TNY.cjs} +30 -30
  39. package/dist/{chunk-A6JNGJIU.cjs.map → chunk-P3XQ3TNY.cjs.map} +1 -1
  40. package/dist/{chunk-4N6WB4EZ.js → chunk-POSO2X6D.js} +6 -6
  41. package/dist/{chunk-4N6WB4EZ.js.map → chunk-POSO2X6D.js.map} +1 -1
  42. package/dist/{chunk-GNUITL2N.js → chunk-RC7RN5MY.js} +3 -3
  43. package/dist/{chunk-GNUITL2N.js.map → chunk-RC7RN5MY.js.map} +1 -1
  44. package/dist/{chunk-AQ22JIR7.cjs → chunk-SDR22R4D.cjs} +16 -16
  45. package/dist/{chunk-AQ22JIR7.cjs.map → chunk-SDR22R4D.cjs.map} +1 -1
  46. package/dist/{chunk-7KL2YFFK.cjs → chunk-SGRMJZMJ.cjs} +15 -15
  47. package/dist/{chunk-7KL2YFFK.cjs.map → chunk-SGRMJZMJ.cjs.map} +1 -1
  48. package/dist/{chunk-K4XAKG7L.js → chunk-TI6D7CAN.js} +4 -4
  49. package/dist/{chunk-K4XAKG7L.js.map → chunk-TI6D7CAN.js.map} +1 -1
  50. package/dist/{chunk-H2NHG7QL.cjs → chunk-VW7YQWDW.cjs} +9 -5
  51. package/dist/chunk-VW7YQWDW.cjs.map +1 -0
  52. package/dist/{chunk-NCAMNQC3.cjs → chunk-XIYLL4DN.cjs} +40 -6
  53. package/dist/chunk-XIYLL4DN.cjs.map +1 -0
  54. package/dist/{chunk-NK4UN2LF.cjs → chunk-XR7RX2PS.cjs} +5 -5
  55. package/dist/{chunk-NK4UN2LF.cjs.map → chunk-XR7RX2PS.cjs.map} +1 -1
  56. package/dist/{chunk-J4SXS7KN.js → chunk-Y52PV3W4.js} +4 -4
  57. package/dist/{chunk-J4SXS7KN.js.map → chunk-Y52PV3W4.js.map} +1 -1
  58. package/dist/{chunk-3ZRMVPQA.cjs → chunk-ZSQ7L6AW.cjs} +7 -7
  59. package/dist/{chunk-3ZRMVPQA.cjs.map → chunk-ZSQ7L6AW.cjs.map} +1 -1
  60. package/dist/evals/index.cjs +19 -19
  61. package/dist/evals/index.js +2 -2
  62. package/dist/evals/scoreTraces/index.cjs +5 -5
  63. package/dist/evals/scoreTraces/index.js +2 -2
  64. package/dist/index.cjs +2 -2
  65. package/dist/index.js +1 -1
  66. package/dist/integration/index.cjs +2 -2
  67. package/dist/integration/index.js +1 -1
  68. package/dist/llm/index.cjs +11 -11
  69. package/dist/llm/index.js +3 -3
  70. package/dist/llm/model/provider-types.generated.d.ts +14 -1
  71. package/dist/loop/index.cjs +2 -2
  72. package/dist/loop/index.js +1 -1
  73. package/dist/mastra/index.cjs +2 -2
  74. package/dist/mastra/index.js +1 -1
  75. package/dist/memory/index.cjs +11 -11
  76. package/dist/memory/index.js +1 -1
  77. package/dist/netlify-CUYK2MZ2.cjs +12 -0
  78. package/dist/{netlify-5Y33S7WL.cjs.map → netlify-CUYK2MZ2.cjs.map} +1 -1
  79. package/dist/netlify-J4QPOROO.js +3 -0
  80. package/dist/{netlify-3MHHJG2E.js.map → netlify-J4QPOROO.js.map} +1 -1
  81. package/dist/processors/index.cjs +37 -37
  82. package/dist/processors/index.js +1 -1
  83. package/dist/provider-registry-IGILEKIM.js +3 -0
  84. package/dist/{provider-registry-LXSWMVEC.js.map → provider-registry-IGILEKIM.js.map} +1 -1
  85. package/dist/provider-registry-XNQEGR56.cjs +40 -0
  86. package/dist/{provider-registry-YJ2P5YY5.cjs.map → provider-registry-XNQEGR56.cjs.map} +1 -1
  87. package/dist/provider-registry.json +36 -2
  88. package/dist/relevance/index.cjs +3 -3
  89. package/dist/relevance/index.js +1 -1
  90. package/dist/storage/constants.cjs +14 -14
  91. package/dist/storage/constants.js +1 -1
  92. package/dist/storage/index.cjs +92 -92
  93. package/dist/storage/index.js +2 -2
  94. package/dist/stream/index.cjs +9 -9
  95. package/dist/stream/index.js +1 -1
  96. package/dist/test-utils/llm-mock.cjs +4 -4
  97. package/dist/test-utils/llm-mock.js +1 -1
  98. package/dist/tool-loop-agent/index.cjs +4 -4
  99. package/dist/tool-loop-agent/index.js +1 -1
  100. package/dist/tools/index.cjs +4 -4
  101. package/dist/tools/index.js +1 -1
  102. package/dist/tools/is-vercel-tool.cjs +2 -2
  103. package/dist/tools/is-vercel-tool.js +1 -1
  104. package/dist/utils/zod-utils.d.ts +7 -1
  105. package/dist/utils/zod-utils.d.ts.map +1 -1
  106. package/dist/utils.cjs +27 -27
  107. package/dist/utils.js +2 -2
  108. package/dist/workflows/evented/index.cjs +10 -10
  109. package/dist/workflows/evented/index.js +1 -1
  110. package/dist/workflows/index.cjs +23 -23
  111. package/dist/workflows/index.js +1 -1
  112. package/package.json +5 -5
  113. package/src/llm/model/provider-types.generated.d.ts +14 -1
  114. package/dist/chunk-37YWZMBX.js.map +0 -1
  115. package/dist/chunk-5DL6Y7PJ.cjs.map +0 -1
  116. package/dist/chunk-DT5RMENY.js.map +0 -1
  117. package/dist/chunk-F7PAZAGE.js.map +0 -1
  118. package/dist/chunk-H2NHG7QL.cjs.map +0 -1
  119. package/dist/chunk-NCAMNQC3.cjs.map +0 -1
  120. package/dist/netlify-3MHHJG2E.js +0 -3
  121. package/dist/netlify-5Y33S7WL.cjs +0 -12
  122. package/dist/provider-registry-LXSWMVEC.js +0 -3
  123. package/dist/provider-registry-YJ2P5YY5.cjs +0 -40
@@ -6,10 +6,14 @@ function isZodType(value) {
6
6
  }
7
7
  function getZodTypeName(schema) {
8
8
  const schemaAny = schema;
9
- if (schemaAny._zod?.def?.typeName) {
10
- return schemaAny._zod.def.typeName;
9
+ if (schemaAny._def?.typeName) {
10
+ return schemaAny._def.typeName;
11
11
  }
12
- return schemaAny._def?.typeName;
12
+ const zod4Type = schemaAny._def?.type;
13
+ if (typeof zod4Type === "string" && zod4Type) {
14
+ return "Zod" + zod4Type.charAt(0).toUpperCase() + zod4Type.slice(1);
15
+ }
16
+ return void 0;
13
17
  }
14
18
  function isZodArray(value) {
15
19
  if (!isZodType(value)) return false;
@@ -28,5 +32,5 @@ exports.getZodDef = getZodDef;
28
32
  exports.getZodTypeName = getZodTypeName;
29
33
  exports.isZodArray = isZodArray;
30
34
  exports.isZodObject = isZodObject;
31
- //# sourceMappingURL=chunk-H2NHG7QL.cjs.map
32
- //# sourceMappingURL=chunk-H2NHG7QL.cjs.map
35
+ //# sourceMappingURL=chunk-VW7YQWDW.cjs.map
36
+ //# sourceMappingURL=chunk-VW7YQWDW.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/zod-utils.ts"],"names":[],"mappings":";;;AAOO,SAAS,UAAU,KAAA,EAAoC;AAE5D,EAAA,OACE,OAAO,KAAA,KAAU,QAAA,IACjB,KAAA,KAAU,IAAA,IACV,UAAU,KAAA,IACV,OAAA,IAAW,KAAA,IACX,OAAQ,MAAc,KAAA,KAAU,UAAA,IAChC,eAAe,KAAA,IACf,OAAQ,MAAc,SAAA,KAAc,UAAA;AAExC;AAeO,SAAS,eAAe,MAAA,EAA0C;AACvE,EAAA,MAAM,SAAA,GAAY,MAAA;AAGlB,EAAA,IAAI,SAAA,CAAU,MAAM,QAAA,EAAU;AAC5B,IAAA,OAAO,UAAU,IAAA,CAAK,QAAA;AAAA,EACxB;AAGA,EAAA,MAAM,QAAA,GAAW,UAAU,IAAA,EAAM,IAAA;AACjC,EAAA,IAAI,OAAO,QAAA,KAAa,QAAA,IAAY,QAAA,EAAU;AAE5C,IAAA,OAAO,KAAA,GAAQ,SAAS,MAAA,CAAO,CAAC,EAAE,WAAA,EAAY,GAAI,QAAA,CAAS,KAAA,CAAM,CAAC,CAAA;AAAA,EACpE;AAEA,EAAA,OAAO,MAAA;AACT;AAOO,SAAS,WAAW,KAAA,EAAmD;AAC5E,EAAA,IAAI,CAAC,SAAA,CAAU,KAAK,CAAA,EAAG,OAAO,KAAA;AAC9B,EAAA,OAAO,cAAA,CAAe,KAAqB,CAAA,KAAM,UAAA;AACnD;AAOO,SAAS,YAAY,KAAA,EAA2C;AACrE,EAAA,IAAI,CAAC,SAAA,CAAU,KAAK,CAAA,EAAG,OAAO,KAAA;AAC9B,EAAA,OAAO,cAAA,CAAe,KAAqB,CAAA,KAAM,WAAA;AACnD;AAOO,SAAS,UAAU,MAAA,EAA2B;AACnD,EAAA,MAAM,SAAA,GAAY,MAAA;AAClB,EAAA,OAAO,SAAA,CAAU,IAAA,EAAM,GAAA,IAAO,SAAA,CAAU,IAAA;AAC1C","file":"chunk-VW7YQWDW.cjs","sourcesContent":["import type { z } from 'zod';\n\n/**\n * Checks if a value is a Zod type\n * @param value - The value to check\n * @returns True if the value is a Zod type, false otherwise\n */\nexport function isZodType(value: unknown): value is z.ZodType {\n // Check if it's a Zod schema by looking for common Zod properties and methods\n return (\n typeof value === 'object' &&\n value !== null &&\n '_def' in value &&\n 'parse' in value &&\n typeof (value as any).parse === 'function' &&\n 'safeParse' in value &&\n typeof (value as any).safeParse === 'function'\n );\n}\n\n/**\n * Get the Zod typeName from a schema, compatible with both Zod 3 and Zod 4.\n * Uses string-based typeName instead of instanceof to avoid dual-package hazard\n * where multiple Zod instances can cause instanceof checks to fail.\n *\n * Zod 3 uses `_def.typeName` with values like \"ZodString\", \"ZodOptional\", etc.\n * Zod 4 uses `_def.type` with lowercase values like \"string\", \"optional\", etc.\n *\n * This function normalizes to Zod 3 format (e.g., \"ZodString\") for compatibility.\n *\n * @param schema - The Zod schema to get the type name from\n * @returns The Zod type name string (e.g., \"ZodString\", \"ZodOptional\") or undefined\n */\nexport function getZodTypeName(schema: z.ZodTypeAny): string | undefined {\n const schemaAny = schema as any;\n\n // Zod 3 structure: _def.typeName = \"ZodString\", \"ZodOptional\", etc.\n if (schemaAny._def?.typeName) {\n return schemaAny._def.typeName;\n }\n\n // Zod 4 structure: _def.type = \"string\", \"optional\", etc. (lowercase, no prefix)\n const zod4Type = schemaAny._def?.type;\n if (typeof zod4Type === 'string' && zod4Type) {\n // Normalize to Zod 3 format: \"string\" -> \"ZodString\", \"optional\" -> \"ZodOptional\"\n return 'Zod' + zod4Type.charAt(0).toUpperCase() + zod4Type.slice(1);\n }\n\n return undefined;\n}\n\n/**\n * Check if a value is a ZodArray type\n * @param value - The value to check (can be any type)\n * @returns True if the value is a ZodArray\n */\nexport function isZodArray(value: unknown): value is z.ZodArray<z.ZodTypeAny> {\n if (!isZodType(value)) return false;\n return getZodTypeName(value as z.ZodTypeAny) === 'ZodArray';\n}\n\n/**\n * Check if a value is a ZodObject type\n * @param value - The value to check (can be any type)\n * @returns True if the value is a ZodObject\n */\nexport function isZodObject(value: unknown): value is z.ZodObject<any> {\n if (!isZodType(value)) return false;\n return getZodTypeName(value as z.ZodTypeAny) === 'ZodObject';\n}\n\n/**\n * Get the def object from a Zod schema, compatible with both Zod 3 and Zod 4.\n * @param schema - The Zod schema\n * @returns The def object\n */\nexport function getZodDef(schema: z.ZodTypeAny): any {\n const schemaAny = schema as any;\n return schemaAny._zod?.def ?? schemaAny._def;\n}\n"]}
@@ -1075,8 +1075,8 @@ var provider_registry_default = {
1075
1075
  apiKeyHeader: "Authorization",
1076
1076
  name: "OpenCode Zen",
1077
1077
  models: [
1078
- "alpha-doubao-seed-code",
1079
1078
  "alpha-gd4",
1079
+ "alpha-glm-4.7",
1080
1080
  "big-pickle",
1081
1081
  "claude-3-5-haiku",
1082
1082
  "claude-haiku-4-5",
@@ -1754,6 +1754,27 @@ var provider_registry_default = {
1754
1754
  docUrl: "https://lmstudio.ai/models",
1755
1755
  gateway: "models.dev"
1756
1756
  },
1757
+ friendli: {
1758
+ url: "https://api.friendli.ai/serverless/v1",
1759
+ apiKeyEnvVar: "FRIENDLI_TOKEN",
1760
+ apiKeyHeader: "Authorization",
1761
+ name: "Friendli",
1762
+ models: [
1763
+ "LGAI-EXAONE-EXAONE-4.0.1-32B",
1764
+ "Qwen-Qwen3-235B-A22B-Instruct-2507",
1765
+ "Qwen-Qwen3-235B-A22B-Thinking-2507",
1766
+ "Qwen-Qwen3-30B-A3B",
1767
+ "Qwen-Qwen3-32B",
1768
+ "deepseek-ai-DeepSeek-R1-0528",
1769
+ "meta-llama-3.1-8b-instruct",
1770
+ "meta-llama-3.3-70b-instruct",
1771
+ "meta-llama-Llama-4-Maverick-17B-128E-Instruct",
1772
+ "meta-llama-Llama-4-Scout-17B-16E-Instruct",
1773
+ "zai-org-GLM-4.6"
1774
+ ],
1775
+ docUrl: "https://friendli.ai/docs/guides/serverless_endpoints/introduction",
1776
+ gateway: "models.dev"
1777
+ },
1757
1778
  anthropic: {
1758
1779
  apiKeyEnvVar: "ANTHROPIC_API_KEY",
1759
1780
  name: "Anthropic",
@@ -2907,8 +2928,8 @@ var provider_registry_default = {
2907
2928
  "zai-org/GLM-4.6"
2908
2929
  ],
2909
2930
  opencode: [
2910
- "alpha-doubao-seed-code",
2911
2931
  "alpha-gd4",
2932
+ "alpha-glm-4.7",
2912
2933
  "big-pickle",
2913
2934
  "claude-3-5-haiku",
2914
2935
  "claude-haiku-4-5",
@@ -3406,6 +3427,19 @@ var provider_registry_default = {
3406
3427
  ],
3407
3428
  morph: ["auto", "morph-v3-fast", "morph-v3-large"],
3408
3429
  lmstudio: ["openai/gpt-oss-20b", "qwen/qwen3-30b-a3b-2507", "qwen/qwen3-coder-30b"],
3430
+ friendli: [
3431
+ "LGAI-EXAONE-EXAONE-4.0.1-32B",
3432
+ "Qwen-Qwen3-235B-A22B-Instruct-2507",
3433
+ "Qwen-Qwen3-235B-A22B-Thinking-2507",
3434
+ "Qwen-Qwen3-30B-A3B",
3435
+ "Qwen-Qwen3-32B",
3436
+ "deepseek-ai-DeepSeek-R1-0528",
3437
+ "meta-llama-3.1-8b-instruct",
3438
+ "meta-llama-3.3-70b-instruct",
3439
+ "meta-llama-Llama-4-Maverick-17B-128E-Instruct",
3440
+ "meta-llama-Llama-4-Scout-17B-16E-Instruct",
3441
+ "zai-org-GLM-4.6"
3442
+ ],
3409
3443
  anthropic: [
3410
3444
  "claude-3-5-haiku-20241022",
3411
3445
  "claude-3-5-haiku-latest",
@@ -3764,7 +3798,7 @@ function saveLastRefreshTimeToDisk(date) {
3764
3798
  }
3765
3799
  function getPackageRoot() {
3766
3800
  try {
3767
- const require2 = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-NCAMNQC3.cjs', document.baseURI).href)) || "file://");
3801
+ const require2 = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-XIYLL4DN.cjs', document.baseURI).href)) || "file://");
3768
3802
  const packageJsonPath = require2.resolve("@mastra/core/package.json");
3769
3803
  return path__default.default.dirname(packageJsonPath);
3770
3804
  } catch {
@@ -3961,7 +3995,7 @@ var GatewayRegistry = class _GatewayRegistry {
3961
3995
  this.isRefreshing = true;
3962
3996
  try {
3963
3997
  const { ModelsDevGateway } = await import('./models-dev-26XLUKVK.cjs');
3964
- const { NetlifyGateway } = await import('./netlify-5Y33S7WL.cjs');
3998
+ const { NetlifyGateway } = await import('./netlify-CUYK2MZ2.cjs');
3965
3999
  const { fetchProvidersFromGateways, writeRegistryFiles } = await import('./registry-generator-KOFNIIWJ.cjs');
3966
4000
  const defaultGateways = [new ModelsDevGateway({}), new NetlifyGateway()];
3967
4001
  const gateways = [...defaultGateways, ...this.customGateways];
@@ -4086,5 +4120,5 @@ exports.getRegisteredProviders = getRegisteredProviders;
4086
4120
  exports.isProviderRegistered = isProviderRegistered;
4087
4121
  exports.isValidModelId = isValidModelId;
4088
4122
  exports.parseModelString = parseModelString;
4089
- //# sourceMappingURL=chunk-NCAMNQC3.cjs.map
4090
- //# sourceMappingURL=chunk-NCAMNQC3.cjs.map
4123
+ //# sourceMappingURL=chunk-XIYLL4DN.cjs.map
4124
+ //# sourceMappingURL=chunk-XIYLL4DN.cjs.map