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
5 changes: 1 addition & 4 deletions docs-site/src/content/docs/fr/guides/opencode.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,10 +131,7 @@ Rien à annuler — aucun fichier de configuration généré n'est écrit sous `
`limit.context` n’est écrit que lorsque le catalogue fournit une fenêtre de contexte faisant autorité. Dans le cas
contraire, le bloc `limit` entier est omis et opencode conserve ses propres valeurs par défaut.

Le schéma d’opencode rejette un bloc `limit` qui contient `context` sans `output`. Comme le catalogue ne fournit
aucune limite de sortie faisant autorité par modèle, opencodex émet également un budget `output` de `32000`, limité
à la fenêtre de contexte afin qu’un modèle à petit contexte ne reçoive jamais `output > context`. Cette valeur sert
uniquement à satisfaire le schéma ; elle ne prétend pas représenter la véritable limite d’un modèle particulier.
La limite de sortie utilise le maximum connu du modèle dans le catalogue ou les métadonnées générées. La valeur `32000` ne sert que de repli si cette limite est inconnue. La limite est toujours plafonnée à la fenêtre de contexte, et les limites connues inférieures à `32000` sont conservées.

Le bloc fournisseur `opencodex` est régénéré à chaque lancement, donc des ajustements par modèle y sont apportés
ne survivra pas. Conservez plutôt les entrées personnalisées sous votre propre clé de fournisseur.
Expand Down
6 changes: 2 additions & 4 deletions docs-site/src/content/docs/fr/guides/pi.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ d’exportation de la variable d’environnement et le nombre de modèles dotés
"name": "Claude Opus 5 (anthropic)",
"input": ["text"],
"contextWindow": 200000,
"maxTokens": 32000
"maxTokens": 128000
}
]
}
Expand Down Expand Up @@ -106,9 +106,7 @@ refuse de démarrer sans jeton — voir [Accès à distance](/fr/reference/confi
faisant autorité. Dans le cas contraire, les deux champs sont omis pour ce modèle et Pi applique ses propres valeurs par défaut ;
`ocx export` affiche le nombre de lignes concernées.

`maxTokens` est un budget de `32000` destiné à satisfaire le schéma. Il est plafonné à la fenêtre de contexte, de sorte qu’un
modèle doté d’un petit contexte ne reçoive jamais davantage de sortie que de contexte. Cette valeur ne constitue pas une affirmation sur la
limite maximale réelle d’un modèle donné.
La limite de sortie utilise le maximum connu du modèle dans le catalogue ou les métadonnées générées. La valeur `32000` ne sert que de repli si cette limite est inconnue. La limite est toujours plafonnée à la fenêtre de contexte, et les limites connues inférieures à `32000` sont conservées.

Le champ `cost` est volontairement absent. Il exige les quatre champs de prix, alors qu’OpenCodex ne possède
aucune donnée tarifaire pour les modèles routés ; émettre des zéros reviendrait à affirmer que tous les
Expand Down
8 changes: 2 additions & 6 deletions docs-site/src/content/docs/guides/opencode.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ the metadata the proxy reports at `GET /api/models`:
```json
"gpt-5.6-luna": {
"name": "gpt-5.6-luna (native)",
"limit": { "context": 272000, "output": 32000 },
"limit": { "context": 272000, "output": 128000 },
"attachment": true,
"modalities": { "input": ["text", "image"], "output": ["text"] }
}
Expand Down Expand Up @@ -185,11 +185,7 @@ Nothing to undo — no generated config file is written under `~/.opencodex`. Ru
`limit.context` is written only when the catalog reports an authoritative context window; when it
does not, the whole `limit` block is omitted and opencode keeps its own defaults.

opencode's schema rejects a `limit` block carrying `context` without `output`, and the catalog has
no authoritative per-model output field, so an `output` budget of `32000` is emitted alongside it,
clamped down to the context window so a small-context model is never given `output > context`.
That figure exists to satisfy the schema — it is not a claim about any specific model's true
maximum.
Output limits use the model’s known maximum from catalog or generated metadata. Only unknown limits fall back to `32000`. The output limit is always clamped to the context window, including known limits below `32000`.

The `opencodex` provider block is regenerated on every launch, so per-model tweaks made inside it
will not survive. Keep custom entries under a provider key of your own instead.
Expand Down
6 changes: 2 additions & 4 deletions docs-site/src/content/docs/guides/pi.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ export line, and how many models carry authoritative context limits.
"name": "Claude Opus 5 (anthropic)",
"input": ["text"],
"contextWindow": 200000,
"maxTokens": 32000
"maxTokens": 128000
}
]
}
Expand Down Expand Up @@ -106,9 +106,7 @@ refuses to start without a token — see [Remote access](/reference/configuratio
window. When it does not, both fields are omitted for that model and Pi applies its own defaults;
`ocx export` prints how many rows fell into that case.

`maxTokens` is a schema-satisfying budget of `32000`, clamped down to the context window so a
small-context model is never given more output than context. It is not a claim about any specific
model's true maximum.
Output limits use the model’s known maximum from catalog or generated metadata. Only unknown limits fall back to `32000`. The output limit is always clamped to the context window, including known limits below `32000`.

Two fields are deliberately absent. `cost` requires all four price fields and opencodex has no
price data for routed models — emitting zeros would assert that every model is free.
Expand Down
8 changes: 7 additions & 1 deletion docs-site/src/content/docs/guides/providers.md
Original file line number Diff line number Diff line change
Expand Up @@ -565,7 +565,13 @@ when a stable upstream session is required.
**MiMo tool-call echoes.** On OpenCode Go and other Chat Completions routes, a bare
`<tool_call>` block is hidden when it duplicates one structured call to the same tool
with the same effective input. If the input differs or several calls could explain
the block, the markup remains visible. Tool execution still uses the structured call.
the block, the markup remains visible. For `mimo-v2` and dotted MiMo V2 model IDs such as
`mimo-v2.6-pro`, if the gateway instead sends exactly one empty `{}` call for a declared
freeform tool and puts its input in a standalone bare block, opencodex restores that
input to the call and hides the block. Hyphenated IDs such as `mimo-v2-pro` and
`mimo-v2-omni` are outside this recovery rule. Prose, quoted
examples, ordinary functions, and ambiguous responses remain unchanged. This also handles
MiMo's malformed `<parameter=` opener at the start of that standalone block.

**OpenCode Zen** (`opencode-zen`) and the keyless **OpenCode Free** preset share
`https://opencode.ai/zen/v1`. Free models on that gateway often hit a short-window burst
Expand Down
2 changes: 1 addition & 1 deletion docs-site/src/content/docs/ja/guides/opencode.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ export OPENCODEX_OPENCODE_API_KEY=<your key>

`limit.context` は、カタログが権限のあるコンテキスト ウィンドウを報告する場合にのみ書き込まれます。そうでない場合、`limit` ブロック全体が省略され、opencode は独自のデフォルトを保持します。

opencode のスキーマは、`output` のない `context` を含む `limit` ブロックを拒否し、カタログにはモデルごとに権限のある出力フィールドがないため、`32000` の `output` バジェットが一緒に出力され、コンテキスト ウィンドウに固定されるため、コンテキストの小さいモデルには `output > context` が与えられません。この数値はスキーマを満たすために存在します。これは、特定のモデルの真の最大値について主張するものではありません。
出力上限にはカタログまたは生成メタデータの既知のモデル上限を使用します。不明な場合のみ `32000` を使用します。出力上限は常にコンテキストウィンドウ以下に制限され、`32000` 未満の既知の上限も維持されます。

`opencodex` プロバイダー ブロックは起動のたびに再生成されるため、内部で行われたモデルごとの調整は存続しません。代わりに、独自のプロバイダー キーの下にカスタム エントリを保持します。

Expand Down
4 changes: 2 additions & 2 deletions docs-site/src/content/docs/ja/guides/pi.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ ocx export --client pi
"name": "Claude Opus 5 (anthropic)",
"input": ["text"],
"contextWindow": 200000,
"maxTokens": 32000
"maxTokens": 128000
}
]
}
Expand Down Expand Up @@ -89,7 +89,7 @@ export OPENCODEX_API_KEY=<your key>

`contextWindow` および `maxTokens` は、カタログが権限のあるコンテキスト ウィンドウを報告する場合にのみ発行されます。そうでない場合、そのモデルでは両方のフィールドが省略され、Pi は独自のデフォルトを適用します。 `ocx export` は、そのケースに該当する行数を出力します。

`maxTokens` は、`32000` のスキーマを満たすバジェットであり、コンテキスト ウィンドウに固定されているため、小さなコンテキスト モデルにはコンテキストを超える出力が与えられません。これは、特定のモデルの真の最大値について主張するものではありません。
出力上限にはカタログまたは生成メタデータの既知のモデル上限を使用します。不明な場合のみ `32000` を使用します。出力上限は常にコンテキストウィンドウ以下に制限され、`32000` 未満の既知の上限も維持されます。

2 つのフィールドは意図的に省略されています。 `cost` には 4 つの価格フィールドがすべて必要ですが、opencodex にはルーティング モデルの価格データがありません。ゼロを出力すると、すべてのモデルが無料であると主張されます。 `reasoning` は Pi のブール値ですが、カタログにはエフォート ラダーが記載されており、一方をもう一方にマッピングするのは推測になります。

Expand Down
6 changes: 1 addition & 5 deletions docs-site/src/content/docs/ko/guides/opencode.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,11 +135,7 @@ export OPENCODEX_OPENCODE_API_KEY=<your key>
카탈로그가 공식 context window를 보고할 때만 `limit.context`를 씁니다. 그렇지 않으면
`limit` 블록 전체를 생략하고 opencode는 자체 기본값을 유지합니다.

opencode의 스키마는 `output` 없이 `context`만 있는 `limit` 블록을 거부합니다. 카탈로그에는
모델별로 공인된 `output` 필드가 없으므로, 이를 맞추기 위해 `32000`의 `output`
예산을 함께 내보내고, 작은 context 모델에 `output > context`가 되지 않도록 context
window에 맞춰 낮춥니다. 그 수치는 스키마를 만족시키기 위한 값일 뿐이며, 어떤 특정
모델의 실제 최대치를 뜻하지는 않습니다.
출력 한도는 카탈로그 또는 생성된 메타데이터의 알려진 모델 한도를 사용합니다. 알 수 없는 경우에만 `32000`을 사용합니다. 출력 한도는 항상 context window 이하로 제한되며, `32000`보다 작은 알려진 한도도 유지됩니다.

`opencodex` provider 블록은 실행할 때마다 다시 생성되므로, 그 안에서 한 모델별
조정은 유지되지 않습니다. 대신 사용자만의 provider 키 아래에 사용자 정의 항목을
Expand Down
6 changes: 2 additions & 4 deletions docs-site/src/content/docs/ko/guides/pi.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ ocx export --client pi
"name": "Claude Opus 5 (anthropic)",
"input": ["text"],
"contextWindow": 200000,
"maxTokens": 32000
"maxTokens": 128000
}
]
}
Expand Down Expand Up @@ -107,9 +107,7 @@ export OPENCODEX_API_KEY=<your key>
출력됩니다. 그렇지 않으면 두 필드 모두 해당 모델에서 생략되고, Pi는 자체 기본값을
적용합니다. `ocx export`는 그 경우가 몇 줄이었는지도 함께 출력합니다.

`maxTokens`는 스키마를 만족시키기 위한 `32000` 예산이며, context window보다 더 크게
잡히지 않도록 아래로 잘립니다. 즉, 작은 context 모델에 그보다 많은 출력을 주겠다는
의미가 아닙니다.
출력 한도는 카탈로그 또는 생성된 메타데이터의 알려진 모델 한도를 사용합니다. 알 수 없는 경우에만 `32000`을 사용합니다. 출력 한도는 항상 context window 이하로 제한되며, `32000`보다 작은 알려진 한도도 유지됩니다.

의도적으로 빠진 필드도 두 개 있습니다. `cost`는 네 개의 가격 필드가 모두 있어야
하는데, opencodex는 라우팅된 모델의 가격 데이터를 갖고 있지 않습니다. 0을 넣으면
Expand Down
2 changes: 2 additions & 0 deletions docs-site/src/content/docs/ko/reference/cli/lifecycle.md
Original file line number Diff line number Diff line change
Expand Up @@ -353,6 +353,8 @@ Windows에서 Task Scheduler 항목을 만들려면 권한 상승이 필요합

PATH 위의 스크립트 기반 `codex` 런처를 가벼운 자동 시작 스크립트로 감쌉니다. 정확한 실행 파일
호출을 깨지 않도록 실제 `codex.exe` 대상은 손대지 않습니다.
설치가 거부되거나 설치 후 shim이 비정상이면 명령은 실패 종료 코드를 반환하고 대시보드는 실패 사유를 표시합니다.
이미 설치된 정상 shim은 성공으로 처리합니다. Windows에서 `codex.exe`만 제공되는 설치는 자동 시작에 `ocx service install`을 사용하세요.

설치나 복구를 확정하기 전에 OpenCodex는 서비스 시작을 우회한 상태에서 저장된 런처를
`--version`으로 실행합니다. 런처가 `codex`를 shim으로 다시 해석해 재귀하거나, 0이 아닌 코드로
Expand Down
8 changes: 8 additions & 0 deletions docs-site/src/content/docs/reference/adapters.md
Original file line number Diff line number Diff line change
Expand Up @@ -572,3 +572,11 @@ or a permission grant. Unmarked clients retain their existing behavior. This
repair runs before the separate provider `responsesSnapshotRepair` option and
does not enable that broader lifecycle repair. Existing tool-search, custom-tool,
function-completion and undeclared-tool handling keep their established order.

### DeepSeek and Claude Code Artifact

For the official DeepSeek Chat Completions endpoint, opencodex relaxes regex and
`anyOf` constraints in Claude Code’s built-in `Artifact` tool schema to avoid
schema-validation HTTP 400 errors. Strict mode is omitted for this tool. Fields
defined only inside an `anyOf` are no longer constrained by that union; the tool
must validate its inputs. Other tools and providers retain their existing behavior.
3 changes: 3 additions & 0 deletions docs-site/src/content/docs/reference/cli/lifecycle.md
Original file line number Diff line number Diff line change
Expand Up @@ -585,6 +585,9 @@ deleted as an unsafe best-effort rollback.

Wrap a script-based `codex` launcher on PATH with a lightweight autostart script. Real `codex.exe`
targets are left untouched to avoid breaking exact executable invocations.
If installation is refused or the resulting shim is unhealthy, the command exits nonzero and
the dashboard reports the failure reason. A healthy existing shim still counts as success.
For Windows installations that expose only `codex.exe`, use `ocx service install` for autostart.

Before an install or repair is committed, OpenCodex runs the saved launcher with `--version` while
service startup is bypassed. It refuses the change and rolls back when the launcher resolves
Expand Down
6 changes: 1 addition & 5 deletions docs-site/src/content/docs/ru/guides/opencode.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,11 +134,7 @@ Loopback-привязка (`127.0.0.1`, по умолчанию) не требу
`limit.context` записывается только тогда, когда каталог сообщает авторитетное контекстное окно;
если нет, весь блок `limit` опускается, и opencode использует собственные значения по умолчанию.

Схема opencode отвергает блок `limit`, в котором есть `context`, но нет `output`, а в каталоге нет
авторитетного per-model поля output, поэтому рядом записывается `output` с бюджетом `32000`,
ограниченным сверху значением context window, чтобы у модели с маленьким контекстом никогда не
получалось `output > context`. Эта цифра существует только для удовлетворения схемы — она не
утверждает ничего о реальном максимуме какой-либо модели.
Лимит вывода берётся из каталога или сгенерированных метаданных модели. Значение `32000` используется только при неизвестном лимите. Лимит всегда ограничен окном контекста; известные значения ниже `32000` сохраняются.

Блок провайдера `opencodex` пересобирается при каждом запуске, поэтому внесённые вами правки
внутри него не сохранятся. Для пользовательских записей держите отдельный provider key.
Expand Down
6 changes: 2 additions & 4 deletions docs-site/src/content/docs/ru/guides/pi.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ ocx export --client pi
"name": "Claude Opus 5 (anthropic)",
"input": ["text"],
"contextWindow": 200000,
"maxTokens": 32000
"maxTokens": 128000
}
]
}
Expand Down Expand Up @@ -108,9 +108,7 @@ export OPENCODEX_API_KEY=<your key>
контекстное окно. Если его нет, оба поля для этой модели опускаются, и Pi использует собственные
значения по умолчанию; `ocx export` печатает, сколько строк попали в эту категорию.

`maxTokens` — это удовлетворяющий схеме бюджет `32000`, ограниченный сверху контекстным окном,
чтобы у модели с маленьким контекстом никогда не было больше output, чем сам context. Это не
утверждение о реальном максимуме какой-либо модели.
Лимит вывода берётся из каталога или сгенерированных метаданных модели. Значение `32000` используется только при неизвестном лимите. Лимит всегда ограничен окном контекста; известные значения ниже `32000` сохраняются.

Два поля намеренно отсутствуют. `cost` требует всех четырёх ценовых полей, а у opencodex нет
данных о ценах для маршрутизируемых моделей — вывести нули означало бы заявить, что каждая модель
Expand Down
7 changes: 1 addition & 6 deletions docs-site/src/content/docs/tr/guides/opencode.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,12 +148,7 @@ yapılandırmanızı tam olarak eskisi gibi okur.
yazılır; bildirmediğinde tüm `limit` bloğu atlanır ve opencode kendi
varsayılanlarını korur.

opencode'un şeması `output` olmadan `context` taşıyan bir `limit` bloğunu
reddeder ve kataloğun yetkili bir model başına çıktı alanı yoktur; bu nedenle
yanında `32000`'lik bir `output` bütçesi yayınlanır ve küçük bağlamlı bir modele
asla `output > context` verilmemesi için bağlam penceresine doğru sabitlenir. Bu
rakam şemayı karşılamak için vardır — belirli bir modelin gerçek maksimumu
hakkında bir iddia değildir.
Çıktı sınırı, katalogdaki veya oluşturulan meta verilerdeki bilinen model sınırını kullanır. Yalnızca sınır bilinmiyorsa `32000` kullanılır. Çıktı sınırı her zaman bağlam penceresiyle sınırlanır; `32000` altındaki bilinen sınırlar da korunur.

`opencodex` sağlayıcı bloğu her başlatmada yeniden oluşturulur, bu nedenle
içinde yapılan model başına ince ayarlar hayatta kalmaz. Bunun yerine özel
Expand Down
Loading
Loading