Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 53 additions & 2 deletions apps/server/src/provider/model-manifest.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"version": 1,
"updatedAt": "2026-09-12T00:41:55Z",
"updatedAt": "2026-09-22T17:51:55Z",
"currentModels": {
"codex": [
"gpt-6-astra",
Expand All @@ -10,7 +10,7 @@
"gpt-daybreak-blue-latest",
"gpt-daybreak-red-latest"
],
"claudeAgent": ["claude-fable-5-1", "claude-opus-5", "claude-sonnet-5"],
"claudeAgent": ["claude-fable-5-1", "claude-opus-5-5", "claude-opus-5", "claude-sonnet-5"],
"antigravity": ["gemini-3.8-flash-high", "gemini-3.8-flash-medium", "gemini-3.8-flash-low"]
},
"providers": {
Expand Down Expand Up @@ -96,6 +96,48 @@
}
}
},
"opus-5-5": {
"capabilities": {
"optionDescriptors": [
{
"id": "effort",
"label": "Reasoning",
"type": "select",
"options": [
{ "id": "low", "label": "Low" },
{ "id": "medium", "label": "Medium", "isDefault": true },
{ "id": "high", "label": "High" },
{ "id": "xhigh", "label": "Extra High" },
{ "id": "max", "label": "Max" },
{
"id": "ultracode",
"label": "Ultracode",
"description": "xhigh effort plus multi-agent workflow orchestration"
},
{ "id": "ultrathink", "label": "Ultrathink" }
],
"promptInjectedValues": ["ultrathink"]
},
{ "id": "fastMode", "label": "Fast Mode", "type": "boolean" },
{
"id": "contextWindow",
"label": "Context Window",
"type": "select",
"options": [
{ "id": "200k", "label": "200k" },
{ "id": "1m", "label": "1M", "isDefault": true }
]
}
]
},
"adapter": {
"claudeCode": {
"effortMap": { "ultracode": "xhigh", "ultrathink": null },
"modelSuffixes": { "contextWindow": { "1m": "[1m]" } },
"contextWindowTokens": { "200k": 200000, "1m": 1000000 }
}
}
},
"opus-5": {
"capabilities": {
"optionDescriptors": [
Expand Down Expand Up @@ -554,6 +596,15 @@
}
},
"models": [
{
"slug": "claude-opus-5-5",
"name": "Claude Opus 5.5",
"aliases": ["opus-5.5", "claude-opus-5.5"],
"status": "current",
"badge": "new",
"profile": "opus-5-5",
"adapter": { "claudeCode": { "minVersion": "2.1.280" } }
},
{
"slug": "claude-fable-5-1",
"name": "Claude Fable 5.1",
Expand Down
8 changes: 5 additions & 3 deletions docs/internals/model-manifest.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,11 @@ built-in catalog. Adding a model with an existing capability profile is a JSON
edit; a new profile is needed only for a new capability combination. Codex still
gets its model list from its app server.

`currentModels.claudeAgent` is frozen for releases that predate catalog discovery.
Do not extend it when adding Claude models. Codex uses `currentModels.codex` as a
legacy-classification overlay for discovered models.
`currentModels.claudeAgent` is the current-model classification overlay for
releases that predate catalog discovery; it does not add models to their catalogs.
Catalog-aware releases use `providers.claudeAgent.models[].status` instead.
Codex uses `currentModels.codex` as a legacy-classification overlay for discovered
models.

Model data is schema-validated configuration. Tests should cover resolver, cache,
and adapter semantics with synthetic model names, so adding a model never requires
Expand Down
Loading