From 841efcfea2d13560f8a85242ba3fa855523fe050 Mon Sep 17 00:00:00 2001 From: "dayuan.jiang" Date: Mon, 12 Oct 2026 14:37:59 +0900 Subject: [PATCH] test: record a private client URL in the provider behavior snapshot A sixteenth override shape, a key with a private base URL, so the snapshot holds usesServerEndpoint's answer for the server's own network before the function changes. 252 rows added, none changed. --- .../unit/__snapshots__/provider-matrix.jsonl | 252 ++++++++++++++++++ tests/unit/provider-matrix.test.ts | 8 +- 2 files changed, 258 insertions(+), 2 deletions(-) diff --git a/tests/unit/__snapshots__/provider-matrix.jsonl b/tests/unit/__snapshots__/provider-matrix.jsonl index 3f5e27ec..d2a135d3 100644 --- a/tests/unit/__snapshots__/provider-matrix.jsonl +++ b/tests/unit/__snapshots__/provider-matrix.jsonl @@ -133,6 +133,15 @@ {"provider":"openai","modelId":"gpt-6.1-sol","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"OPENAI_API_KEY environment variable is required for openai provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"openai","modelId":"gpt-6.1-sol","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"openai","modelId":"gpt-6.1-sol","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-6.1-sol","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"openai","modelId":"gpt-6.1-sol","model":{"factory":"openai","method":"chat","modelId":"gpt-6.1-sol","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"anthropic","modelId":"claude-opus-5-5","shape":"none","env":"empty","getAIModel":{"error":"Either ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN environment variable is required for anthropic provider. Please set one in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"anthropic","modelId":"claude-opus-5-5","shape":"none","env":"serverKey","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"server-key","baseURL":"https://api.anthropic.com/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"anthropic","modelId":"claude-opus-5-5","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -268,6 +277,15 @@ {"provider":"anthropic","modelId":"claude-opus-5-5","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"Either ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN environment variable is required for anthropic provider. Please set one in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/messages"} {"provider":"anthropic","modelId":"claude-opus-5-5","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/messages"} {"provider":"anthropic","modelId":"claude-opus-5-5","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} +{"provider":"anthropic","modelId":"claude-opus-5-5","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"anthropic","modelId":"claude-opus-5-5","model":{"factory":"anthropic","method":"default","modelId":"claude-opus-5-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/messages"} {"provider":"google","modelId":"gemini-3.1-pro","shape":"none","env":"empty","getAIModel":{"error":"GOOGLE_GENERATIVE_AI_API_KEY environment variable is required for google provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"google","modelId":"gemini-3.1-pro","shape":"none","env":"serverKey","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"server-key"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"google","modelId":"gemini-3.1-pro","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -403,6 +421,15 @@ {"provider":"google","modelId":"gemini-3.1-pro","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"GOOGLE_GENERATIVE_AI_API_KEY environment variable is required for google provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"google","modelId":"gemini-3.1-pro","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"google","modelId":"gemini-3.1-pro","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"google","modelId":"gemini-3.1-pro","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"google","modelId":"gemini-3.1-pro","model":{"factory":"google","method":"default","modelId":"gemini-3.1-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} {"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"none","env":"empty","getAIModel":{"error":"GOOGLE_VERTEX_API_KEY environment variable is required for vertexai provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"none","env":"serverKey","getAIModel":{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","model":{"factory":"vertex","method":"default","modelId":"gemini-3.1-pro-preview","options":{"apiKey":"server-key"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","model":{"factory":"vertex","method":"default","modelId":"gemini-3.1-pro-preview","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}},"providerOptions":{"google":{"thinkingConfig":{"includeThoughts":true}}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -538,6 +565,15 @@ {"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"GOOGLE_VERTEX_API_KEY environment variable is required for vertexai provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"trustedUrl","env":"desktop","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"trustedUrl","env":"everything","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"vertexai","modelId":"gemini-3.1-pro-preview","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"error":"Vertex AI requires an API key for Express Mode. Get one from Google Cloud Console or set GOOGLE_VERTEX_API_KEY environment variable."},"usesServerCredentials":true,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} {"provider":"azure","modelId":"gpt-5.5","shape":"none","env":"empty","getAIModel":{"error":"AZURE_API_KEY environment variable is required for azure provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"azure","modelId":"gpt-5.5","shape":"none","env":"serverKey","getAIModel":{"error":"Azure requires either AZURE_BASE_URL or AZURE_RESOURCE_NAME to be set. Please set one in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"azure","modelId":"gpt-5.5","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -673,6 +709,15 @@ {"provider":"azure","modelId":"gpt-5.5","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"AZURE_API_KEY environment variable is required for azure provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"azure","modelId":"gpt-5.5","shape":"trustedUrl","env":"desktop","getAIModel":{"error":"Azure requires either AZURE_BASE_URL or AZURE_RESOURCE_NAME to be set. Please set one in your .env.local file."},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"azure","modelId":"gpt-5.5","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server-resource.openai.azure.com/openai","chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"azure","modelId":"gpt-5.5","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"azure","modelId":"gpt-5.5","model":{"factory":"azure","method":"default","modelId":"gpt-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} {"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"none","env":"empty","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","credentialProvider":"node-chain"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"none","env":"serverKey","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","credentialProvider":"node-chain"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","credentialProvider":"node-chain"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} @@ -808,6 +853,15 @@ {"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"trustedUrl","env":"adminAws","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"eu-west-1","accessKeyId":"admin-id","secretAccessKey":"admin-secret","apiKey":""}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","credentialProvider":"node-chain"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-east-1","accessKeyId":"admin-id","secretAccessKey":"admin-secret","apiKey":""}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.us-west-2.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.us-west-2.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.us-west-2.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.us-west-2.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.us-west-2.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.us-west-2.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"eu-west-1","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.eu-west-1.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-west-2","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.us-west-2.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"bedrock","modelId":"global.anthropic.claude-opus-5-5","model":{"factory":"bedrock","method":"default","modelId":"global.anthropic.claude-opus-5-5","options":{"region":"us-east-1","apiKey":"client-key","credentialProvider":{"rejects":"The Bedrock API key is empty"},"baseURL":"https://bedrock-runtime.us-east-1.amazonaws.com"}},"providerOptions":{"bedrock":{"anthropicBeta":["fine-grained-tool-streaming-2025-05-14"]}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"ollama","modelId":"test-model","shape":"none","env":"empty","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":null} {"provider":"ollama","modelId":"test-model","shape":"none","env":"serverKey","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"headers":{"Authorization":"Bearer server-key"}}}},"usesServerCredentials":true,"usesServerEndpoint":true,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":null} {"provider":"ollama","modelId":"test-model","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"https://server.example/api","headers":{"Authorization":"Bearer server-key"}}}},"usesServerCredentials":true,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -943,6 +997,15 @@ {"provider":"ollama","modelId":"test-model","shape":"trustedUrl","env":"adminAws","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"https://u.example/api"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"https://u.example/api/chat"} {"provider":"ollama","modelId":"test-model","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"https://u.example/api"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"https://u.example/api/chat"} {"provider":"ollama","modelId":"test-model","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"https://u.example/api"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"globalBaseUrl":"http://127.0.0.1:11434/api","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} +{"provider":"ollama","modelId":"test-model","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"ollama","modelId":"test-model","model":{"factory":"ollama","method":"default","modelId":"test-model","options":{"baseURL":"http://10.0.0.5:8000/api","headers":{"Authorization":"Bearer client-key"},"fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/api/chat"} {"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"none","env":"empty","getAIModel":{"error":"OPENROUTER_API_KEY environment variable is required for openrouter provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"none","env":"serverKey","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"server-key"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -1078,6 +1141,15 @@ {"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"OPENROUTER_API_KEY environment variable is required for openrouter provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"openrouter","modelId":"anthropic/claude-opus-5.5","model":{"factory":"openrouter","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"aihubmix","modelId":"claude-fable-5","shape":"none","env":"empty","getAIModel":{"error":"AIHUBMIX_API_KEY environment variable is required for aihubmix provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"aihubmix","modelId":"claude-fable-5","shape":"none","env":"serverKey","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"factory":"aihubmix","method":"default","modelId":"claude-fable-5","options":{"apiKey":"server-key","appCode":"MSBS9675"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"aihubmix","modelId":"claude-fable-5","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -1213,6 +1285,15 @@ {"provider":"aihubmix","modelId":"claude-fable-5","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"AIHUBMIX_API_KEY environment variable is required for aihubmix provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"aihubmix","modelId":"claude-fable-5","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"aihubmix","modelId":"claude-fable-5","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"aihubmix","modelId":"claude-fable-5","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"aihubmix","modelId":"claude-fable-5","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"claude-fable-5","options":{"name":"aihubmix","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"none","env":"empty","getAIModel":{"error":"DEEPSEEK_API_KEY environment variable is required for deepseek provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"none","env":"serverKey","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"server-key"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -1348,6 +1429,15 @@ {"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"DEEPSEEK_API_KEY environment variable is required for deepseek provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"deepseek","modelId":"deepseek-v4-pro","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"deepseek","modelId":"deepseek-v4-pro","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v4-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"none","env":"empty","getAIModel":{"error":"SILICONFLOW_API_KEY environment variable is required for siliconflow provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"none","env":"serverKey","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"server-key","baseURL":"https://api.siliconflow.cn/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -1483,6 +1573,15 @@ {"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"SILICONFLOW_API_KEY environment variable is required for siliconflow provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"siliconflow","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"siliconflow","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"sglang","modelId":"default","shape":"none","env":"empty","getAIModel":{"error":"SGLANG_API_KEY environment variable is required for sglang provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"sglang","modelId":"default","shape":"none","env":"serverKey","getAIModel":{"error":"SGLang needs a base URL. Add it in the model settings."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"sglang","modelId":"default","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -1618,6 +1717,15 @@ {"provider":"sglang","modelId":"default","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"SGLANG_API_KEY environment variable is required for sglang provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"sglang","modelId":"default","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"sglang","modelId":"default","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"sglang","modelId":"default","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"sglang","modelId":"default","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"default","options":{"name":"sglang","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"none","env":"empty","getAIModel":{"error":"AI_GATEWAY_API_KEY environment variable is required for gateway provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"none","env":"serverKey","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"server-key"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -1753,6 +1861,15 @@ {"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"AI_GATEWAY_API_KEY environment variable is required for gateway provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"gateway","modelId":"anthropic/claude-opus-5.5","model":{"factory":"gateway","method":"default","modelId":"anthropic/claude-opus-5.5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} {"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"none","env":"empty","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"/api/edgeai","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} {"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"none","env":"serverKey","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"/api/edgeai","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} {"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"/api/edgeai","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} @@ -1888,6 +2005,15 @@ {"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"trustedUrl","env":"adminAws","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} {"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"edgeone","modelId":"@tx/deepseek-ai/deepseek-v32","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"@tx/deepseek-ai/deepseek-v32","options":{"name":"edgeone","apiKey":"edgeone","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} {"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"none","env":"empty","getAIModel":{"error":"DOUBAO_API_KEY environment variable is required for doubao provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"none","env":"serverKey","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"server-key","baseURL":"https://ark.cn-beijing.volces.com/api/v3","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -2023,6 +2149,15 @@ {"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"DOUBAO_API_KEY environment variable is required for doubao provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"doubao","modelId":"doubao-seed-2-0-pro-260215","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed-2-0-pro-260215","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"none","env":"empty","getAIModel":{"error":"MODELSCOPE_API_KEY environment variable is required for modelscope provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"none","env":"serverKey","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"server-key","baseURL":"https://api-inference.modelscope.cn/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -2158,6 +2293,15 @@ {"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"MODELSCOPE_API_KEY environment variable is required for modelscope provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"modelscope","modelId":"deepseek-ai/DeepSeek-V4-Pro","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"deepseek-ai/DeepSeek-V4-Pro","options":{"name":"modelscope","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"glm","modelId":"test-model","shape":"none","env":"empty","getAIModel":{"error":"GLM_API_KEY environment variable is required for glm provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"glm","modelId":"test-model","shape":"none","env":"serverKey","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"server-key","baseURL":"https://open.bigmodel.cn/api/paas/v4","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"glm","modelId":"test-model","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -2293,6 +2437,15 @@ {"provider":"glm","modelId":"test-model","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"GLM_API_KEY environment variable is required for glm provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"glm","modelId":"test-model","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"glm","modelId":"test-model","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"glm","modelId":"test-model","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"glm","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"glm","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"qwen","modelId":"test-model","shape":"none","env":"empty","getAIModel":{"error":"QWEN_API_KEY environment variable is required for qwen provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"qwen","modelId":"test-model","shape":"none","env":"serverKey","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"server-key","baseURL":"https://dashscope.aliyuncs.com/compatible-mode/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"qwen","modelId":"test-model","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -2428,6 +2581,15 @@ {"provider":"qwen","modelId":"test-model","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"QWEN_API_KEY environment variable is required for qwen provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"qwen","modelId":"test-model","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"qwen","modelId":"test-model","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qwen","modelId":"test-model","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"qwen","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qwen","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"qiniu","modelId":"test-model","shape":"none","env":"empty","getAIModel":{"error":"QINIU_API_KEY environment variable is required for qiniu provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"qiniu","modelId":"test-model","shape":"none","env":"serverKey","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"server-key","baseURL":"https://api.qnaigc.com/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"qiniu","modelId":"test-model","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -2563,6 +2725,15 @@ {"provider":"qiniu","modelId":"test-model","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"QINIU_API_KEY environment variable is required for qiniu provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"qiniu","modelId":"test-model","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"qiniu","modelId":"test-model","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"qiniu","modelId":"test-model","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"qiniu","modelId":"test-model","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"test-model","options":{"name":"qiniu","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"kimi","modelId":"test-model","shape":"none","env":"empty","getAIModel":{"error":"KIMI_API_KEY environment variable is required for kimi provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"kimi","modelId":"test-model","shape":"none","env":"serverKey","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"server-key","baseURL":"https://api.moonshot.cn/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"kimi","modelId":"test-model","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -2698,6 +2869,15 @@ {"provider":"kimi","modelId":"test-model","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"KIMI_API_KEY environment variable is required for kimi provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"kimi","modelId":"test-model","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"kimi","modelId":"test-model","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"kimi","modelId":"test-model","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"kimi","modelId":"test-model","model":{"factory":"deepseek","method":"default","modelId":"test-model","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"minimax","modelId":"MiniMax-M3","shape":"none","env":"empty","getAIModel":{"error":"MINIMAX_API_KEY environment variable is required for minimax provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"minimax","modelId":"MiniMax-M3","shape":"none","env":"serverKey","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"factory":"anthropic","method":"default","modelId":"MiniMax-M3","options":{"apiKey":"server-key","baseURL":"https://api.minimaxi.com/anthropic/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"minimax","modelId":"MiniMax-M3","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -2833,6 +3013,15 @@ {"provider":"minimax","modelId":"MiniMax-M3","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"MINIMAX_API_KEY environment variable is required for minimax provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"minimax","modelId":"MiniMax-M3","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"minimax","modelId":"MiniMax-M3","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":null} +{"provider":"minimax","modelId":"MiniMax-M3","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"minimax","modelId":"MiniMax-M3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"MiniMax-M3","options":{"name":"minimax","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} {"provider":"novita","modelId":"minimax/minimax-m3","shape":"none","env":"empty","getAIModel":{"error":"NOVITA_API_KEY environment variable is required for novita provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"novita","modelId":"minimax/minimax-m3","shape":"none","env":"serverKey","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"server-key","baseURL":"https://api.novita.ai/openai","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"novita","modelId":"minimax/minimax-m3","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -2968,6 +3157,15 @@ {"provider":"novita","modelId":"minimax/minimax-m3","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"NOVITA_API_KEY environment variable is required for novita provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"novita","modelId":"minimax/minimax-m3","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"novita","modelId":"minimax/minimax-m3","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"novita","modelId":"minimax/minimax-m3","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"novita","modelId":"minimax/minimax-m3","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"minimax/minimax-m3","options":{"name":"novita","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"none","env":"empty","getAIModel":{"error":"MIMO_API_KEY environment variable is required for mimo provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"none","env":"serverKey","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"server-key","baseURL":"https://api.xiaomimimo.com/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -3103,6 +3301,15 @@ {"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"MIMO_API_KEY environment variable is required for mimo provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"mimo","modelId":"mimo-v2.5-pro","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"mimo","modelId":"mimo-v2.5-pro","model":{"factory":"deepseek","method":"default","modelId":"mimo-v2.5-pro","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"none","env":"empty","getAIModel":{"error":"ATLASCLOUD_API_KEY environment variable is required for atlascloud provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"none","env":"serverKey","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"server-key","baseURL":"https://api.atlascloud.ai/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -3238,6 +3445,15 @@ {"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"ATLASCLOUD_API_KEY environment variable is required for atlascloud provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"atlascloud","modelId":"qwen/qwen3.5-flash","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"qwen/qwen3.5-flash","options":{"name":"atlascloud","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"noProvider":true,"env":"only OPENAI_API_KEY","serverProvider":"openai","getAIModel":{"provider":"openai","modelId":"test-model","model":{"factory":"openai","method":"default","modelId":"test-model","options":{"apiKey":"server-key"}}}} {"noProvider":true,"env":"only ANTHROPIC_API_KEY","serverProvider":"anthropic","getAIModel":{"provider":"anthropic","modelId":"test-model","model":{"factory":"anthropic","method":"default","modelId":"test-model","options":{"apiKey":"server-key","baseURL":"https://api.anthropic.com/v1"}}}} {"noProvider":true,"env":"only GOOGLE_GENERATIVE_AI_API_KEY","serverProvider":"google","getAIModel":{"provider":"google","modelId":"test-model","model":{"factory":"google","method":"default","modelId":"test-model","options":{"apiKey":"server-key"}}}} @@ -3421,6 +3637,15 @@ {"provider":"openai","modelId":"gpt-5","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"OPENAI_API_KEY environment variable is required for openai provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"openai","modelId":"gpt-5","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"openai","modelId":"gpt-5","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-5","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"openai","modelId":"gpt-5","model":{"factory":"openai","method":"chat","modelId":"gpt-5","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}},"providerOptions":{"openai":{"reasoningSummary":"auto"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"openai","modelId":"gpt-4o","shape":"none","env":"empty","getAIModel":{"error":"OPENAI_API_KEY environment variable is required for openai provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"openai","modelId":"gpt-4o","shape":"none","env":"serverKey","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"default","modelId":"gpt-4o","options":{"apiKey":"server-key"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"openai","modelId":"gpt-4o","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -3556,6 +3781,15 @@ {"provider":"openai","modelId":"gpt-4o","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"OPENAI_API_KEY environment variable is required for openai provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"openai","modelId":"gpt-4o","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"openai","modelId":"gpt-4o","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"openai","modelId":"gpt-4o","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"openai","modelId":"gpt-4o","model":{"factory":"openai","method":"chat","modelId":"gpt-4o","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"doubao","modelId":"deepseek-v3","shape":"none","env":"empty","getAIModel":{"error":"DOUBAO_API_KEY environment variable is required for doubao provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"doubao","modelId":"deepseek-v3","shape":"none","env":"serverKey","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"server-key","baseURL":"https://ark.cn-beijing.volces.com/api/v3"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"doubao","modelId":"deepseek-v3","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"server-key","baseURL":"https://server.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -3691,6 +3925,15 @@ {"provider":"doubao","modelId":"deepseek-v3","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"DOUBAO_API_KEY environment variable is required for doubao provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"doubao","modelId":"deepseek-v3","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"doubao","modelId":"deepseek-v3","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"server-key","baseURL":"https://u.example/v1"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"deepseek-v3","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"doubao","modelId":"deepseek-v3","model":{"factory":"deepseek","method":"default","modelId":"deepseek-v3","options":{"apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"doubao","modelId":"doubao-seed","shape":"none","env":"empty","getAIModel":{"error":"DOUBAO_API_KEY environment variable is required for doubao provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"doubao","modelId":"doubao-seed","shape":"none","env":"serverKey","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"server-key","baseURL":"https://ark.cn-beijing.volces.com/api/v3","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"doubao","modelId":"doubao-seed","shape":"none","env":"serverKeyAndUrl","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"server-key","baseURL":"https://server.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} @@ -3826,6 +4069,15 @@ {"provider":"doubao","modelId":"doubao-seed","shape":"trustedUrl","env":"adminAws","getAIModel":{"error":"DOUBAO_API_KEY environment variable is required for doubao provider. Please set it in your .env.local file."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"doubao","modelId":"doubao-seed","shape":"trustedUrl","env":"desktop","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"https://u.example/v1/chat/completions"} {"provider":"doubao","modelId":"doubao-seed","shape":"trustedUrl","env":"everything","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"server-key","baseURL":"https://u.example/v1","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"https://u.example/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"empty","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"serverKey","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"serverKeyAndUrl","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"ollamaKey","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"azureResource","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"anthropicToken","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"adminAws","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"desktop","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":false,"chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} +{"provider":"doubao","modelId":"doubao-seed","shape":"keyAndPrivateUrl","env":"everything","getAIModel":{"provider":"doubao","modelId":"doubao-seed","model":{"wrapped":{"factory":"openai-compatible","method":"default","modelId":"doubao-seed","options":{"name":"doubao","apiKey":"client-key","baseURL":"http://10.0.0.5:8000/v1","fetch":"guarded","includeUsage":true}},"middleware":{"middleware":"extractReasoning","tagName":"think"}}},"usesServerCredentials":false,"usesServerEndpoint":true,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":"http://10.0.0.5:8000/v1/chat/completions"} {"provider":"minimax","modelId":"MiniMax-M3","shape":"url","env":"empty","getAIModel":{"error":"API key is required when using a custom base URL. Please provide your own API key in Settings."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"minimax","modelId":"MiniMax-M3","shape":"url","env":"serverKey","getAIModel":{"error":"API key is required when using a custom base URL. Please provide your own API key in Settings."},"usesServerCredentials":true,"usesServerEndpoint":false,"chatRequestUrl":null} {"provider":"minimax","modelId":"MiniMax-M3","shape":"url","env":"serverKeyAndUrl","getAIModel":{"error":"API key is required when using a custom base URL. Please provide your own API key in Settings."},"usesServerCredentials":true,"usesServerEndpoint":false,"globalBaseUrl":"https://server.example/v1","chatRequestUrl":null} diff --git a/tests/unit/provider-matrix.test.ts b/tests/unit/provider-matrix.test.ts index 43ee519a..edf88cc0 100644 --- a/tests/unit/provider-matrix.test.ts +++ b/tests/unit/provider-matrix.test.ts @@ -267,7 +267,7 @@ const ENVIRONMENTS: Record Env> = { const CLIENT_URL = "https://u.example/v1" const CLIENT_KEY = "client-key" -/** Fifteen shapes of client override; some need variables of their own */ +/** Sixteen shapes of client override; some need variables of their own */ const SHAPES: Record< string, { overrides: Omit; env?: Env } @@ -318,6 +318,10 @@ const SHAPES: Record< overrides: { vertexApiKey: "client-vertex-key", baseUrl: CLIENT_URL }, }, trustedUrl: { overrides: { baseUrl: CLIENT_URL, trustedBaseUrl: true } }, + // A private address: usesServerEndpoint counts it as the server's network + keyAndPrivateUrl: { + overrides: { apiKey: CLIENT_KEY, baseUrl: "http://10.0.0.5:8000/v1" }, + }, } /** The shapes that carry a client URL, for the MiniMax /anthropic probe */ @@ -445,7 +449,7 @@ describe("provider behavior snapshot", () => { }) it("matches the recorded behavior", async () => { - // The matrix: 24 providers, 15 shapes, 9 environments + // The matrix: 24 providers, 16 shapes, 9 environments for (const provider of MATRIX_PROVIDERS) { await matrix(provider, MATRIX_MODEL_IDS[provider]) }