Skip to content

Model Selection

Hosted providers (Gemini, Codex, Claude, Antigravity) auto-select a sensible default model with automatic fallback on provider-specific conditions — quota/rate-limit exhaustion, and for Antigravity also a rejected shipped model slug (see the table below). Ollama runs locally and uses exactly the model you pull; it never substitutes another. Most users should never override the model parameter; the defaults are tuned for quality.

Defaults & Fallbacks

gpt-5.6-solquota / rate limitgpt-5.6-terra
When the default model hits quota, the executor retries once on the fallback and reports the actual model used in the response.
ProviderDefaultFallbackTrigger
Geminigemini-3.1-pro-previewgemini-3.6-flashRESOURCE_EXHAUSTED quota error or "exhausted your capacity" pattern
Codexgpt-5.6-solgpt-5.6-terraQuota errors (rate_limit_exceeded, 429, insufficient_quota)
ClaudeopussonnetClaude Code native fallback when Opus is overloaded or unavailable
Antigravitygemini-3.1-pro (--effort high)gemini-3.5-flash; one model-less retry when agy rejects a model whose value equals gemini-3.1-pro or gemini-3.5-flash (reported as agy default). Both retain the effective effort (high, or the ASK_ANTIGRAVITY_EFFORT override)Subscription rate limit; model-unavailable (shipped slug values only — other rejected models fail actionably)
Ollamaqwen3.6:27bnoneLocal, no fallback; a missing model returns a clear ollama pull error

For Gemini, Codex, Claude, and Antigravity, fallback is automatic. Gemini, Codex, and Claude expose the actual model and usage.fellBack in structured output; Antigravity reports the model through the top-level model field only (it returns no usage statistics) — gemini-3.5-flash after a rate-limit fallback, or the literal agy default after a model-less recovery (agy does not reveal which model it picked). Ollama never falls back, so its fellBack is always false.

Codex uses medium reasoning effort for ordinary calls to preserve the previous default behavior. The quality-first /codex-review and /brainstorm skills use high. Direct ask-codex calls can override this with reasoningEffort (low, medium, high, xhigh, or max).

Choosing a Provider

Different providers excel at different things. Pick by what you're doing, not by which is "best":

TaskSuggested providerWhy
Targeted code reasoning, refactor critiqueCodexGPT-5.6 Sol is the flagship agentic coding model; Terra keeps the fallback balanced
Claude second opinion while working in CodexClaudeOpus review through Claude Code CLI, with native session continuation and read-only file access
Private / air-gapped analysisOllamaRuns locally, nothing leaves your machine
Subscription-backed second opinion, larger contextAntigravityagy via your Google AI Pro/Ultra plan, the Gemini CLI successor
Whole-codebase review (enterprise seats)Gemini1M+ token context fits what others can't (enterprise-gated from 2026-06-18)
"What do they all think?" comparisonMulti-LLM (multi-llm tool or /compare skill)Parallel dispatch, see all responses side-by-side
Code review with verified findings/multi-review skillAntigravity + Codex in parallel, then verifies each finding against source

Overriding the Model

Pass model explicitly when you have a reason to:

text
Use ask-llm with provider gemini and model gemini-3.6-flash to quickly check this CSS file

Or programmatically:

json
{ "name": "ask-llm", "arguments": { "provider": "gemini", "model": "gemini-3.6-flash", "prompt": "..." } }

For Codex, common overrides:

text
Use ask-codex with model gpt-5.6-terra to summarize this commit

For Ollama, you can request any model you've pulled:

bash
ollama pull deepseek-coder:6.7b
text
Use ask-ollama with model deepseek-coder:6.7b to review this implementation

For Antigravity, ask-antigravity requires agy ≥1.1.5 and has no per-call model argument — configure it via env vars:

  • ASK_ANTIGRAVITY_MODEL — an agy model slug from agy models (e.g. claude-sonnet-4-6). Legacy effort-carrying display strings like Gemini 3.1 Pro (High) still resolve for backward compatibility.
  • ASK_ANTIGRAVITY_EFFORT — reasoning effort, low | medium | high (default high). Invalid values log a warning and fall back to the default behavior. Note agy limits tiers per model (gemini-3.1-pro has no medium), and effort-carrying model names reject --effort entirely — so the default effort is only sent with the shipped base slugs and model-less recovery runs, while an explicitly set value is always sent.

Token Limits & Cost

ProviderContext windowCost model
Gemini Pro~1M tokens (~250k LOC)Gemini Code Assist Standard/Enterprise seat (from 2026-06-18)
Gemini Flash~1M tokensCheaper than Pro; fallback target for quota relief
Codex GPT-5.6 SolPer OpenAI's published context windowPer OpenAI billing
Codex GPT-5.6 TerraPer OpenAI's published context windowBalanced fallback target
OllamaPer model (e.g., 256k for qwen3.6)Free, runs locally

Track What You're Spending

Token usage is exposed live via:

  • Per-call: result.structuredContent.usage on ask-* tool responses (provider, model, inputTokens, outputTokens, cachedTokens, thinkingTokens, durationMs, fellBack) — except ask-antigravity, which reports only the top-level model field (agy exposes no token counts)
  • Per-session aggregate: call the get-usage-stats MCP tool, or read the usage://current-session MCP Resource for a JSON snapshot
  • In the REPL: type /usage for a markdown-formatted breakdown

This is in-memory only; no persistence to disk, resets when the MCP server restarts.

Recommendations by Use Case

  • General code review → defaults are correct; let the fallback chain handle quota
  • Whole-codebase analysisask-gemini (Pro) if you have an enterprise seat, otherwise ask-antigravity for large-context reads without per-token billing
  • Quick fixes, fast iteration → request Flash or gpt-5.6-terra explicitly to skip the flagship→fallback round-trip
  • Privacy-sensitive codeask-ollama, never leaves your machine
  • Multi-perspective debatemulti-llm or /brainstorm skill; Claude weighs verified vs inferred

Released under the MIT License.