@mastra/core 1.26.0-alpha.11 → 1.26.0-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/agent/agent.d.ts.map +1 -1
- package/dist/agent/index.cjs +8 -8
- package/dist/agent/index.js +1 -1
- package/dist/agent/types.d.ts +7 -1
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
- package/dist/agent/workflows/prepare-stream/schema.d.ts +1 -0
- package/dist/agent/workflows/prepare-stream/schema.d.ts.map +1 -1
- package/dist/browser/index.cjs +2 -2
- package/dist/browser/index.js +1 -1
- package/dist/channels/index.cjs +4 -4
- package/dist/channels/index.js +1 -1
- package/dist/{chunk-CXIQCUHL.js → chunk-24FTWXDR.js} +3 -3
- package/dist/{chunk-CXIQCUHL.js.map → chunk-24FTWXDR.js.map} +1 -1
- package/dist/{chunk-RSFZN7OV.cjs → chunk-2NQ2TF5F.cjs} +389 -316
- package/dist/chunk-2NQ2TF5F.cjs.map +1 -0
- package/dist/{chunk-ECT5553H.cjs → chunk-34M2QMAZ.cjs} +292 -292
- package/dist/{chunk-ECT5553H.cjs.map → chunk-34M2QMAZ.cjs.map} +1 -1
- package/dist/{chunk-BJCPVJJV.js → chunk-37OQ7B3U.js} +3 -3
- package/dist/{chunk-BJCPVJJV.js.map → chunk-37OQ7B3U.js.map} +1 -1
- package/dist/{chunk-TER3JXU5.cjs → chunk-4MLJKGJI.cjs} +52 -22
- package/dist/chunk-4MLJKGJI.cjs.map +1 -0
- package/dist/{chunk-WBPTY4Y7.cjs → chunk-7IMHDDED.cjs} +57 -57
- package/dist/{chunk-WBPTY4Y7.cjs.map → chunk-7IMHDDED.cjs.map} +1 -1
- package/dist/{chunk-2QPYXXQP.js → chunk-DHKEEJPE.js} +3 -3
- package/dist/{chunk-2QPYXXQP.js.map → chunk-DHKEEJPE.js.map} +1 -1
- package/dist/{chunk-72TFCXLB.js → chunk-DLDGEMBE.js} +381 -308
- package/dist/chunk-DLDGEMBE.js.map +1 -0
- package/dist/{chunk-IFMX323P.cjs → chunk-ER7WPKHP.cjs} +7 -7
- package/dist/{chunk-IFMX323P.cjs.map → chunk-ER7WPKHP.cjs.map} +1 -1
- package/dist/{chunk-5EU2N7AI.js → chunk-FE3JBPGZ.js} +9 -9
- package/dist/{chunk-5EU2N7AI.js.map → chunk-FE3JBPGZ.js.map} +1 -1
- package/dist/{chunk-TJ4FSWVQ.js → chunk-GDUBYVBH.js} +4 -4
- package/dist/{chunk-TJ4FSWVQ.js.map → chunk-GDUBYVBH.js.map} +1 -1
- package/dist/{chunk-6SZ4HY7N.cjs → chunk-GSJT6X23.cjs} +10 -9
- package/dist/chunk-GSJT6X23.cjs.map +1 -0
- package/dist/{chunk-HGZ5C3XG.cjs → chunk-KEXLOZNA.cjs} +17 -17
- package/dist/{chunk-HGZ5C3XG.cjs.map → chunk-KEXLOZNA.cjs.map} +1 -1
- package/dist/{chunk-MT2NFL3T.js → chunk-NTGYHDWA.js} +40 -10
- package/dist/chunk-NTGYHDWA.js.map +1 -0
- package/dist/{chunk-KSTYF5BD.js → chunk-SQAGQFGX.js} +3 -3
- package/dist/{chunk-KSTYF5BD.js.map → chunk-SQAGQFGX.js.map} +1 -1
- package/dist/{chunk-BQN6OA5U.js → chunk-T5WE2PEP.js} +6 -6
- package/dist/{chunk-BQN6OA5U.js.map → chunk-T5WE2PEP.js.map} +1 -1
- package/dist/{chunk-SLO7BNJL.cjs → chunk-TITDW65H.cjs} +9 -9
- package/dist/{chunk-SLO7BNJL.cjs.map → chunk-TITDW65H.cjs.map} +1 -1
- package/dist/{chunk-M7NIAKE6.cjs → chunk-WBZ5SRGR.cjs} +3 -3
- package/dist/{chunk-M7NIAKE6.cjs.map → chunk-WBZ5SRGR.cjs.map} +1 -1
- package/dist/{chunk-B3A3OLBO.cjs → chunk-WDJZB44P.cjs} +224 -224
- package/dist/{chunk-B3A3OLBO.cjs.map → chunk-WDJZB44P.cjs.map} +1 -1
- package/dist/{chunk-HTSHN5E4.js → chunk-WSVLXQT6.js} +8 -7
- package/dist/chunk-WSVLXQT6.js.map +1 -0
- package/dist/{chunk-DELWJ5NK.js → chunk-WYPOS74A.js} +3 -3
- package/dist/{chunk-DELWJ5NK.js.map → chunk-WYPOS74A.js.map} +1 -1
- package/dist/{chunk-5IIRXFH2.cjs → chunk-YQ5QJC3S.cjs} +5 -5
- package/dist/{chunk-5IIRXFH2.cjs.map → chunk-YQ5QJC3S.cjs.map} +1 -1
- package/dist/datasets/experiment/index.d.ts.map +1 -1
- package/dist/datasets/index.cjs +11 -11
- package/dist/datasets/index.js +1 -1
- package/dist/docs/SKILL.md +3 -1
- package/dist/docs/assets/SOURCE_MAP.json +191 -191
- package/dist/docs/references/docs-agents-structured-output.md +22 -0
- package/dist/docs/references/docs-memory-storage.md +1 -0
- package/dist/docs/references/reference-storage-redis.md +266 -0
- package/dist/docs/references/reference-tools-tavily.md +307 -0
- package/dist/docs/references/reference.md +2 -0
- package/dist/evals/index.cjs +5 -5
- package/dist/evals/index.js +2 -2
- package/dist/evals/scoreTraces/index.cjs +3 -3
- package/dist/evals/scoreTraces/index.js +1 -1
- package/dist/harness/index.cjs +7 -7
- package/dist/harness/index.js +5 -5
- package/dist/index.cjs +2 -2
- package/dist/index.js +1 -1
- package/dist/llm/index.cjs +20 -20
- package/dist/llm/index.js +5 -5
- package/dist/llm/model/provider-types.generated.d.ts +15 -0
- package/dist/loop/index.cjs +14 -14
- package/dist/loop/index.js +1 -1
- package/dist/loop/workflows/agentic-execution/build-messages-from-chunks.d.ts +32 -0
- package/dist/loop/workflows/agentic-execution/build-messages-from-chunks.d.ts.map +1 -0
- package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
- package/dist/loop/workflows/run-state.d.ts +0 -9
- package/dist/loop/workflows/run-state.d.ts.map +1 -1
- package/dist/mastra/index.cjs +2 -2
- package/dist/mastra/index.js +1 -1
- package/dist/mastra-47JQIPP2.cjs +12 -0
- package/dist/{mastra-UBXRRSVL.cjs.map → mastra-47JQIPP2.cjs.map} +1 -1
- package/dist/mastra-MEZUGGZZ.js +3 -0
- package/dist/{mastra-YR56DXR7.js.map → mastra-MEZUGGZZ.js.map} +1 -1
- package/dist/memory/index.cjs +19 -19
- package/dist/memory/index.js +1 -1
- package/dist/models-dev-BUQGQZCQ.js +3 -0
- package/dist/{models-dev-B24Y4NYV.js.map → models-dev-BUQGQZCQ.js.map} +1 -1
- package/dist/models-dev-INA3VBAK.cjs +12 -0
- package/dist/{models-dev-EMLWCDMI.cjs.map → models-dev-INA3VBAK.cjs.map} +1 -1
- package/dist/netlify-BW7IYASM.cjs +12 -0
- package/dist/{netlify-BFZBVACL.cjs.map → netlify-BW7IYASM.cjs.map} +1 -1
- package/dist/netlify-EQPVEYNW.js +3 -0
- package/dist/{netlify-W7DGKAGR.js.map → netlify-EQPVEYNW.js.map} +1 -1
- package/dist/processor-provider/index.cjs +10 -10
- package/dist/processor-provider/index.js +1 -1
- package/dist/processors/index.cjs +45 -45
- package/dist/processors/index.js +1 -1
- package/dist/processors/processors/structured-output.d.ts +13 -12
- package/dist/processors/processors/structured-output.d.ts.map +1 -1
- package/dist/provider-registry-4FV6CXQI.cjs +44 -0
- package/dist/{provider-registry-OLA6QVLP.cjs.map → provider-registry-4FV6CXQI.cjs.map} +1 -1
- package/dist/provider-registry-EAKPPU44.js +3 -0
- package/dist/{provider-registry-LGHC4U7P.js.map → provider-registry-EAKPPU44.js.map} +1 -1
- package/dist/provider-registry.json +32 -2
- package/dist/relevance/index.cjs +3 -3
- package/dist/relevance/index.js +1 -1
- package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
- package/dist/stream/base/output.d.ts.map +1 -1
- package/dist/stream/index.cjs +8 -8
- package/dist/stream/index.js +1 -1
- package/dist/tool-loop-agent/index.cjs +4 -4
- package/dist/tool-loop-agent/index.js +1 -1
- package/dist/workflows/evented/index.cjs +10 -10
- package/dist/workflows/evented/index.js +1 -1
- package/dist/workflows/index.cjs +24 -24
- package/dist/workflows/index.js +1 -1
- package/package.json +2 -2
- package/src/llm/model/provider-types.generated.d.ts +15 -0
- package/dist/chunk-6SZ4HY7N.cjs.map +0 -1
- package/dist/chunk-72TFCXLB.js.map +0 -1
- package/dist/chunk-HTSHN5E4.js.map +0 -1
- package/dist/chunk-MT2NFL3T.js.map +0 -1
- package/dist/chunk-RSFZN7OV.cjs.map +0 -1
- package/dist/chunk-TER3JXU5.cjs.map +0 -1
- package/dist/mastra-UBXRRSVL.cjs +0 -12
- package/dist/mastra-YR56DXR7.js +0 -3
- package/dist/models-dev-B24Y4NYV.js +0 -3
- package/dist/models-dev-EMLWCDMI.cjs +0 -12
- package/dist/netlify-BFZBVACL.cjs +0 -12
- package/dist/netlify-W7DGKAGR.js +0 -3
- package/dist/provider-registry-LGHC4U7P.js +0 -3
- package/dist/provider-registry-OLA6QVLP.cjs +0 -44
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MastraModelGateway, createOpenAICompatible, MASTRA_USER_AGENT, createAnthropic, createGoogleGenerativeAI, createOpenAI } from './chunk-
|
|
1
|
+
import { MastraModelGateway, createOpenAICompatible, MASTRA_USER_AGENT, createAnthropic, createGoogleGenerativeAI, createOpenAI } from './chunk-24FTWXDR.js';
|
|
2
2
|
import { InMemoryServerCache } from './chunk-HQXVBGBM.js';
|
|
3
3
|
import { MastraError } from './chunk-FJEVLHJT.js';
|
|
4
4
|
|
|
@@ -161,5 +161,5 @@ var NetlifyGateway = class extends MastraModelGateway {
|
|
|
161
161
|
};
|
|
162
162
|
|
|
163
163
|
export { NetlifyGateway };
|
|
164
|
-
//# sourceMappingURL=chunk-
|
|
165
|
-
//# sourceMappingURL=chunk-
|
|
164
|
+
//# sourceMappingURL=chunk-37OQ7B3U.js.map
|
|
165
|
+
//# sourceMappingURL=chunk-37OQ7B3U.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/llm/model/gateways/netlify.ts"],"names":[],"mappings":"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","file":"chunk-BJCPVJJV.js","sourcesContent":["import { createAnthropic } from '@ai-sdk/anthropic-v6';\nimport { createGoogleGenerativeAI } from '@ai-sdk/google-v6';\nimport { createOpenAICompatible } from '@ai-sdk/openai-compatible-v5';\nimport { createOpenAI } from '@ai-sdk/openai-v6';\nimport { InMemoryServerCache } from '../../../cache/inmemory.js';\nimport { MastraError } from '../../../error/index.js';\nimport { MastraModelGateway } from './base.js';\nimport type { ProviderConfig, GatewayLanguageModel } from './base.js';\nimport { MASTRA_USER_AGENT } from './constants.js';\n\ninterface NetlifyProviderResponse {\n token_env_var: string;\n url_env_var: string;\n models: string[];\n}\ninterface NetlifyResponse {\n providers: Record<string, NetlifyProviderResponse>;\n}\n\ninterface NetlifyTokenResponse {\n token: string;\n url: string;\n expires_at: number;\n}\n\ninterface CachedToken {\n token: string;\n url: string;\n expiresAt: number;\n}\n\ninterface TokenData {\n token: string;\n url: string;\n}\n\nexport class NetlifyGateway extends MastraModelGateway {\n readonly id = 'netlify';\n readonly name = 'Netlify AI Gateway';\n private tokenCache = new InMemoryServerCache();\n\n async fetchProviders(): Promise<Record<string, ProviderConfig>> {\n const response = await fetch('https://api.netlify.com/api/v1/ai-gateway/providers');\n if (!response.ok) {\n throw new Error(`Failed to fetch from Netlify: ${response.statusText}`);\n }\n const data = (await response.json()) as NetlifyResponse;\n const config: ProviderConfig = {\n apiKeyEnvVar: ['NETLIFY_TOKEN', 'NETLIFY_SITE_ID'],\n apiKeyHeader: 'Authorization',\n name: `Netlify`,\n gateway: `netlify`,\n models: [],\n docUrl: 'https://docs.netlify.com/build/ai-gateway/overview/',\n };\n // Convert Netlify format to our standard format\n for (const [providerId, provider] of Object.entries(data.providers)) {\n for (const model of provider.models) {\n config.models.push(`${providerId}/${model}`);\n }\n }\n // Return with gateway ID as key - registry generator will detect this and avoid doubling the prefix\n return { netlify: config };\n }\n\n async buildUrl(routerId: string, envVars?: typeof process.env): Promise<string> {\n // Check for Netlify site ID first (for token exchange)\n const siteId = envVars?.['NETLIFY_SITE_ID'] || process.env['NETLIFY_SITE_ID'];\n const netlifyToken = envVars?.['NETLIFY_TOKEN'] || process.env['NETLIFY_TOKEN'];\n\n if (!netlifyToken) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_TOKEN',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_TOKEN environment variable required for model: ${routerId}`,\n });\n }\n\n if (!siteId) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_SITE_ID',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_SITE_ID environment variable required for model: ${routerId}`,\n });\n }\n\n try {\n const tokenData = await this.getOrFetchToken(siteId, netlifyToken);\n return tokenData.url.endsWith(`/`) ? tokenData.url.substring(0, tokenData.url.length - 1) : tokenData.url;\n } catch (error) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_TOKEN_ERROR',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Failed to get Netlify AI Gateway token for model ${routerId}: ${error instanceof Error ? error.message : String(error)}`,\n });\n }\n }\n\n /**\n * Get cached token or fetch a new site-specific AI Gateway token from Netlify\n */\n private async getOrFetchToken(siteId: string, netlifyToken: string): Promise<TokenData> {\n const cacheKey = `netlify-token:${siteId}:${netlifyToken}`;\n\n // Check cache first\n const cached = (await this.tokenCache.get(cacheKey)) as CachedToken | undefined;\n if (cached && cached.expiresAt > Date.now() / 1000 + 60) {\n // Return cached token if it won't expire in the next minute\n return { token: cached.token, url: cached.url };\n }\n\n // Fetch new token\n const response = await fetch(`https://api.netlify.com/api/v1/sites/${siteId}/ai-gateway/token`, {\n method: 'GET',\n headers: {\n Authorization: `Bearer ${netlifyToken}`,\n },\n });\n\n if (!response.ok) {\n const error = await response.text();\n throw new Error(`Failed to get Netlify AI Gateway token: ${response.status} ${error}`);\n }\n\n const tokenResponse = (await response.json()) as NetlifyTokenResponse;\n\n // Cache the token - InMemoryServerCache will handle the TTL\n await this.tokenCache.set(cacheKey, {\n token: tokenResponse.token,\n url: tokenResponse.url,\n expiresAt: tokenResponse.expires_at,\n });\n\n return { token: tokenResponse.token, url: tokenResponse.url };\n }\n\n /**\n * Get cached token or fetch a new site-specific AI Gateway token from Netlify\n */\n async getApiKey(modelId: string): Promise<string> {\n const siteId = process.env['NETLIFY_SITE_ID'];\n const netlifyToken = process.env['NETLIFY_TOKEN'];\n\n if (!netlifyToken) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_TOKEN',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_TOKEN environment variable required for model: ${modelId}`,\n });\n }\n\n if (!siteId) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_SITE_ID',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_SITE_ID environment variable required for model: ${modelId}`,\n });\n }\n\n try {\n return (await this.getOrFetchToken(siteId, netlifyToken)).token;\n } catch (error) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_TOKEN_ERROR',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Failed to get Netlify AI Gateway token for model ${modelId}: ${error instanceof Error ? error.message : String(error)}`,\n });\n }\n }\n\n async resolveLanguageModel({\n modelId,\n providerId,\n apiKey,\n headers,\n }: {\n modelId: string;\n providerId: string;\n apiKey: string;\n headers?: Record<string, string>;\n }): Promise<GatewayLanguageModel> {\n const baseURL = await this.buildUrl(`${providerId}/${modelId}`);\n\n const mastraHeaders = { 'User-Agent': MASTRA_USER_AGENT, ...headers };\n\n switch (providerId) {\n case 'openai':\n return createOpenAI({ apiKey, baseURL, headers: mastraHeaders }).responses(modelId);\n case 'gemini':\n return createGoogleGenerativeAI({\n baseURL: `${baseURL}/v1beta/`,\n apiKey,\n headers: {\n 'user-agent': 'google-genai-sdk/',\n ...mastraHeaders,\n },\n }).chat(modelId);\n case 'anthropic':\n return createAnthropic({\n apiKey,\n baseURL: `${baseURL}/v1/`,\n headers: {\n 'anthropic-version': '2023-06-01',\n ...mastraHeaders,\n },\n })(modelId);\n default:\n return createOpenAICompatible({\n name: providerId,\n apiKey,\n baseURL,\n headers: mastraHeaders,\n supportsStructuredOutputs: true,\n }).chatModel(modelId);\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/llm/model/gateways/netlify.ts"],"names":[],"mappings":"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","file":"chunk-37OQ7B3U.js","sourcesContent":["import { createAnthropic } from '@ai-sdk/anthropic-v6';\nimport { createGoogleGenerativeAI } from '@ai-sdk/google-v6';\nimport { createOpenAICompatible } from '@ai-sdk/openai-compatible-v5';\nimport { createOpenAI } from '@ai-sdk/openai-v6';\nimport { InMemoryServerCache } from '../../../cache/inmemory.js';\nimport { MastraError } from '../../../error/index.js';\nimport { MastraModelGateway } from './base.js';\nimport type { ProviderConfig, GatewayLanguageModel } from './base.js';\nimport { MASTRA_USER_AGENT } from './constants.js';\n\ninterface NetlifyProviderResponse {\n token_env_var: string;\n url_env_var: string;\n models: string[];\n}\ninterface NetlifyResponse {\n providers: Record<string, NetlifyProviderResponse>;\n}\n\ninterface NetlifyTokenResponse {\n token: string;\n url: string;\n expires_at: number;\n}\n\ninterface CachedToken {\n token: string;\n url: string;\n expiresAt: number;\n}\n\ninterface TokenData {\n token: string;\n url: string;\n}\n\nexport class NetlifyGateway extends MastraModelGateway {\n readonly id = 'netlify';\n readonly name = 'Netlify AI Gateway';\n private tokenCache = new InMemoryServerCache();\n\n async fetchProviders(): Promise<Record<string, ProviderConfig>> {\n const response = await fetch('https://api.netlify.com/api/v1/ai-gateway/providers');\n if (!response.ok) {\n throw new Error(`Failed to fetch from Netlify: ${response.statusText}`);\n }\n const data = (await response.json()) as NetlifyResponse;\n const config: ProviderConfig = {\n apiKeyEnvVar: ['NETLIFY_TOKEN', 'NETLIFY_SITE_ID'],\n apiKeyHeader: 'Authorization',\n name: `Netlify`,\n gateway: `netlify`,\n models: [],\n docUrl: 'https://docs.netlify.com/build/ai-gateway/overview/',\n };\n // Convert Netlify format to our standard format\n for (const [providerId, provider] of Object.entries(data.providers)) {\n for (const model of provider.models) {\n config.models.push(`${providerId}/${model}`);\n }\n }\n // Return with gateway ID as key - registry generator will detect this and avoid doubling the prefix\n return { netlify: config };\n }\n\n async buildUrl(routerId: string, envVars?: typeof process.env): Promise<string> {\n // Check for Netlify site ID first (for token exchange)\n const siteId = envVars?.['NETLIFY_SITE_ID'] || process.env['NETLIFY_SITE_ID'];\n const netlifyToken = envVars?.['NETLIFY_TOKEN'] || process.env['NETLIFY_TOKEN'];\n\n if (!netlifyToken) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_TOKEN',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_TOKEN environment variable required for model: ${routerId}`,\n });\n }\n\n if (!siteId) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_SITE_ID',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_SITE_ID environment variable required for model: ${routerId}`,\n });\n }\n\n try {\n const tokenData = await this.getOrFetchToken(siteId, netlifyToken);\n return tokenData.url.endsWith(`/`) ? tokenData.url.substring(0, tokenData.url.length - 1) : tokenData.url;\n } catch (error) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_TOKEN_ERROR',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Failed to get Netlify AI Gateway token for model ${routerId}: ${error instanceof Error ? error.message : String(error)}`,\n });\n }\n }\n\n /**\n * Get cached token or fetch a new site-specific AI Gateway token from Netlify\n */\n private async getOrFetchToken(siteId: string, netlifyToken: string): Promise<TokenData> {\n const cacheKey = `netlify-token:${siteId}:${netlifyToken}`;\n\n // Check cache first\n const cached = (await this.tokenCache.get(cacheKey)) as CachedToken | undefined;\n if (cached && cached.expiresAt > Date.now() / 1000 + 60) {\n // Return cached token if it won't expire in the next minute\n return { token: cached.token, url: cached.url };\n }\n\n // Fetch new token\n const response = await fetch(`https://api.netlify.com/api/v1/sites/${siteId}/ai-gateway/token`, {\n method: 'GET',\n headers: {\n Authorization: `Bearer ${netlifyToken}`,\n },\n });\n\n if (!response.ok) {\n const error = await response.text();\n throw new Error(`Failed to get Netlify AI Gateway token: ${response.status} ${error}`);\n }\n\n const tokenResponse = (await response.json()) as NetlifyTokenResponse;\n\n // Cache the token - InMemoryServerCache will handle the TTL\n await this.tokenCache.set(cacheKey, {\n token: tokenResponse.token,\n url: tokenResponse.url,\n expiresAt: tokenResponse.expires_at,\n });\n\n return { token: tokenResponse.token, url: tokenResponse.url };\n }\n\n /**\n * Get cached token or fetch a new site-specific AI Gateway token from Netlify\n */\n async getApiKey(modelId: string): Promise<string> {\n const siteId = process.env['NETLIFY_SITE_ID'];\n const netlifyToken = process.env['NETLIFY_TOKEN'];\n\n if (!netlifyToken) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_TOKEN',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_TOKEN environment variable required for model: ${modelId}`,\n });\n }\n\n if (!siteId) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_SITE_ID',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_SITE_ID environment variable required for model: ${modelId}`,\n });\n }\n\n try {\n return (await this.getOrFetchToken(siteId, netlifyToken)).token;\n } catch (error) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_TOKEN_ERROR',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Failed to get Netlify AI Gateway token for model ${modelId}: ${error instanceof Error ? error.message : String(error)}`,\n });\n }\n }\n\n async resolveLanguageModel({\n modelId,\n providerId,\n apiKey,\n headers,\n }: {\n modelId: string;\n providerId: string;\n apiKey: string;\n headers?: Record<string, string>;\n }): Promise<GatewayLanguageModel> {\n const baseURL = await this.buildUrl(`${providerId}/${modelId}`);\n\n const mastraHeaders = { 'User-Agent': MASTRA_USER_AGENT, ...headers };\n\n switch (providerId) {\n case 'openai':\n return createOpenAI({ apiKey, baseURL, headers: mastraHeaders }).responses(modelId);\n case 'gemini':\n return createGoogleGenerativeAI({\n baseURL: `${baseURL}/v1beta/`,\n apiKey,\n headers: {\n 'user-agent': 'google-genai-sdk/',\n ...mastraHeaders,\n },\n }).chat(modelId);\n case 'anthropic':\n return createAnthropic({\n apiKey,\n baseURL: `${baseURL}/v1/`,\n headers: {\n 'anthropic-version': '2023-06-01',\n ...mastraHeaders,\n },\n })(modelId);\n default:\n return createOpenAICompatible({\n name: providerId,\n apiKey,\n baseURL,\n headers: mastraHeaders,\n supportsStructuredOutputs: true,\n }).chatModel(modelId);\n }\n }\n}\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
3
|
+
var chunkWDJZB44P_cjs = require('./chunk-WDJZB44P.cjs');
|
|
4
|
+
var chunkTITDW65H_cjs = require('./chunk-TITDW65H.cjs');
|
|
5
|
+
var chunkWBZ5SRGR_cjs = require('./chunk-WBZ5SRGR.cjs');
|
|
6
6
|
var chunk4U7ZLI36_cjs = require('./chunk-4U7ZLI36.cjs');
|
|
7
7
|
var fs = require('fs');
|
|
8
8
|
var module$1 = require('module');
|
|
@@ -17,7 +17,7 @@ var os__default = /*#__PURE__*/_interopDefault(os);
|
|
|
17
17
|
var path__default = /*#__PURE__*/_interopDefault(path);
|
|
18
18
|
|
|
19
19
|
// src/llm/model/gateways/mastra.ts
|
|
20
|
-
var MastraGateway = class extends
|
|
20
|
+
var MastraGateway = class extends chunkWBZ5SRGR_cjs.MastraModelGateway {
|
|
21
21
|
constructor(config) {
|
|
22
22
|
super();
|
|
23
23
|
this.config = config;
|
|
@@ -74,34 +74,34 @@ var MastraGateway = class extends chunkM7NIAKE6_cjs.MastraModelGateway {
|
|
|
74
74
|
const baseURL = `${this.getBaseUrl()}/v1`;
|
|
75
75
|
const fullModelId = `${providerId}/${modelId}`;
|
|
76
76
|
if (this.config?.customFetch && providerId === "anthropic") {
|
|
77
|
-
return
|
|
77
|
+
return chunkWBZ5SRGR_cjs.createAnthropic({
|
|
78
78
|
apiKey: "oauth-gateway-placeholder",
|
|
79
79
|
baseURL,
|
|
80
80
|
headers: {
|
|
81
|
-
"User-Agent":
|
|
82
|
-
[
|
|
81
|
+
"User-Agent": chunkWBZ5SRGR_cjs.MASTRA_USER_AGENT,
|
|
82
|
+
[chunkWBZ5SRGR_cjs.GATEWAY_AUTH_HEADER]: `Bearer ${apiKey}`,
|
|
83
83
|
...headers
|
|
84
84
|
},
|
|
85
85
|
fetch: this.config.customFetch
|
|
86
86
|
})(modelId);
|
|
87
87
|
}
|
|
88
88
|
if (this.config?.customFetch) {
|
|
89
|
-
return
|
|
89
|
+
return chunkWDJZB44P_cjs.createOpenRouter({
|
|
90
90
|
apiKey: "oauth-gateway-placeholder",
|
|
91
91
|
baseURL,
|
|
92
92
|
headers: {
|
|
93
|
-
"User-Agent":
|
|
94
|
-
[
|
|
93
|
+
"User-Agent": chunkWBZ5SRGR_cjs.MASTRA_USER_AGENT,
|
|
94
|
+
[chunkWBZ5SRGR_cjs.GATEWAY_AUTH_HEADER]: `Bearer ${apiKey}`,
|
|
95
95
|
...headers
|
|
96
96
|
},
|
|
97
97
|
fetch: this.config.customFetch
|
|
98
98
|
}).chat(fullModelId);
|
|
99
99
|
}
|
|
100
|
-
return
|
|
100
|
+
return chunkWDJZB44P_cjs.createOpenRouter({
|
|
101
101
|
apiKey,
|
|
102
102
|
baseURL,
|
|
103
103
|
headers: {
|
|
104
|
-
"User-Agent":
|
|
104
|
+
"User-Agent": chunkWBZ5SRGR_cjs.MASTRA_USER_AGENT,
|
|
105
105
|
...headers
|
|
106
106
|
}
|
|
107
107
|
}).chat(fullModelId);
|
|
@@ -448,6 +448,7 @@ var provider_registry_default = {
|
|
|
448
448
|
"aion-labs/aion-1.0",
|
|
449
449
|
"aion-labs/aion-1.0-mini",
|
|
450
450
|
"aion-labs/aion-rp-llama-3.1-8b",
|
|
451
|
+
"alibaba/qwen3.6-flash",
|
|
451
452
|
"allenai/molmo-2-8b",
|
|
452
453
|
"allenai/olmo-3-32b-think",
|
|
453
454
|
"allenai/olmo-3.1-32b-instruct",
|
|
@@ -692,6 +693,8 @@ var provider_registry_default = {
|
|
|
692
693
|
"moonshotai/kimi-k2-thinking-turbo-original",
|
|
693
694
|
"moonshotai/kimi-k2.5",
|
|
694
695
|
"moonshotai/kimi-k2.5:thinking",
|
|
696
|
+
"moonshotai/kimi-k2.6",
|
|
697
|
+
"moonshotai/kimi-k2.6:thinking",
|
|
695
698
|
"nex-agi/deepseek-v3.1-nex-n1",
|
|
696
699
|
"nothingiisreal/L3.1-70B-Celeste-V0.1-BF16",
|
|
697
700
|
"nvidia/Llama-3.1-Nemotron-70B-Instruct-HF",
|
|
@@ -749,11 +752,14 @@ var provider_registry_default = {
|
|
|
749
752
|
"phi-4-mini-instruct",
|
|
750
753
|
"phi-4-multimodal-instruct",
|
|
751
754
|
"qvq-max",
|
|
755
|
+
"qwen-3.6-plus",
|
|
752
756
|
"qwen-image",
|
|
753
757
|
"qwen-long",
|
|
754
758
|
"qwen-max",
|
|
755
759
|
"qwen-plus",
|
|
756
760
|
"qwen-turbo",
|
|
761
|
+
"qwen/Qwen3.6-35B-A3B",
|
|
762
|
+
"qwen/Qwen3.6-35B-A3B:thinking",
|
|
757
763
|
"qwen/qwen3.5-397b-a17b",
|
|
758
764
|
"qwen25-vl-72b-instruct",
|
|
759
765
|
"qwen3-30b-a3b-instruct-2507",
|
|
@@ -761,6 +767,7 @@ var provider_registry_default = {
|
|
|
761
767
|
"qwen3-max-2026-01-23",
|
|
762
768
|
"qwen3-vl-235b-a22b-instruct-original",
|
|
763
769
|
"qwen3-vl-235b-a22b-thinking",
|
|
770
|
+
"qwen3.6-max-preview",
|
|
764
771
|
"qwq-32b",
|
|
765
772
|
"raifle/sorcererlm-8x22b",
|
|
766
773
|
"sarvan-medium",
|
|
@@ -1291,6 +1298,7 @@ var provider_registry_default = {
|
|
|
1291
1298
|
"accounts/fireworks/models/kimi-k2-instruct",
|
|
1292
1299
|
"accounts/fireworks/models/kimi-k2-thinking",
|
|
1293
1300
|
"accounts/fireworks/models/kimi-k2p5",
|
|
1301
|
+
"accounts/fireworks/models/kimi-k2p6",
|
|
1294
1302
|
"accounts/fireworks/models/minimax-m2p1",
|
|
1295
1303
|
"accounts/fireworks/models/minimax-m2p5",
|
|
1296
1304
|
"accounts/fireworks/models/minimax-m2p7",
|
|
@@ -1646,6 +1654,7 @@ var provider_registry_default = {
|
|
|
1646
1654
|
"moonshotai/kimi-k2-thinking",
|
|
1647
1655
|
"moonshotai/kimi-k2-thinking-turbo",
|
|
1648
1656
|
"moonshotai/kimi-k2.5",
|
|
1657
|
+
"moonshotai/kimi-k2.6",
|
|
1649
1658
|
"openai/gpt-5",
|
|
1650
1659
|
"openai/gpt-5-codex",
|
|
1651
1660
|
"openai/gpt-5.1",
|
|
@@ -1969,6 +1978,9 @@ var provider_registry_default = {
|
|
|
1969
1978
|
"MiniMaxAI/MiniMax-M2.5",
|
|
1970
1979
|
"Qwen/Qwen3-Coder-480B-A35B-Instruct",
|
|
1971
1980
|
"Qwen/Qwen3-Coder-480B-A35B-Instruct-Turbo",
|
|
1981
|
+
"Qwen/Qwen3.5-35B-A3B",
|
|
1982
|
+
"Qwen/Qwen3.5-397B-A17B",
|
|
1983
|
+
"Qwen/Qwen3.6-35B-A3B",
|
|
1972
1984
|
"anthropic/claude-3-7-sonnet-latest",
|
|
1973
1985
|
"anthropic/claude-4-opus",
|
|
1974
1986
|
"deepseek-ai/DeepSeek-R1-0528",
|
|
@@ -2259,6 +2271,7 @@ var provider_registry_default = {
|
|
|
2259
2271
|
"moonshotai/kimi-k2-0905",
|
|
2260
2272
|
"moonshotai/kimi-k2-thinking",
|
|
2261
2273
|
"moonshotai/kimi-k2.5",
|
|
2274
|
+
"moonshotai/kimi-k2.6",
|
|
2262
2275
|
"morph/morph-v3-fast",
|
|
2263
2276
|
"morph/morph-v3-large",
|
|
2264
2277
|
"nex-agi/deepseek-v3.1-nex-n1",
|
|
@@ -2535,6 +2548,7 @@ var provider_registry_default = {
|
|
|
2535
2548
|
"gpt-5.4-pro",
|
|
2536
2549
|
"kimi-k2.5",
|
|
2537
2550
|
"kimi-k2.6",
|
|
2551
|
+
"ling-2.6-flash-free",
|
|
2538
2552
|
"minimax-m2.5",
|
|
2539
2553
|
"minimax-m2.5-free",
|
|
2540
2554
|
"minimax-m2.7",
|
|
@@ -3053,7 +3067,8 @@ var provider_registry_default = {
|
|
|
3053
3067
|
"kimi-k2-thinking",
|
|
3054
3068
|
"kimi-k2-thinking-turbo",
|
|
3055
3069
|
"kimi-k2-turbo-preview",
|
|
3056
|
-
"kimi-k2.5"
|
|
3070
|
+
"kimi-k2.5",
|
|
3071
|
+
"kimi-k2.6"
|
|
3057
3072
|
],
|
|
3058
3073
|
docUrl: "https://platform.moonshot.cn/docs/api/chat",
|
|
3059
3074
|
gateway: "models.dev",
|
|
@@ -5021,6 +5036,7 @@ var provider_registry_default = {
|
|
|
5021
5036
|
"aion-labs/aion-1.0",
|
|
5022
5037
|
"aion-labs/aion-1.0-mini",
|
|
5023
5038
|
"aion-labs/aion-rp-llama-3.1-8b",
|
|
5039
|
+
"alibaba/qwen3.6-flash",
|
|
5024
5040
|
"allenai/molmo-2-8b",
|
|
5025
5041
|
"allenai/olmo-3-32b-think",
|
|
5026
5042
|
"allenai/olmo-3.1-32b-instruct",
|
|
@@ -5265,6 +5281,8 @@ var provider_registry_default = {
|
|
|
5265
5281
|
"moonshotai/kimi-k2-thinking-turbo-original",
|
|
5266
5282
|
"moonshotai/kimi-k2.5",
|
|
5267
5283
|
"moonshotai/kimi-k2.5:thinking",
|
|
5284
|
+
"moonshotai/kimi-k2.6",
|
|
5285
|
+
"moonshotai/kimi-k2.6:thinking",
|
|
5268
5286
|
"nex-agi/deepseek-v3.1-nex-n1",
|
|
5269
5287
|
"nothingiisreal/L3.1-70B-Celeste-V0.1-BF16",
|
|
5270
5288
|
"nvidia/Llama-3.1-Nemotron-70B-Instruct-HF",
|
|
@@ -5322,11 +5340,14 @@ var provider_registry_default = {
|
|
|
5322
5340
|
"phi-4-mini-instruct",
|
|
5323
5341
|
"phi-4-multimodal-instruct",
|
|
5324
5342
|
"qvq-max",
|
|
5343
|
+
"qwen-3.6-plus",
|
|
5325
5344
|
"qwen-image",
|
|
5326
5345
|
"qwen-long",
|
|
5327
5346
|
"qwen-max",
|
|
5328
5347
|
"qwen-plus",
|
|
5329
5348
|
"qwen-turbo",
|
|
5349
|
+
"qwen/Qwen3.6-35B-A3B",
|
|
5350
|
+
"qwen/Qwen3.6-35B-A3B:thinking",
|
|
5330
5351
|
"qwen/qwen3.5-397b-a17b",
|
|
5331
5352
|
"qwen25-vl-72b-instruct",
|
|
5332
5353
|
"qwen3-30b-a3b-instruct-2507",
|
|
@@ -5334,6 +5355,7 @@ var provider_registry_default = {
|
|
|
5334
5355
|
"qwen3-max-2026-01-23",
|
|
5335
5356
|
"qwen3-vl-235b-a22b-instruct-original",
|
|
5336
5357
|
"qwen3-vl-235b-a22b-thinking",
|
|
5358
|
+
"qwen3.6-max-preview",
|
|
5337
5359
|
"qwq-32b",
|
|
5338
5360
|
"raifle/sorcererlm-8x22b",
|
|
5339
5361
|
"sarvan-medium",
|
|
@@ -5776,6 +5798,7 @@ var provider_registry_default = {
|
|
|
5776
5798
|
"accounts/fireworks/models/kimi-k2-instruct",
|
|
5777
5799
|
"accounts/fireworks/models/kimi-k2-thinking",
|
|
5778
5800
|
"accounts/fireworks/models/kimi-k2p5",
|
|
5801
|
+
"accounts/fireworks/models/kimi-k2p6",
|
|
5779
5802
|
"accounts/fireworks/models/minimax-m2p1",
|
|
5780
5803
|
"accounts/fireworks/models/minimax-m2p5",
|
|
5781
5804
|
"accounts/fireworks/models/minimax-m2p7",
|
|
@@ -6041,6 +6064,7 @@ var provider_registry_default = {
|
|
|
6041
6064
|
"moonshotai/kimi-k2-thinking",
|
|
6042
6065
|
"moonshotai/kimi-k2-thinking-turbo",
|
|
6043
6066
|
"moonshotai/kimi-k2.5",
|
|
6067
|
+
"moonshotai/kimi-k2.6",
|
|
6044
6068
|
"openai/gpt-5",
|
|
6045
6069
|
"openai/gpt-5-codex",
|
|
6046
6070
|
"openai/gpt-5.1",
|
|
@@ -6301,6 +6325,9 @@ var provider_registry_default = {
|
|
|
6301
6325
|
"MiniMaxAI/MiniMax-M2.5",
|
|
6302
6326
|
"Qwen/Qwen3-Coder-480B-A35B-Instruct",
|
|
6303
6327
|
"Qwen/Qwen3-Coder-480B-A35B-Instruct-Turbo",
|
|
6328
|
+
"Qwen/Qwen3.5-35B-A3B",
|
|
6329
|
+
"Qwen/Qwen3.5-397B-A17B",
|
|
6330
|
+
"Qwen/Qwen3.6-35B-A3B",
|
|
6304
6331
|
"anthropic/claude-3-7-sonnet-latest",
|
|
6305
6332
|
"anthropic/claude-4-opus",
|
|
6306
6333
|
"deepseek-ai/DeepSeek-R1-0528",
|
|
@@ -6574,6 +6601,7 @@ var provider_registry_default = {
|
|
|
6574
6601
|
"moonshotai/kimi-k2-0905",
|
|
6575
6602
|
"moonshotai/kimi-k2-thinking",
|
|
6576
6603
|
"moonshotai/kimi-k2.5",
|
|
6604
|
+
"moonshotai/kimi-k2.6",
|
|
6577
6605
|
"morph/morph-v3-fast",
|
|
6578
6606
|
"morph/morph-v3-large",
|
|
6579
6607
|
"nex-agi/deepseek-v3.1-nex-n1",
|
|
@@ -6810,6 +6838,7 @@ var provider_registry_default = {
|
|
|
6810
6838
|
"gpt-5.4-pro",
|
|
6811
6839
|
"kimi-k2.5",
|
|
6812
6840
|
"kimi-k2.6",
|
|
6841
|
+
"ling-2.6-flash-free",
|
|
6813
6842
|
"minimax-m2.5",
|
|
6814
6843
|
"minimax-m2.5-free",
|
|
6815
6844
|
"minimax-m2.7",
|
|
@@ -7209,7 +7238,8 @@ var provider_registry_default = {
|
|
|
7209
7238
|
"kimi-k2-thinking",
|
|
7210
7239
|
"kimi-k2-thinking-turbo",
|
|
7211
7240
|
"kimi-k2-turbo-preview",
|
|
7212
|
-
"kimi-k2.5"
|
|
7241
|
+
"kimi-k2.5",
|
|
7242
|
+
"kimi-k2.6"
|
|
7213
7243
|
],
|
|
7214
7244
|
"wafer.ai": ["GLM-5.1", "Qwen3.5-397B-A17B"],
|
|
7215
7245
|
"cloudferro-sherlock": [
|
|
@@ -8628,7 +8658,7 @@ function saveLastRefreshTimeToDisk(date) {
|
|
|
8628
8658
|
}
|
|
8629
8659
|
function getPackageRoot() {
|
|
8630
8660
|
try {
|
|
8631
|
-
const require2 = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-
|
|
8661
|
+
const require2 = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-4MLJKGJI.cjs', document.baseURI).href)) || "file://");
|
|
8632
8662
|
const packageJsonPath = require2.resolve("@mastra/core/package.json");
|
|
8633
8663
|
return path__default.default.dirname(packageJsonPath);
|
|
8634
8664
|
} catch {
|
|
@@ -8637,8 +8667,8 @@ function getPackageRoot() {
|
|
|
8637
8667
|
}
|
|
8638
8668
|
function loadRegistry(useDynamicLoading, customGateways = []) {
|
|
8639
8669
|
const enabledGatewayIds = getEnabledGatewayIds([
|
|
8640
|
-
new
|
|
8641
|
-
new
|
|
8670
|
+
new chunkWDJZB44P_cjs.ModelsDevGateway({}),
|
|
8671
|
+
new chunkTITDW65H_cjs.NetlifyGateway(),
|
|
8642
8672
|
new MastraGateway(),
|
|
8643
8673
|
...customGateways
|
|
8644
8674
|
]);
|
|
@@ -8838,9 +8868,9 @@ var GatewayRegistry = class _GatewayRegistry {
|
|
|
8838
8868
|
}
|
|
8839
8869
|
this.isRefreshing = true;
|
|
8840
8870
|
try {
|
|
8841
|
-
const { ModelsDevGateway: ModelsDevGateway2 } = await import('./models-dev-
|
|
8842
|
-
const { NetlifyGateway: NetlifyGateway2 } = await import('./netlify-
|
|
8843
|
-
const { MastraGateway: MastraGateway2 } = await import('./mastra-
|
|
8871
|
+
const { ModelsDevGateway: ModelsDevGateway2 } = await import('./models-dev-INA3VBAK.cjs');
|
|
8872
|
+
const { NetlifyGateway: NetlifyGateway2 } = await import('./netlify-BW7IYASM.cjs');
|
|
8873
|
+
const { MastraGateway: MastraGateway2 } = await import('./mastra-47JQIPP2.cjs');
|
|
8844
8874
|
const { fetchProvidersFromGateways, writeRegistryFiles } = await import('./registry-generator-VNYH6GDH.cjs');
|
|
8845
8875
|
const defaultGateways = [
|
|
8846
8876
|
new ModelsDevGateway2({}),
|
|
@@ -8974,5 +9004,5 @@ exports.isOfflineMode = isOfflineMode;
|
|
|
8974
9004
|
exports.isProviderRegistered = isProviderRegistered;
|
|
8975
9005
|
exports.isValidModelId = isValidModelId;
|
|
8976
9006
|
exports.parseModelString = parseModelString;
|
|
8977
|
-
//# sourceMappingURL=chunk-
|
|
8978
|
-
//# sourceMappingURL=chunk-
|
|
9007
|
+
//# sourceMappingURL=chunk-4MLJKGJI.cjs.map
|
|
9008
|
+
//# sourceMappingURL=chunk-4MLJKGJI.cjs.map
|