diff --git a/cli/utils.py b/cli/utils.py index e492a92a..73f08243 100644 --- a/cli/utils.py +++ b/cli/utils.py @@ -232,10 +232,10 @@ def select_llm_provider() -> tuple[str, str | None]: """Select the LLM provider and its API endpoint.""" # (display_name, provider_key, base_url) PROVIDERS = [ + ("Claude Agent (Max subscription, no API key)", "claude_agent", None), ("OpenAI", "openai", "https://api.openai.com/v1"), ("Google", "google", None), ("Anthropic", "anthropic", "https://api.anthropic.com/"), - ("Claude Agent (Max subscription, no API key)", "claude_agent", None), ("xAI", "xai", "https://api.x.ai/v1"), ("DeepSeek", "deepseek", "https://api.deepseek.com"), ("Qwen", "qwen", "https://dashscope.aliyuncs.com/compatible-mode/v1"), diff --git a/tradingagents/llm_clients/model_catalog.py b/tradingagents/llm_clients/model_catalog.py index c268a921..20a009e5 100644 --- a/tradingagents/llm_clients/model_catalog.py +++ b/tradingagents/llm_clients/model_catalog.py @@ -37,13 +37,18 @@ MODEL_OPTIONS: ProviderModeOptions = { ], }, "claude_agent": { + # Values are the short aliases Claude Code accepts on the CLI + # (`claude --model sonnet`). They auto-track the latest version for + # each tier, so no dated model IDs to maintain here. "quick": [ - ("Claude Sonnet (via Claude Code, Max subscription)", "sonnet"), - ("Claude Haiku (via Claude Code, Max subscription)", "haiku"), + ("Claude Sonnet - Balanced speed and intelligence", "sonnet"), + ("Claude Haiku - Fastest, cheapest", "haiku"), + ("Claude Opus - Most capable (slower)", "opus"), ], "deep": [ - ("Claude Opus (via Claude Code, Max subscription)", "opus"), - ("Claude Sonnet (via Claude Code, Max subscription)", "sonnet"), + ("Claude Opus - Most intelligent, deepest reasoning", "opus"), + ("Claude Sonnet - Balanced speed and intelligence", "sonnet"), + ("Claude Haiku - Fastest (lower quality)", "haiku"), ], }, "google": {