Files
dotfiles/common/opencode/work.json
T
connorandClaude Opus 5 4e3a0d6ccc opencode: context limits from vendor docs, not inherited guesses
Checked every hosted entry against published documentation 2026-09-21. There
were errors in BOTH directions, and the overstatements are the dangerous
half -- an understated limit wastes tokens, an overstated one is a hard API
rejection partway through a session.

  anthropic/claude-haiku-4-5   1,000,000 ->   200,000   OVERSTATED 5x
  openai/gpt-5.6-sol             200,000 -> 1,050,000
  openai/gpt-5.5                 200,000 -> 1,050,000
  openai/gpt-5.4                 200,000 -> 1,050,000
  openai/gpt-5.4-mini            200,000 -> 1,050,000
  chatgpt/* (4 aliases)          272,000 -> 1,050,000
  agent/*-gpt-5.x (11 aliases)   272,000 -> 1,050,000
  agent/*-glm-5.3 (4 aliases)    150,000 ->   200,000   deliberate cap
  anthropic/claude-{opus,sonnet}-5           unchanged, already correct

Haiku is the one that mattered. Opus 5 and Sonnet 5 really are 1M, the whole
Anthropic block was set to 1M, and Haiku inherited a limit five times its
real 200k. Opencode would have grown a session past the ceiling and the API
would have refused it.

⚠ glm-5.3 is capped at 200,000 BY CHOICE. Its real maximum is 1M. GLM bills
per input token and cost on this stack tracks context size and cache-read
volume more than model choice, so the cap is budget control, not ignorance.
Do not "correct" it upward against the docs. This is the one place where a
declared limit below the vendor maximum is intentional.

⚠ chatgpt/* now carries the API's 1,050,000, but OpenAI does not publish a
context limit for ChatGPT-plan routing and it has historically been far
below the API's. This is deliberately optimistic and being watched for a
crash; if long sessions start failing, that is the first thing to lower.

Left alone for want of evidence, not because they are right:
openai/gpt-5.3-codex (200,000), agent/librarian-glm-5.3-flash (128,000),
agent/sisyphus-junior-glm-5.3-flash (150,000). Raising an unconfirmed limit
risks the Haiku failure mode, so these stay until measured.

Unrelated but found while checking: LiteLLM declares kimi/kimi-k2.7-code at
272,000 against a published 262,144. Overstated by ~10k.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E9UH1zGZZtA9yhohmQrcT6
2026-09-21 22:01:33 -04:00

377 lines
9.4 KiB
JSON

{
"$schema": "https://opencode.ai/config.json",
"provider": {
"litellm": {
"npm": "@ai-sdk/openai-compatible",
"name": "LiteLLM \u00b7 WORK",
"options": {
"baseURL": "{env:LITELLM_BASE}/v1",
"apiKey": "{env:LITELLM_KEY}"
},
"models": {
"gpt-oss-20b": {
"name": "gpt-oss-20b (local, resident)",
"limit": {
"context": 65536,
"output": 8192
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"qwen3-coder-30b": {
"name": "qwen3-coder-30b (local, on demand)",
"limit": {
"context": 32768,
"output": 8192
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"gemma3-12b": {
"name": "gemma3-12b (local, on demand)",
"limit": {
"context": 32768,
"output": 8192
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"local/librarian": {
"name": "Librarian - local gpt-oss",
"limit": {
"context": 65536,
"output": 4096
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"local/explore": {
"name": "Explore - local gpt-oss",
"limit": {
"context": 65536,
"output": 4096
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"chatgpt/gpt-5.6-sol": {
"name": "gpt-5.6-sol (ChatGPT Plus, flat fee)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"chatgpt/gpt-5.6-terra": {
"name": "gpt-5.6-terra (ChatGPT Plus, flat fee)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"chatgpt/gpt-5.6-luna": {
"name": "gpt-5.6-luna (ChatGPT Plus, flat fee)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"chatgpt/gpt-5.5": {
"name": "gpt-5.5 (ChatGPT Plus, flat fee)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 0.0,
"output": 0.0,
"cache_read": 0.0,
"cache_write": 0.0
}
},
"openai/gpt-5.6-sol": {
"name": "gpt-5.6-sol (OpenAI direct)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 4.0,
"output": 20.0,
"cache_read": 0.4,
"cache_write": 5.0
}
},
"openai/gpt-5.5": {
"name": "gpt-5.5 (OpenAI direct)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 5.0,
"output": 30.0,
"cache_read": 0.5,
"cache_write": 0.0
}
},
"openai/gpt-5.4": {
"name": "gpt-5.4 (OpenAI direct)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 2.5,
"output": 15.0,
"cache_read": 0.25,
"cache_write": 0.0
}
},
"openai/gpt-5.4-mini": {
"name": "gpt-5.4-mini (OpenAI direct)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 0.75,
"output": 4.5,
"cache_read": 0.075,
"cache_write": 0.0
}
},
"openai/gpt-5.3-codex": {
"name": "gpt-5.3-codex (OpenAI direct)",
"limit": {
"context": 200000,
"output": 64000
},
"cost": {
"input": 1.75,
"output": 14.0,
"cache_read": 0.175,
"cache_write": 0.0
}
},
"agent/librarian-gpt-5.6-luna": {
"name": "librarian -> local/librarian",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 0.0,
"output": 32000.0,
"cache_read": 0.0,
"cache_write": 0.0
},
"id": "work/librarian"
},
"agent/explore-gpt-5.6-luna": {
"name": "explore -> local/explore",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 0.0,
"output": 32000.0,
"cache_read": 0.0,
"cache_write": 0.0
},
"id": "work/explore"
},
"agent/oracle-gpt-5.5": {
"name": "oracle -> work/oracle",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 2.5,
"output": 64000.0,
"cache_read": 0.25,
"cache_write": 0.0
},
"id": "work/oracle"
},
"agent/looker-gpt-5.5": {
"name": "looker -> work/looker",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 2.5,
"output": 64000.0,
"cache_read": 0.25,
"cache_write": 0.0
},
"id": "work/looker"
},
"agent/momus-gpt-5.5": {
"name": "momus -> work/momus",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 2.5,
"output": 64000.0,
"cache_read": 0.25,
"cache_write": 0.0
},
"id": "work/momus"
},
"agent/sisyphus-junior-gpt-5.6-luna": {
"name": "sisyphus-junior -> work/sisyphus-junior",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 2.5,
"output": 32000.0,
"cache_read": 0.25,
"cache_write": 0.0
},
"id": "work/sisyphus-junior"
},
"agent/gpt-5.6-sol-hephaestus": {
"name": "hephaestus -> work/hephaestus",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 1.75,
"output": 64000.0,
"cache_read": 0.175,
"cache_write": 0.0
},
"id": "work/hephaestus"
},
"agent/atlas-gpt-5.5": {
"name": "atlas -> work/atlas (gpt-5.4)",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 2.5,
"output": 64000.0,
"cache_read": 0.25,
"cache_write": 0.0
},
"id": "work/atlas"
},
"agent/prometheus-gpt-5.6-sol": {
"name": "prometheus -> work/prometheus",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 4.0,
"output": 64000.0,
"cache_read": 0.4,
"cache_write": 5.0
},
"id": "work/prometheus"
},
"agent/sisyphus-gpt-5.6-sol": {
"name": "sisyphus -> work/sisyphus",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 4.0,
"output": 64000.0,
"cache_read": 0.4,
"cache_write": 5.0
},
"id": "work/sisyphus"
},
"agent/metis-gpt-5.5": {
"name": "metis -> work/metis",
"limit": {
"context": 1050000,
"output": 128000
},
"cost": {
"input": 2.5,
"output": 64000.0,
"cache_read": 0.25,
"cache_write": 0.0
},
"id": "work/metis"
}
}
}
},
"enabled_providers": [
"litellm"
],
"model": "litellm/agent/atlas-gpt-5.5",
"small_model": "litellm/local/librarian",
"plugin": [
"oh-my-openagent"
],
"agent": {
"dev": {
"model": "litellm/chatgpt/gpt-5.6-terra"
},
"architect": {
"model": "litellm/chatgpt/gpt-5.6-terra"
},
"review": {
"model": "litellm/chatgpt/gpt-5.6-terra"
},
"duck": {
"model": "litellm/chatgpt/gpt-5.6-terra"
},
"brainstorm": {
"model": "litellm/chatgpt/gpt-5.6-terra"
}
}
}