KRouter setup for Codex
Use one KRouter API key with Codex, keep the provider label as KRouter, and load a model catalog that exposes Sol, Terra, Luna, and fallback models.
Desktop config
Put the model catalog in ~/.codex/krouter-models.json on macOS/Linux or %USERPROFILE%\\.codex\\krouter-models.json on Windows, then paste the matching config into the local Codex config file.
1. Download catalog
https://router.bkuteam.site/krouter-codex/models.json2. Config paths
macOS/Linux: ~/.codex/config.toml
Windows: %USERPROFILE%\.codex\config.toml
3. Restart Codex
Run codex debug models after restart to verify that Sol is visible.
model_catalog_json = "~/.codex/krouter-models.json" model_provider = "krouter" model = "cx/gpt-5.6-sol" model_reasoning_effort = "medium" approvals_reviewer = "user" approval_policy = "never" sandbox_mode = "danger-full-access" wire_api = "responses" [model_providers.krouter] name = "KRouter" base_url = "https://router.bkuteam.site/v1" experimental_bearer_token = "PASTE_KROUTER_API_KEY_HERE"
model_catalog_json = "%USERPROFILE%\\.codex\\krouter-models.json" model_provider = "krouter" model = "cx/gpt-5.6-sol" model_reasoning_effort = "medium" approvals_reviewer = "user" approval_policy = "never" sandbox_mode = "danger-full-access" wire_api = "responses" [model_providers.krouter] name = "KRouter" base_url = "https://router.bkuteam.site/v1" experimental_bearer_token = "PASTE_KROUTER_API_KEY_HERE"
Copy-ready files
# macOS / Linux: model_catalog_json = "~/.codex/krouter-models.json" # Windows: # model_catalog_json = "%USERPROFILE%\\.codex\\krouter-models.json" model_provider = "krouter" model = "cx/gpt-5.6-sol" model_reasoning_effort = "medium" approvals_reviewer = "user" approval_policy = "never" sandbox_mode = "danger-full-access" wire_api = "responses" [model_providers.krouter] name = "KRouter" base_url = "https://router.bkuteam.site/v1" experimental_bearer_token = "PASTE_KROUTER_API_KEY_HERE"
{
"models": [
{
"slug": "cx/gpt-5.6-sol",
"display_name": "GPT-5.6-Sol",
"description": "Highest quality Codex model through KRouter.",
"default_reasoning_level": "medium",
"supported_reasoning_levels": [
{ "effort": "low", "description": "Fast responses with lighter reasoning" },
{ "effort": "medium", "description": "Balances speed and reasoning depth for everyday tasks" },
{ "effort": "high", "description": "Greater reasoning depth for complex work" },
{ "effort": "xhigh", "description": "Extra high reasoning depth for complex work" },
{ "effort": "max", "description": "Maximum reasoning depth for the hardest tasks" },
{ "effort": "ultra", "description": "Maximum reasoning with automatic task delegation" }
],
"shell_type": "shell_command",
"visibility": "list",
"supported_in_api": true,
"priority": 1,
"context_window": 272000,
"base_instructions": "",
"support_verbosity": true,
"truncation_policy": { "mode": "tokens", "limit": 272000 },
"supports_parallel_tool_calls": true,
"experimental_supported_tools": [],
"input_modalities": ["text", "image"],
"supports_search_tool": true,
"include_skills_usage_instructions": true,
"use_responses_lite": true
},
{
"slug": "cx/gpt-5.6-terra",
"display_name": "GPT-5.6-Terra",
"description": "Balanced everyday Codex model through KRouter.",
"default_reasoning_level": "medium",
"supported_reasoning_levels": [
{ "effort": "low", "description": "Fast responses with lighter reasoning" },
{ "effort": "medium", "description": "Balances speed and reasoning depth for everyday tasks" },
{ "effort": "high", "description": "Greater reasoning depth for complex work" },
{ "effort": "xhigh", "description": "Extra high reasoning depth for complex work" },
{ "effort": "max", "description": "Maximum reasoning depth for the hardest tasks" },
{ "effort": "ultra", "description": "Maximum reasoning with automatic task delegation" }
],
"shell_type": "shell_command",
"visibility": "list",
"supported_in_api": true,
"priority": 2,
"context_window": 272000,
"base_instructions": "",
"support_verbosity": true,
"truncation_policy": { "mode": "tokens", "limit": 272000 },
"supports_parallel_tool_calls": true,
"experimental_supported_tools": [],
"input_modalities": ["text", "image"],
"supports_search_tool": true,
"include_skills_usage_instructions": true,
"use_responses_lite": true
},
{
"slug": "cx/gpt-5.6-luna",
"display_name": "GPT-5.6-Luna",
"description": "Fast repeatable-task Codex model through KRouter.",
"default_reasoning_level": "medium",
"supported_reasoning_levels": [
{ "effort": "low", "description": "Fast responses with lighter reasoning" },
{ "effort": "medium", "description": "Balances speed and reasoning depth for everyday tasks" },
{ "effort": "high", "description": "Greater reasoning depth for complex work" },
{ "effort": "xhigh", "description": "Extra high reasoning depth for complex work" },
{ "effort": "max", "description": "Maximum reasoning depth for the hardest tasks" }
],
"shell_type": "shell_command",
"visibility": "list",
"supported_in_api": true,
"priority": 3,
"context_window": 272000,
"base_instructions": "",
"support_verbosity": true,
"truncation_policy": { "mode": "tokens", "limit": 272000 },
"supports_parallel_tool_calls": true,
"experimental_supported_tools": [],
"input_modalities": ["text", "image"],
"supports_search_tool": true,
"include_skills_usage_instructions": true,
"use_responses_lite": true
},
{
"slug": "cx/gpt-5.6-sol-review",
"display_name": "GPT-5.6-Sol Review",
"description": "Review-focused Sol variant through KRouter.",
"default_reasoning_level": "high",
"supported_reasoning_levels": [
{ "effort": "medium", "description": "Balanced review quality" },
{ "effort": "high", "description": "Stronger reasoning for code review" },
{ "effort": "xhigh", "description": "Deep review and analysis" },
{ "effort": "max", "description": "Maximum review depth" }
],
"shell_type": "shell_command",
"visibility": "list",
"supported_in_api": true,
"priority": 4,
"context_window": 272000,
"base_instructions": "",
"support_verbosity": true,
"truncation_policy": { "mode": "tokens", "limit": 272000 },
"supports_parallel_tool_calls": true,
"experimental_supported_tools": [],
"input_modalities": ["text", "image"],
"supports_search_tool": true,
"include_skills_usage_instructions": true,
"use_responses_lite": true
},
{
"slug": "cx/gpt-5.5",
"display_name": "GPT-5.5",
"description": "Stable legacy Codex model through KRouter.",
"default_reasoning_level": "medium",
"supported_reasoning_levels": [
{ "effort": "low", "description": "Fast responses with lighter reasoning" },
{ "effort": "medium", "description": "Balances speed and reasoning depth for everyday tasks" },
{ "effort": "high", "description": "Greater reasoning depth for complex work" },
{ "effort": "xhigh", "description": "Extra high reasoning depth for complex work" }
],
"shell_type": "shell_command",
"visibility": "list",
"supported_in_api": true,
"priority": 4,
"context_window": 272000,
"base_instructions": "",
"support_verbosity": true,
"truncation_policy": { "mode": "tokens", "limit": 272000 },
"supports_parallel_tool_calls": true,
"experimental_supported_tools": [],
"input_modalities": ["text", "image"],
"supports_search_tool": true,
"include_skills_usage_instructions": true,
"use_responses_lite": false
},
{
"slug": "cx/gpt-5.4",
"display_name": "GPT-5.4",
"description": "Stable general-purpose Codex model through KRouter.",
"default_reasoning_level": "medium",
"supported_reasoning_levels": [
{ "effort": "low", "description": "Fast responses with lighter reasoning" },
{ "effort": "medium", "description": "Balanced reasoning" },
{ "effort": "high", "description": "Deeper reasoning for hard tasks" },
{ "effort": "xhigh", "description": "Maximum depth" }
],
"shell_type": "shell_command",
"visibility": "list",
"supported_in_api": true,
"priority": 6,
"context_window": 272000,
"base_instructions": "",
"support_verbosity": true,
"truncation_policy": { "mode": "tokens", "limit": 272000 },
"supports_parallel_tool_calls": true,
"experimental_supported_tools": [],
"input_modalities": ["text", "image"],
"supports_search_tool": true,
"include_skills_usage_instructions": true,
"use_responses_lite": false
},
{
"slug": "cx/gpt-5.4-mini",
"display_name": "GPT-5.4-Mini",
"description": "Lightweight fallback Codex model through KRouter.",
"default_reasoning_level": "medium",
"supported_reasoning_levels": [
{ "effort": "low", "description": "Fast responses with lighter reasoning" },
{ "effort": "medium", "description": "Balances speed and reasoning depth for everyday tasks" },
{ "effort": "high", "description": "Greater reasoning depth for complex work" },
{ "effort": "xhigh", "description": "Extra high reasoning depth for complex work" }
],
"shell_type": "shell_command",
"visibility": "list",
"supported_in_api": true,
"priority": 5,
"context_window": 272000,
"base_instructions": "",
"support_verbosity": true,
"truncation_policy": { "mode": "tokens", "limit": 272000 },
"supports_parallel_tool_calls": true,
"experimental_supported_tools": [],
"input_modalities": ["text", "image"],
"supports_search_tool": true,
"include_skills_usage_instructions": true,
"use_responses_lite": false
},
{
"slug": "cx/gpt-5.3-codex-spark",
"display_name": "GPT-5.3 Codex Spark",
"description": "Legacy fast Codex model through KRouter.",
"default_reasoning_level": "low",
"supported_reasoning_levels": [
{ "effort": "low", "description": "Fast responses" },
{ "effort": "medium", "description": "Balanced responses" },
{ "effort": "high", "description": "More depth" }
],
"shell_type": "shell_command",
"visibility": "list",
"supported_in_api": true,
"priority": 7,
"context_window": 128000,
"base_instructions": "",
"support_verbosity": true,
"truncation_policy": { "mode": "tokens", "limit": 128000 },
"supports_parallel_tool_calls": true,
"experimental_supported_tools": [],
"input_modalities": ["text", "image"],
"supports_search_tool": true,
"include_skills_usage_instructions": true,
"use_responses_lite": false
}
]
}
Model catalog
cx/gpt-5.6-solBest quality, complex builds, design polish
cx/gpt-5.6-terraBalanced daily coding
cx/gpt-5.6-lunaFast repeatable tasks
cx/gpt-5.5Stable fallback
cx/gpt-5.4General-purpose fallback
cx/gpt-5.4-miniLightweight fallback
Plugins, skills, MCP servers, browser tools, and connector access are loaded by Codex on the client machine. KRouter only supplies the model endpoint, API key authentication, routing, and quota logging.