You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Only use exact model IDs listed in this file. Never guess or construct model IDs — incorrect IDs will cause API errors. Use aliases wherever available. For the latest information, WebFetch the Models Overview URL in shared/live-sources.md, or query the Models API directly (see Programmatic Model Discovery below).
Programmatic Model Discovery
For live capability data — context window, max output tokens, feature support (thinking, vision, effort, structured outputs, etc.) — query the Models API instead of relying on the cached tables below. Use this when the user asks "what's the context window for X", "does model X support vision/thinking/effort", "which models support feature Y", or wants to select a model by capability at runtime.
m=client.models.retrieve("claude-opus-4-6")
m.id# "claude-opus-4-6"m.display_name# "Claude Opus 4.6"m.max_input_tokens# context window (int)m.max_tokens# max output tokens (int)# capabilities is an untyped nested dict — bracket access, check ["supported"] at the leafcaps=m.capabilitiescaps["image_input"]["supported"] # visioncaps["thinking"]["types"]["adaptive"]["supported"] # adaptive thinkingcaps["effort"]["max"]["supported"] # effort: max (also low/medium/high)caps["structured_outputs"]["supported"]
caps["context_management"]["compact_20260112"]["supported"]
# filter across all models — iterate the page object directly (auto-paginates); do NOT use .data
[mforminclient.models.list()
ifm.capabilities["thinking"]["types"]["adaptive"]["supported"]
andm.max_input_tokens>=200_000]
Top-level fields (id, display_name, max_input_tokens, max_tokens) are typed attributes. capabilities is a dict — use bracket access, not attribute access. The API returns the full capability tree for every model with supported: true/false at each leaf, so bracket chains are safe without .get() guards. TypeScript SDK: same method names, also auto-paginates on iteration.
Claude Opus 4.6 — Our most intelligent model for building agents and coding. Supports adaptive thinking (recommended), 128K max output tokens (requires streaming for large outputs). 1M context window available in beta via context-1m-2025-08-07 header.
Claude Sonnet 4.6 — Our best combination of speed and intelligence. Supports adaptive thinking (recommended). 1M context window available in beta via context-1m-2025-08-07 header. 64K max output tokens.
Claude Haiku 4.5 — Fastest and most cost-effective model for simple tasks.
Legacy Models (still active)
Friendly Name
Alias (use this)
Full ID
Status
Claude Opus 4.5
claude-opus-4-5
claude-opus-4-5-20251101
Active
Claude Opus 4.1
claude-opus-4-1
claude-opus-4-1-20250805
Active
Claude Sonnet 4.5
claude-sonnet-4-5
claude-sonnet-4-5-20250929
Active
Claude Sonnet 4
claude-sonnet-4-0
claude-sonnet-4-20250514
Active
Claude Opus 4
claude-opus-4-0
claude-opus-4-20250514
Active
Deprecated Models (retiring soon)
Friendly Name
Alias (use this)
Full ID
Status
Retires
Claude Haiku 3
—
claude-3-haiku-20240307
Deprecated
Apr 19, 2026
Retired Models (no longer available)
Friendly Name
Full ID
Retired
Claude Sonnet 3.7
claude-3-7-sonnet-20250219
Feb 19, 2026
Claude Haiku 3.5
claude-3-5-haiku-20241022
Feb 19, 2026
Claude Opus 3
claude-3-opus-20240229
Jan 5, 2026
Claude Sonnet 3.5
claude-3-5-sonnet-20241022
Oct 28, 2025
Claude Sonnet 3.5
claude-3-5-sonnet-20240620
Oct 28, 2025
Claude Sonnet 3
claude-3-sonnet-20240229
Jul 21, 2025
Claude 2.1
claude-2.1
Jul 21, 2025
Claude 2.0
claude-2.0
Jul 21, 2025
Resolving User Requests
When a user asks for a model by name, use this table to find the correct model ID: