feat(ai): add Grok 4.6 to the model registry (#1113)

* feat(ai): add Grok 4.6 to the model registry

The Grok picker still topped out at 4.5, so the new flagship ID was not selectable with its documented xhigh reasoning effort.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(docs): stop the docs Next app from loading app instrumentation

Next 16 discovers the repo-root instrumentation.ts from packages/docs, then fails because that file imports app persistence modules. Give the standalone docs app a no-op register() so the Grok catalog docs can build.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Yizuki_Ame
2026-08-13 16:59:06 +08:00
committed by GitHub
co-authored by Cursor
parent 019fe6e6ac
commit 13d94a52a1
12 changed files with 67 additions and 6 deletions
+1
View File
@@ -72,6 +72,7 @@ OPENROUTER_MODELS=
GROK_API_KEY=
GROK_BASE_URL=
# Example: grok-4.6,grok-4.5
GROK_MODELS=
TENCENT_API_KEY=
+2
View File
@@ -160,6 +160,7 @@ const anthropicFable5Effort: ThinkingCapability = {
};
const kimiK3Effort = effortCapability('openai', ['low', 'high', 'max'], 'max');
const grok46Effort = effortCapability('openai', ['low', 'medium', 'high', 'xhigh'], 'high');
const grok45Effort = effortCapability('openai', ['low', 'medium', 'high'], 'high');
const grok43Effort = effortCapability('openai', ['none', 'low', 'medium', 'high'], 'none');
@@ -426,6 +427,7 @@ const THINKING_CAPABILITIES: Record<string, ThinkingCapability> = {
'medium',
),
[getModelMetadataKey('grok', 'grok-4.6')]: grok46Effort,
[getModelMetadataKey('grok', 'grok-4.5')]: grok45Effort,
[getModelMetadataKey('grok', 'grok-4.3')]: grok43Effort,
[getModelMetadataKey('grok', 'grok-build-0.1')]: fixedThinkingCapability,
+16
View File
@@ -1233,6 +1233,22 @@ export const PROVIDERS: Record<ProviderId, ProviderConfig> = {
requiresApiKey: true,
icon: '/logos/grok.svg',
models: [
{
id: 'grok-4.6',
name: 'Grok 4.6',
contextWindow: 500000,
outputWindow: 500000,
capabilities: {
streaming: true,
tools: true,
vision: true,
thinking: {
toggleable: false,
budgetAdjustable: true,
defaultEnabled: true,
},
},
},
{
id: 'grok-4.5',
name: 'Grok 4.5',
@@ -23,7 +23,7 @@ description: قائمة النماذج المدمجة ومزودي الخدمة
| SiliconFlow | `siliconflow` | DeepSeek-V3.2 (`deepseek-ai/DeepSeek-V3.2`)<br />DeepSeek-R1 (`deepseek-ai/DeepSeek-R1`)<br />DeepSeek-R1-Distill-Qwen-7B (`deepseek-ai/DeepSeek-R1-Distill-Qwen-7B`)<br />Qwen3-VL-32B-Instruct (`Qwen/Qwen3-VL-32B-Instruct`)<br />Kimi-K2.5 (`Pro/moonshotai/Kimi-K2.5`)<br />GLM-4.1V-9B-Thinking (`THUDM/GLM-4.1V-9B-Thinking`)<br />GLM-Z1-Rumination-32B (`THUDM/GLM-Z1-Rumination-32B-0414`) |
| Doubao | `doubao` | Doubao Seed 2.1 Pro (`doubao-seed-2-1-pro-260628`)<br />Doubao Seed 2.1 Turbo (`doubao-seed-2-1-turbo-260628`)<br />Doubao Seed Evolving (`doubao-seed-evolving`)<br />Doubao Seed Character (`doubao-seed-character-260628`)<br />Doubao Seed 2.0 Pro (`doubao-seed-2-0-pro-260215`)<br />Doubao Seed 2.0 Lite (`doubao-seed-2-0-lite-260215`)<br />Doubao Seed 2.0 Mini (`doubao-seed-2-0-mini-260215`)<br />Doubao Seed 1.8 (`doubao-seed-1-8-251228`) |
| OpenRouter | `openrouter` | DeepSeek V4 Pro (`deepseek/deepseek-v4-pro`)<br />DeepSeek V4 Flash (`deepseek/deepseek-v4-flash`) |
| Grok | `grok` | Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Grok | `grok` | Grok 4.6 (`grok-4.6`)<br />Grok 4.5 (`grok-4.5`)<br />Grok 4.3 (`grok-4.3`)<br />Grok Build 0.1 (`grok-build-0.1`)<br />Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Tencent Hunyuan | `tencent-hunyuan` | Tencent Hy3 Preview (`hy3-preview`) |
| Xiaomi MiMo | `xiaomi` | MiMo V2.5 Pro (`mimo-v2.5-pro`)<br />MiMo V2 Pro (`mimo-v2-pro`)<br />MiMo V2.5 (`mimo-v2.5`)<br />MiMo V2 Omni (`mimo-v2-omni`)<br />MiMo V2 Flash (`mimo-v2-flash`) |
| Ollama | `ollama` | Llama 3.3 70B (`llama3.3`)<br />Gemma 3 12B (`gemma3`)<br />DeepSeek R1 (`deepseek-r1`) |
@@ -23,7 +23,7 @@ description: オープンソース版 OpenMAIC の組み込みモデルと provi
| SiliconFlow | `siliconflow` | DeepSeek-V3.2 (`deepseek-ai/DeepSeek-V3.2`)<br />DeepSeek-R1 (`deepseek-ai/DeepSeek-R1`)<br />DeepSeek-R1-Distill-Qwen-7B (`deepseek-ai/DeepSeek-R1-Distill-Qwen-7B`)<br />Qwen3-VL-32B-Instruct (`Qwen/Qwen3-VL-32B-Instruct`)<br />Kimi-K2.5 (`Pro/moonshotai/Kimi-K2.5`)<br />GLM-4.1V-9B-Thinking (`THUDM/GLM-4.1V-9B-Thinking`)<br />GLM-Z1-Rumination-32B (`THUDM/GLM-Z1-Rumination-32B-0414`) |
| Doubao | `doubao` | Doubao Seed 2.1 Pro (`doubao-seed-2-1-pro-260628`)<br />Doubao Seed 2.1 Turbo (`doubao-seed-2-1-turbo-260628`)<br />Doubao Seed Evolving (`doubao-seed-evolving`)<br />Doubao Seed Character (`doubao-seed-character-260628`)<br />Doubao Seed 2.0 Pro (`doubao-seed-2-0-pro-260215`)<br />Doubao Seed 2.0 Lite (`doubao-seed-2-0-lite-260215`)<br />Doubao Seed 2.0 Mini (`doubao-seed-2-0-mini-260215`)<br />Doubao Seed 1.8 (`doubao-seed-1-8-251228`) |
| OpenRouter | `openrouter` | DeepSeek V4 Pro (`deepseek/deepseek-v4-pro`)<br />DeepSeek V4 Flash (`deepseek/deepseek-v4-flash`) |
| Grok | `grok` | Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Grok | `grok` | Grok 4.6 (`grok-4.6`)<br />Grok 4.5 (`grok-4.5`)<br />Grok 4.3 (`grok-4.3`)<br />Grok Build 0.1 (`grok-build-0.1`)<br />Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Tencent Hunyuan | `tencent-hunyuan` | Tencent Hy3 Preview (`hy3-preview`) |
| Xiaomi MiMo | `xiaomi` | MiMo V2.5 Pro (`mimo-v2.5-pro`)<br />MiMo V2 Pro (`mimo-v2-pro`)<br />MiMo V2.5 (`mimo-v2.5`)<br />MiMo V2 Omni (`mimo-v2-omni`)<br />MiMo V2 Flash (`mimo-v2-flash`) |
| Ollama | `ollama` | Llama 3.3 70B (`llama3.3`)<br />Gemma 3 12B (`gemma3`)<br />DeepSeek R1 (`deepseek-r1`) |
@@ -23,7 +23,7 @@ Use `provider:model-id` for models in `DEFAULT_MODEL` or YAML, for example `open
| SiliconFlow | `siliconflow` | DeepSeek-V3.2 (`deepseek-ai/DeepSeek-V3.2`)<br />DeepSeek-R1 (`deepseek-ai/DeepSeek-R1`)<br />DeepSeek-R1-Distill-Qwen-7B (`deepseek-ai/DeepSeek-R1-Distill-Qwen-7B`)<br />Qwen3-VL-32B-Instruct (`Qwen/Qwen3-VL-32B-Instruct`)<br />Kimi-K2.5 (`Pro/moonshotai/Kimi-K2.5`)<br />GLM-4.1V-9B-Thinking (`THUDM/GLM-4.1V-9B-Thinking`)<br />GLM-Z1-Rumination-32B (`THUDM/GLM-Z1-Rumination-32B-0414`) |
| Doubao | `doubao` | Doubao Seed 2.1 Pro (`doubao-seed-2-1-pro-260628`)<br />Doubao Seed 2.1 Turbo (`doubao-seed-2-1-turbo-260628`)<br />Doubao Seed Evolving (`doubao-seed-evolving`)<br />Doubao Seed Character (`doubao-seed-character-260628`)<br />Doubao Seed 2.0 Pro (`doubao-seed-2-0-pro-260215`)<br />Doubao Seed 2.0 Lite (`doubao-seed-2-0-lite-260215`)<br />Doubao Seed 2.0 Mini (`doubao-seed-2-0-mini-260215`)<br />Doubao Seed 1.8 (`doubao-seed-1-8-251228`) |
| OpenRouter | `openrouter` | DeepSeek V4 Pro (`deepseek/deepseek-v4-pro`)<br />DeepSeek V4 Flash (`deepseek/deepseek-v4-flash`) |
| Grok | `grok` | Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Grok | `grok` | Grok 4.6 (`grok-4.6`)<br />Grok 4.5 (`grok-4.5`)<br />Grok 4.3 (`grok-4.3`)<br />Grok Build 0.1 (`grok-build-0.1`)<br />Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Tencent Hunyuan | `tencent-hunyuan` | Tencent Hy3 Preview (`hy3-preview`) |
| Xiaomi MiMo | `xiaomi` | MiMo V2.5 Pro (`mimo-v2.5-pro`)<br />MiMo V2 Pro (`mimo-v2-pro`)<br />MiMo V2.5 (`mimo-v2.5`)<br />MiMo V2 Omni (`mimo-v2-omni`)<br />MiMo V2 Flash (`mimo-v2-flash`) |
| Ollama | `ollama` | Llama 3.3 70B (`llama3.3`)<br />Gemma 3 12B (`gemma3`)<br />DeepSeek R1 (`deepseek-r1`) |
@@ -23,7 +23,7 @@ description: Встроенные модели и список провайде
| SiliconFlow | `siliconflow` | DeepSeek-V3.2 (`deepseek-ai/DeepSeek-V3.2`)<br />DeepSeek-R1 (`deepseek-ai/DeepSeek-R1`)<br />DeepSeek-R1-Distill-Qwen-7B (`deepseek-ai/DeepSeek-R1-Distill-Qwen-7B`)<br />Qwen3-VL-32B-Instruct (`Qwen/Qwen3-VL-32B-Instruct`)<br />Kimi-K2.5 (`Pro/moonshotai/Kimi-K2.5`)<br />GLM-4.1V-9B-Thinking (`THUDM/GLM-4.1V-9B-Thinking`)<br />GLM-Z1-Rumination-32B (`THUDM/GLM-Z1-Rumination-32B-0414`) |
| Doubao | `doubao` | Doubao Seed 2.1 Pro (`doubao-seed-2-1-pro-260628`)<br />Doubao Seed 2.1 Turbo (`doubao-seed-2-1-turbo-260628`)<br />Doubao Seed Evolving (`doubao-seed-evolving`)<br />Doubao Seed Character (`doubao-seed-character-260628`)<br />Doubao Seed 2.0 Pro (`doubao-seed-2-0-pro-260215`)<br />Doubao Seed 2.0 Lite (`doubao-seed-2-0-lite-260215`)<br />Doubao Seed 2.0 Mini (`doubao-seed-2-0-mini-260215`)<br />Doubao Seed 1.8 (`doubao-seed-1-8-251228`) |
| OpenRouter | `openrouter` | DeepSeek V4 Pro (`deepseek/deepseek-v4-pro`)<br />DeepSeek V4 Flash (`deepseek/deepseek-v4-flash`) |
| Grok | `grok` | Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Grok | `grok` | Grok 4.6 (`grok-4.6`)<br />Grok 4.5 (`grok-4.5`)<br />Grok 4.3 (`grok-4.3`)<br />Grok Build 0.1 (`grok-build-0.1`)<br />Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Tencent Hunyuan | `tencent-hunyuan` | Tencent Hy3 Preview (`hy3-preview`) |
| Xiaomi MiMo | `xiaomi` | MiMo V2.5 Pro (`mimo-v2.5-pro`)<br />MiMo V2 Pro (`mimo-v2-pro`)<br />MiMo V2.5 (`mimo-v2.5`)<br />MiMo V2 Omni (`mimo-v2-omni`)<br />MiMo V2 Flash (`mimo-v2-flash`) |
| Ollama | `ollama` | Llama 3.3 70B (`llama3.3`)<br />Gemma 3 12B (`gemma3`)<br />DeepSeek R1 (`deepseek-r1`) |
@@ -23,7 +23,7 @@ description: 开源版 OpenMAIC 的内置模型与 provider 列表。
| SiliconFlow | `siliconflow` | DeepSeek-V3.2 (`deepseek-ai/DeepSeek-V3.2`)<br />DeepSeek-R1 (`deepseek-ai/DeepSeek-R1`)<br />DeepSeek-R1-Distill-Qwen-7B (`deepseek-ai/DeepSeek-R1-Distill-Qwen-7B`)<br />Qwen3-VL-32B-Instruct (`Qwen/Qwen3-VL-32B-Instruct`)<br />Kimi-K2.5 (`Pro/moonshotai/Kimi-K2.5`)<br />GLM-4.1V-9B-Thinking (`THUDM/GLM-4.1V-9B-Thinking`)<br />GLM-Z1-Rumination-32B (`THUDM/GLM-Z1-Rumination-32B-0414`) |
| Doubao | `doubao` | Doubao Seed 2.1 Pro (`doubao-seed-2-1-pro-260628`)<br />Doubao Seed 2.1 Turbo (`doubao-seed-2-1-turbo-260628`)<br />Doubao Seed Evolving (`doubao-seed-evolving`)<br />Doubao Seed Character (`doubao-seed-character-260628`)<br />Doubao Seed 2.0 Pro (`doubao-seed-2-0-pro-260215`)<br />Doubao Seed 2.0 Lite (`doubao-seed-2-0-lite-260215`)<br />Doubao Seed 2.0 Mini (`doubao-seed-2-0-mini-260215`)<br />Doubao Seed 1.8 (`doubao-seed-1-8-251228`) |
| OpenRouter | `openrouter` | DeepSeek V4 Pro (`deepseek/deepseek-v4-pro`)<br />DeepSeek V4 Flash (`deepseek/deepseek-v4-flash`) |
| Grok | `grok` | Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Grok | `grok` | Grok 4.6 (`grok-4.6`)<br />Grok 4.5 (`grok-4.5`)<br />Grok 4.3 (`grok-4.3`)<br />Grok Build 0.1 (`grok-build-0.1`)<br />Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Tencent Hunyuan | `tencent-hunyuan` | Tencent Hy3 Preview (`hy3-preview`) |
| Xiaomi MiMo | `xiaomi` | MiMo V2.5 Pro (`mimo-v2.5-pro`)<br />MiMo V2 Pro (`mimo-v2-pro`)<br />MiMo V2.5 (`mimo-v2.5`)<br />MiMo V2 Omni (`mimo-v2-omni`)<br />MiMo V2 Flash (`mimo-v2-flash`) |
| Ollama | `ollama` | Llama 3.3 70B (`llama3.3`)<br />Gemma 3 12B (`gemma3`)<br />DeepSeek R1 (`deepseek-r1`) |
@@ -23,7 +23,7 @@ description: 開源版 OpenMAIC 的內建模型與 provider 清單。
| SiliconFlow | `siliconflow` | DeepSeek-V3.2 (`deepseek-ai/DeepSeek-V3.2`)<br />DeepSeek-R1 (`deepseek-ai/DeepSeek-R1`)<br />DeepSeek-R1-Distill-Qwen-7B (`deepseek-ai/DeepSeek-R1-Distill-Qwen-7B`)<br />Qwen3-VL-32B-Instruct (`Qwen/Qwen3-VL-32B-Instruct`)<br />Kimi-K2.5 (`Pro/moonshotai/Kimi-K2.5`)<br />GLM-4.1V-9B-Thinking (`THUDM/GLM-4.1V-9B-Thinking`)<br />GLM-Z1-Rumination-32B (`THUDM/GLM-Z1-Rumination-32B-0414`) |
| Doubao | `doubao` | Doubao Seed 2.1 Pro (`doubao-seed-2-1-pro-260628`)<br />Doubao Seed 2.1 Turbo (`doubao-seed-2-1-turbo-260628`)<br />Doubao Seed Evolving (`doubao-seed-evolving`)<br />Doubao Seed Character (`doubao-seed-character-260628`)<br />Doubao Seed 2.0 Pro (`doubao-seed-2-0-pro-260215`)<br />Doubao Seed 2.0 Lite (`doubao-seed-2-0-lite-260215`)<br />Doubao Seed 2.0 Mini (`doubao-seed-2-0-mini-260215`)<br />Doubao Seed 1.8 (`doubao-seed-1-8-251228`) |
| OpenRouter | `openrouter` | DeepSeek V4 Pro (`deepseek/deepseek-v4-pro`)<br />DeepSeek V4 Flash (`deepseek/deepseek-v4-flash`) |
| Grok | `grok` | Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Grok | `grok` | Grok 4.6 (`grok-4.6`)<br />Grok 4.5 (`grok-4.5`)<br />Grok 4.3 (`grok-4.3`)<br />Grok Build 0.1 (`grok-build-0.1`)<br />Grok 4.20 Reasoning (`grok-4.20-reasoning`)<br />Grok 4.20 (`grok-4.20`)<br />Grok 4.20 Multi-Agent (`grok-4.20-multi-agent`)<br />Grok 4.1 Fast Reasoning (`grok-4-1-fast-reasoning`)<br />Grok 4.1 Fast (`grok-4-1-fast-non-reasoning`)<br />Grok Code Fast (`grok-code-fast-1`) |
| Tencent Hunyuan | `tencent-hunyuan` | Tencent Hy3 Preview (`hy3-preview`) |
| Xiaomi MiMo | `xiaomi` | MiMo V2.5 Pro (`mimo-v2.5-pro`)<br />MiMo V2 Pro (`mimo-v2-pro`)<br />MiMo V2.5 (`mimo-v2.5`)<br />MiMo V2 Omni (`mimo-v2-omni`)<br />MiMo V2 Flash (`mimo-v2-flash`) |
| Ollama | `ollama` | Llama 3.3 70B (`llama3.3`)<br />Gemma 3 12B (`gemma3`)<br />DeepSeek R1 (`deepseek-r1`) |
+7
View File
@@ -0,0 +1,7 @@
/**
* The docs site is a standalone Next app (`output: 'export'`). Next 16 still
* discovers the repo-root `instrumentation.ts` unless this package provides
* its own, and that file imports app persistence modules that do not exist
* here.
*/
export async function register(): Promise<void> {}
+13
View File
@@ -532,6 +532,18 @@ describe('OpenAI provider defaults', () => {
});
it('includes latest official Grok models with explicit output limits', () => {
expect(getProvider('grok')?.models[0]?.id).toBe('grok-4.6');
expect(getModelInfo('grok', 'grok-4.6')).toMatchObject({
id: 'grok-4.6',
name: 'Grok 4.6',
contextWindow: 500000,
outputWindow: 500000,
capabilities: {
streaming: true,
tools: true,
vision: true,
},
});
expect(getModelInfo('grok', 'grok-4.5')).toMatchObject({
id: 'grok-4.5',
contextWindow: 500000,
@@ -551,6 +563,7 @@ describe('OpenAI provider defaults', () => {
it.each([
['kimi', 'kimi-k3', { mode: 'enabled', effort: 'high' }, { reasoning_effort: 'high' }],
['grok', 'grok-4.6', { mode: 'enabled', effort: 'xhigh' }, { reasoning_effort: 'xhigh' }],
['grok', 'grok-4.5', { mode: 'enabled', effort: 'medium' }, { reasoning_effort: 'medium' }],
['grok', 'grok-4.3', { mode: 'disabled', effort: 'none' }, { reasoning_effort: 'none' }],
['kimi', 'kimi-k2.6', { mode: 'disabled' }, { thinking: { type: 'disabled' } }],
+22
View File
@@ -229,6 +229,28 @@ describe('thinking config normalization', () => {
});
});
it('models Grok 4.6 thinking as non-toggleable effort including xhigh', () => {
const thinking = getThinking('grok', 'grok-4.6');
expect(supportsConfigurableThinking(thinking)).toBe(true);
expect(thinking?.control).toBe('effort');
expect(thinking?.requestAdapter).toBe('openai');
expect(thinking?.toggleable).toBe(false);
expect(thinking?.effortValues).toEqual(['low', 'medium', 'high', 'xhigh']);
expect(getDefaultThinkingConfig(thinking)).toEqual({
mode: 'enabled',
effort: 'high',
});
expect(normalizeThinkingConfig(thinking, { mode: 'disabled' })).toEqual({
mode: 'enabled',
effort: 'low',
});
expect(normalizeThinkingConfig(thinking, { effort: 'xhigh' })).toEqual({
mode: 'enabled',
effort: 'xhigh',
});
});
it('normalizes DeepSeek V4 thinking as high/max effort levels', () => {
const thinking = getThinking('deepseek', 'deepseek-v4-pro');