pub(super) fn model_settings_alias(name: &str) -> &str {
MODEL_SETTINGS_ALIASES
.iter()
.find_map(|(alias, canonical)| (*alias == name).then_some(*canonical))
.unwrap_or(name)
}
pub(super) fn model_config_alias(name: &str) -> &str {
MODEL_CONFIG_ALIASES
.iter()
.find_map(|(alias, canonical)| (*alias == name).then_some(*canonical))
.unwrap_or(name)
}
pub(super) const MODEL_SETTINGS_PRESETS: &[&str] = &[
"anthropic_default",
"anthropic_high",
"anthropic_medium",
"anthropic_low",
"anthropic_off",
"anthropic_adaptive_default",
"anthropic_adaptive_xhigh",
"anthropic_adaptive_high",
"anthropic_adaptive_medium",
"anthropic_adaptive_low",
"anthropic_adaptive_1m_default",
"anthropic_adaptive_1m_xhigh",
"anthropic_adaptive_1m_high",
"anthropic_adaptive_1m_medium",
"anthropic_adaptive_1m_low",
"anthropic_adaptive_cm_default",
"anthropic_adaptive_cm_xhigh",
"anthropic_adaptive_cm_high",
"anthropic_adaptive_cm_medium",
"anthropic_adaptive_cm_low",
"anthropic_adaptive_1m_cm_default",
"anthropic_adaptive_1m_cm_xhigh",
"anthropic_adaptive_1m_cm_high",
"anthropic_adaptive_1m_cm_medium",
"anthropic_adaptive_1m_cm_low",
"anthropic_default_interleaved_thinking",
"anthropic_high_interleaved_thinking",
"anthropic_medium_interleaved_thinking",
"anthropic_low_interleaved_thinking",
"anthropic_off_interleaved_thinking",
"anthropic_1m_default",
"anthropic_1m_high",
"anthropic_1m_medium",
"anthropic_1m_low",
"anthropic_1m_off",
"anthropic_1m_default_interleaved_thinking",
"anthropic_1m_high_interleaved_thinking",
"anthropic_1m_medium_interleaved_thinking",
"anthropic_1m_low_interleaved_thinking",
"anthropic_1m_off_interleaved_thinking",
"anthropic_cm_default",
"anthropic_cm_high",
"anthropic_cm_medium",
"anthropic_cm_low",
"anthropic_cm_off",
"anthropic_1m_cm_default",
"anthropic_1m_cm_high",
"anthropic_1m_cm_medium",
"anthropic_1m_cm_low",
"anthropic_1m_cm_off",
"anthropic_cm_default_interleaved_thinking",
"anthropic_cm_high_interleaved_thinking",
"anthropic_cm_medium_interleaved_thinking",
"anthropic_cm_low_interleaved_thinking",
"anthropic_cm_off_interleaved_thinking",
"anthropic_1m_cm_default_interleaved_thinking",
"anthropic_1m_cm_high_interleaved_thinking",
"anthropic_1m_cm_medium_interleaved_thinking",
"anthropic_1m_cm_low_interleaved_thinking",
"anthropic_1m_cm_off_interleaved_thinking",
"openai_default",
"openai_xhigh",
"openai_high",
"openai_medium",
"openai_low",
"openai_responses_default",
"openai_responses_xhigh",
"openai_responses_max",
"openai_responses_high",
"openai_responses_medium",
"openai_responses_low",
"openai_responses_pro",
"openai_responses_default_fast",
"openai_responses_xhigh_fast",
"openai_responses_max_fast",
"openai_responses_high_fast",
"openai_responses_medium_fast",
"openai_responses_low_fast",
"deepseek_v4_default",
"deepseek_v4_high",
"deepseek_v4_max",
"deepseek_v4_off",
"grok_4_5_default",
"grok_4_5_high",
"grok_4_5_medium",
"grok_4_5_low",
"mimo_v2_5",
"mimo_v2_5_pro",
"gemini_thinking_budget_default",
"gemini_thinking_budget_high",
"gemini_thinking_budget_medium",
"gemini_thinking_budget_low",
"gemini_thinking_level_default",
"gemini_thinking_level_high",
"gemini_thinking_level_medium",
"gemini_thinking_level_low",
"gemini_thinking_level_minimal",
];
pub(super) const MODEL_SETTINGS_ALIASES: &[(&str, &str)] = &[
("anthropic", "anthropic_default"),
("anthropic_adaptive", "anthropic_adaptive_default"),
("anthropic_adaptive_1m", "anthropic_adaptive_1m_default"),
("anthropic_adaptive_cm", "anthropic_adaptive_cm_default"),
(
"anthropic_adaptive_1m_cm",
"anthropic_adaptive_1m_cm_default",
),
(
"anthropic_interleaved",
"anthropic_default_interleaved_thinking",
),
("anthropic_1m", "anthropic_1m_default"),
(
"anthropic_1m_interleaved",
"anthropic_1m_default_interleaved_thinking",
),
("anthropic_cm", "anthropic_cm_default"),
("anthropic_1m_cm", "anthropic_1m_cm_default"),
(
"anthropic_cm_interleaved",
"anthropic_cm_default_interleaved_thinking",
),
(
"anthropic_1m_cm_interleaved",
"anthropic_1m_cm_default_interleaved_thinking",
),
("openai", "openai_default"),
("openai_responses", "openai_responses_default"),
("deepseek", "deepseek_v4_default"),
("deepseek_v4", "deepseek_v4_default"),
("grok", "grok_4_5_default"),
("grok-4.5", "grok_4_5_default"),
("grok-4-5", "grok_4_5_default"),
("grok_4.5", "grok_4_5_default"),
("grok_4_5", "grok_4_5_default"),
("xai", "grok_4_5_default"),
("mimo", "mimo_v2_5_pro"),
("mimo_v2.5", "mimo_v2_5"),
("mimo_v2.5_pro", "mimo_v2_5_pro"),
("gemini_2.5", "gemini_thinking_budget_default"),
("gemini_3", "gemini_thinking_level_default"),
("gemini", "gemini_thinking_level_default"),
("high", "anthropic_high"),
("medium", "anthropic_medium"),
("low", "anthropic_low"),
];
pub(super) const MODEL_CONFIG_PRESETS: &[&str] = &[
"claude_200k",
"claude_400k",
"claude_1m",
"gpt5_270k",
"gpt5_350k",
"gpt5_1m",
"deepseek_v4_400k",
"deepseek_v4_1m",
"grok_4_5_500k",
"mimo_v2_5_1m",
"mimo_v2_5_pro_1m",
"gemini_200k",
"gemini_1m",
];
pub(super) const MODEL_CONFIG_ALIASES: &[(&str, &str)] = &[
("claude", "claude_1m"),
("anthropic", "claude_1m"),
("anthropic_400k", "claude_400k"),
("gpt5", "gpt5_270k"),
("openai", "gpt5_270k"),
("deepseek", "deepseek_v4_1m"),
("deepseek_400k", "deepseek_v4_400k"),
("deepseek_v4", "deepseek_v4_1m"),
("grok", "grok_4_5_500k"),
("grok-4.5", "grok_4_5_500k"),
("grok-4-5", "grok_4_5_500k"),
("grok_4.5", "grok_4_5_500k"),
("grok_4_5", "grok_4_5_500k"),
("xai", "grok_4_5_500k"),
("mimo", "mimo_v2_5_pro_1m"),
("mimo_v2.5", "mimo_v2_5_1m"),
("mimo_v2.5_pro", "mimo_v2_5_pro_1m"),
("mimo_v2_5", "mimo_v2_5_1m"),
("mimo_v2_5_pro", "mimo_v2_5_pro_1m"),
("gemini", "gemini_200k"),
];