feat(models): add GPT-6 Sol and Luna and Claude Opus 5.5

- gpt-6-sol and gpt-6-luna are the new default deep and quick models
- claude-opus-5-5 replaces claude-opus-5 in the picker; opus-5 and gpt-5.4-mini stay known as legacy IDs
This commit is contained in:
Yijia-Xiao
2026-09-24 05:00:36 +00:00
parent 8efb702871
commit f281feb483
7 changed files with 21 additions and 20 deletions
+2 -2
View File
@@ -79,8 +79,8 @@ DEFAULT_CONFIG = _apply_env_overrides({
"memory_log_max_entries": None,
# LLM settings
"llm_provider": "openai",
"deep_think_llm": "gpt-5.6",
"quick_think_llm": "gpt-5.6-luna",
"deep_think_llm": "gpt-6-sol",
"quick_think_llm": "gpt-6-luna",
# When None, each provider's client falls back to its own default endpoint
# (api.openai.com for OpenAI, generativelanguage.googleapis.com for Gemini, ...).
# The CLI overrides this per provider when the user picks one. Keeping a
@@ -12,7 +12,7 @@ _PASSTHROUGH_KWARGS = (
)
# Anthropic's extended-thinking ``effort`` parameter is accepted by Opus 4.5+,
# Sonnet 4.6+, and the Claude 5 family (Sonnet 5, Fable 5). Sonnet 4.5 and any
# Sonnet 4.6+, and the Claude 5 family (Sonnet 5, Opus 5.5, Fable 5). Sonnet 4.5 and any
# Haiku version 400 with ``"This model does not support the effort parameter"``
# (#831). Versions may be dotted (``opus-4-8``) or single-number (``sonnet-5``,
# ``fable-5``); the per-family minimum below is forward-compatible.
+9 -9
View File
@@ -96,16 +96,16 @@ _MINIMAX_MODELS: dict[str, list[ModelOption]] = {
MODEL_OPTIONS: ProviderModeOptions = {
"openai": {
"quick": [
("GPT-5.6 Luna - Fast, cost-efficient frontier", "gpt-5.6-luna"),
("GPT-6 Luna - Fast, high-volume and cost-efficient", "gpt-6-luna"),
("GPT-5.6 Luna - Previous-gen fast tier", "gpt-5.6-luna"),
("GPT-5.6 Terra - Balances intelligence and cost", "gpt-5.6-terra"),
("GPT-5.4 Mini - Fast, strong coding and tool use", "gpt-5.4-mini"),
("Custom model ID", "custom"),
],
"deep": [
("GPT-6 Astra - Latest frontier reasoning", "gpt-6-astra"),
("GPT-5.6 - Frontier reasoning (Sol)", "gpt-5.6"),
("GPT-5.6 Terra - Balances intelligence and cost", "gpt-5.6-terra"),
("GPT-5.5 - Previous-gen frontier, 1M context", "gpt-5.5"),
("GPT-6 Sol - Complex reasoning and analysis", "gpt-6-sol"),
("GPT-6 Astra - Hardest multi-step reasoning", "gpt-6-astra"),
("GPT-5.6 - Previous-gen reasoning (Sol)", "gpt-5.6"),
("GPT-5.5 - Earlier frontier, 1M context", "gpt-5.5"),
("Custom model ID", "custom"),
],
},
@@ -116,7 +116,7 @@ MODEL_OPTIONS: ProviderModeOptions = {
("Custom model ID", "custom"),
],
"deep": [
("Claude Opus 5 - Frontier agentic and enterprise work", "claude-opus-5"),
("Claude Opus 5.5 - Frontier agentic and enterprise work", "claude-opus-5-5"),
("Claude Fable 5.1 - Most capable, demanding long-horizon reasoning", "claude-fable-5-1"),
("Claude Sonnet 5 - Near-frontier intelligence at Sonnet cost", "claude-sonnet-5"),
("Custom model ID", "custom"),
@@ -233,12 +233,12 @@ def get_model_options(provider: str, mode: str) -> list[ModelOption]:
# menu, and the explicit ID of a model listed under a shorter name. Known to
# validation so a config naming one runs without an unknown-model warning.
LEGACY_MODELS: dict[str, list[str]] = {
"openai": ["gpt-5.4", "gpt-5.6-sol"],
"openai": ["gpt-5.4", "gpt-5.4-mini", "gpt-5.6-sol"],
"xai": ["grok-4.20-0309-reasoning", "grok-4.20-0309-non-reasoning",
"grok-4.20-multi-agent-0309"],
"deepseek": ["deepseek-v4-flash"],
"qwen": ["qwen3.7-max", "qwen3.7-plus", "qwen3.6-max", "qwen3.6-plus"],
"anthropic": ["claude-fable-5", "claude-opus-4-8", "claude-opus-4-7"],
"anthropic": ["claude-opus-5", "claude-fable-5", "claude-opus-4-8", "claude-opus-4-7"],
}