consultation
Analyze files with an LLM - provide absolute file paths, query, model, and mode.
STATELESS: Each call must contain complete absolute paths. No context is remembered.
TIPS:
- Hard questions: Spawn 3 parallel calls with varied query formulations
- Long instructions: Put them in a file, include in files list, keep query short
- WARNING: a query that is BOTH long AND densely packed with special/math characters (< > | & =, parens, LaTeX) can make the call fail with a misleading "'model' is a required property" error (trailing fields dropped). Put bulk/symbolic detail in a file and keep query short and prose-only.
Quick mnemonics:
- gptt = openai/gpt-5.6-sol + think (latest GPT, deep reasoning)
- gemt = google/gemini-3.1-pro-preview + think (Gemini 3.1 Pro, flagship reasoning)
- grot = x-ai/grok-4.20 + think (Grok 4.20, deep reasoning)
- oput = anthropic/claude-opus-4.8 + think (Claude Opus, adaptive thinking)
- opuf = anthropic/claude-opus-4.8 + fast (Claude Opus, no reasoning)
- fabt = anthropic/claude-fable-5 + think (Claude Fable, deepest reasoning [effort xhigh]; premium, hard problems only)
- fabm = anthropic/claude-fable-5 + mid (Claude Fable, high-effort reasoning; premium)
- gemf = google/gemini-3-flash-preview + fast (Gemini 3 Flash, ultra fast)
- ULTRA = call GEMT, GPTT, GROT, and OPUT IN PARALLEL (4 frontier models for maximum insight)
- FUSE = openrouter/fusion (one call: a frontier panel deliberates, a judge synthesizes; mode sets web-research depth). 128K context cap — for hard questions, not giant bundles
Performance Modes (use 'mode' parameter):
- fast: No reasoning, fastest
- mid: Moderate reasoning
- think: Maximum reasoning for deepest analysis
TIMEOUT TIP: If 'think' times out, retry with 'mid' (especially GPT-5.6). For FUSION this won't help (the cost is the panel of models, not reasoning depth) — instead retry with a single model (e.g. openai/gpt-5.6-sol, google/gemini-3.1-pro-preview) or split the question. On timeout consult7 returns the partial output with a [TRUNCATED] marker rather than discarding it.
Files: Absolute paths, wildcards only in filenames (e.g., /path/*.py not /*/path/*.py) Ignores: __pycache__, .env, secrets.py, .DS_Store, .git, node_modules Limits: Dynamic per model - each model optimized for its full context capacity