use std::collections::HashMap;
use gate4agent::CliTool;
pub(super) const fn default_model_for(tool: CliTool) -> &'static str {
match tool {
CliTool::ClaudeCode => "claude-sonnet-4-6",
CliTool::Gemini => "gemini-2.5-pro",
CliTool::Codex | CliTool::OpenCode => "",
}
}
pub(super) const fn provider_name_for(tool: CliTool) -> &'static str {
match tool {
CliTool::ClaudeCode => "claude-cli",
CliTool::Codex => "codex-cli",
CliTool::Gemini => "gemini-cli",
CliTool::OpenCode => "opencode-cli",
}
}
pub(super) const fn binary_for(tool: CliTool) -> &'static str {
match tool {
CliTool::ClaudeCode => "claude",
CliTool::Codex => "codex",
CliTool::Gemini => "gemini",
CliTool::OpenCode => "opencode",
}
}
pub(super) const fn provider_display_label(tool: CliTool) -> &'static str {
match tool {
CliTool::ClaudeCode => "Claude Code",
CliTool::Codex => "Codex CLI",
CliTool::Gemini => "Gemini CLI",
CliTool::OpenCode => "OpenCode CLI",
}
}
pub(super) fn build_model_mapping(model: &str) -> HashMap<String, String> {
let mut mapping = HashMap::new();
mapping.insert("review".to_owned(), model.to_owned());
mapping.insert("default".to_owned(), model.to_owned());
mapping
}