You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs-site/src/content/docs/ko/reference/configuration.md
+10Lines changed: 10 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,6 +52,7 @@ namespaced selected id를 bare id로 바꿉니다.
52
52
|`codexShimAutoRestore?`|`boolean`|`true`| 완료된 외부 Codex 업데이트가 이전에 설치한 shim을 교체하면 자동으로 복구합니다. 끄려면 `false`로 설정하거나 프로세스에 `OPENCODEX_CODEX_SHIM_AUTO_RESTORE=0`을 설정합니다. |
53
53
|`syncResumeHistory?`|`boolean`|`true`| 되돌릴 수 있는 Codex App 기록 호환 모드. opencodex가 원래 Codex thread metadata를 백업하고, 예전 OpenAI interactive row를 `opencodex`로 재매핑하며, opencodex가 만든 `exec` row를 App에 보이는 source로 잠시 승격합니다. `ocx stop` / `ocx restore`는 백업한 OpenAI row를 복원하고 남은 opencodex user thread를 OpenAI로 돌려 네이티브 Codex가 `config.toml`에서 프록시를 제거한 뒤에도 이어서 열 수 있게 합니다. 끄려면 `false`로 설정합니다. |
54
54
|`codexAccounts?`|`CodexAccount[]`|`[]`| Codex Auth 대시보드에서 관리하는 ChatGPT/Codex pool 계정 metadata. secret은 `codex-accounts.json`에 따로 둡니다. |
55
+
|`codexAccountNamespaces?`|`Record<string,string>`| — | 공개 model selector namespace에서 저장된 Codex 계정 target으로 연결하는 선택적 map입니다. 이 foundation layer는 map을 검증하고 저장하지만 picker row를 추가하거나 routing을 변경하지 않습니다. |
55
56
|`activeCodexAccountId?`|`string`| — | 수동으로 선택한 pool 계정. 선택 시 기존 thread affinity를 지우고 다음 요청부터 적용하며, 진행 중인 요청은 기존 계정을 유지합니다. |
56
57
|`autoSwitchThreshold?`|`number`|`80`| 새 세션 자동 전환용 사용량 백분율 threshold. 알려진 5시간, 주간, 30일 quota window 중 가장 높은 점수를 씁니다. `0`이면 quota 자동 전환을 끕니다. `quota` 전략과 `fill-first` drain threshold에도 사용됩니다. |
57
58
|`accountPoolStrategy?`|`"quota" \| "round-robin" \| "fill-first"`|`"quota"`| Codex pool의 새 세션 rotation 전략. **새 세션에만** 적용되며 기존 thread id는 affinity를 유지합니다. `quota`(기본) — 활성 계정이 `autoSwitchThreshold`를 넘으면 알려진 usage가 가장 낮은 계정 선택. `round-robin` — 적격 계정 간 smooth weighted 균등 분배. `fill-first` — cooldown, 사용 불가 또는(설정 시) `autoSwitchThreshold`까지 활성 계정을 소진(알 수 없는 usage는 강제 전환하지 않음)한 뒤 안정 정렬 순으로 다음 계정. |
@@ -64,6 +65,15 @@ namespaced selected id를 bare id로 바꿉니다.
64
65
|`tokenGuardian?`|`OcxTokenGuardianConfig`| off | 선택형 proactive OAuth 갱신 및 Codex 계정 warmup 정책. 필드는 아래에 설명합니다. |
65
66
|`corsAllowOrigins?`|`string[]`|`[]`| CORS에서 추가로 허용할 정확한 origin. loopback origin은 항상 허용합니다. |
66
67
68
+
`codexAccountNamespaces` 키는 공개 selector입니다. 길이는 1~64자이고 시작과 끝은 ASCII 영숫자여야
69
+
하며, 내부에는 영숫자, `.`, `_`, `-`를 사용할 수 있습니다. 예약된 JavaScript object 이름은 거부됩니다.
70
+
값은 유효한 pool account id(내부 `__main__` 제외)이거나 Codex Desktop 계정을 나타내는 `"@main"`입니다.
71
+
provider 및 예약된 `openai` / `combo` 충돌은 대소문자를 구분하지 않고 검사하며, namespace가 있는
72
+
combo alias는 selector를 namespace prefix로 재사용할 수 없습니다. 설정된 pool id와 다른 selector
73
+
target도 selector로 재사용할 수 없습니다. raw account id와 email은 비공개로
74
+
유지하고 selector를 공개 이름으로 사용하세요. 이 foundation layer에서 map은 inert하며 model picker
75
+
entry 생성, session 고정, Pool / Direct routing 변경을 수행하지 않습니다.
76
+
67
77
`maxConcurrentThreadsPerSession`은 `config.json` 키가 아니라 `PUT /api/v2`에서 쓰는 camel-case
68
78
필드입니다. `ocx v2 threads <n>`은 대응하는 `max_concurrent_threads_per_session` 값을 Codex의
69
79
`$CODEX_HOME/config.toml` 안 `[features.multi_agent_v2]`에 저장합니다. 해당 table이 생기도록 v2를
Copy file name to clipboardExpand all lines: docs-site/src/content/docs/reference/configuration.md
+10Lines changed: 10 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -57,6 +57,7 @@ differing backup and rewrites known legacy namespaced selected ids to bare ids.
57
57
|`codexShimAutoRestore?`|`boolean`|`true`| Restore a previously installed Codex shim when a completed external Codex update replaces it. Set `false`, or set `OPENCODEX_CODEX_SHIM_AUTO_RESTORE=0` for a process-level opt-out. |
58
58
|`syncResumeHistory?`|`boolean`|`true`| Reversible Codex App history compatibility mode. opencodex backs up original Codex thread metadata, remaps old OpenAI interactive rows to `opencodex`, and temporarily promotes opencodex-created `exec` rows to an app-visible source. `ocx stop` / `ocx restore` restore backed-up OpenAI rows and eject remaining opencodex user threads to OpenAI so native Codex can resume them after the proxy is removed from `config.toml`. Set `false` to opt out. |
59
59
|`codexAccounts?`|`CodexAccount[]`|`[]`| ChatGPT/Codex pool account metadata managed by the Codex Auth dashboard. Secrets live separately in `codex-accounts.json`. |
60
+
|`codexAccountNamespaces?`|`Record<string,string>`| — | Optional public model-selector namespace → stored Codex account target map. This foundation layer validates and persists the map but does not add picker rows or change routing. |
60
61
|`activeCodexAccountId?`|`string`| — | Manually selected Pool account. Selection clears existing thread affinity and applies to the next request; in-flight requests keep their captured account. |
61
62
|`autoSwitchThreshold?`|`number`|`80`| Usage percent threshold for new-session auto-switching. The score uses the hottest known 5h, weekly, or 30d quota window. Set `0` to disable quota auto-switching. Used by the `quota` strategy and as the drain threshold for `fill-first`. |
62
63
|`accountPoolStrategy?`|`"quota" \| "round-robin" \| "fill-first"`|`"quota"`| New-session rotation strategy for the Codex pool. Applies to **new sessions only**; existing thread ids keep affinity. `quota` — today's default: pick the lowest known usage when the active account crosses `autoSwitchThreshold`. `round-robin` — even spread across eligible accounts via smooth weighted selection. `fill-first` — keep the active account until it cools down, becomes unusable, or crosses `autoSwitchThreshold` when set (unknown usage does not force a switch), then advance to the next eligible account in stable sorted order. |
@@ -70,6 +71,15 @@ differing backup and rewrites known legacy namespaced selected ids to bare ids.
70
71
|`tokenGuardian?`|`OcxTokenGuardianConfig`| off | Optional proactive OAuth refresh and Codex-account warmup policy; fields are listed below. |
71
72
|`corsAllowOrigins?`|`string[]`|`[]`| Additional exact origins allowed by CORS. Loopback origins are always allowed. |
72
73
74
+
`codexAccountNamespaces` keys are public selectors: 1–64 characters, starting and ending with an
75
+
ASCII letter or number, with letters, numbers, `.`, `_`, or `-` inside; reserved JavaScript object
76
+
names are rejected. Each value is either a valid pool-account id (never the internal `__main__`) or
77
+
`"@main"` for the Codex Desktop account. Provider and reserved `openai` / `combo` collisions are
78
+
checked case-insensitively; a namespaced combo alias cannot reuse a selector as its namespace prefix,
79
+
and configured pool ids or selector targets also cannot reuse a selector. Keep raw
80
+
account ids and emails private—the selector is the public name. In this foundation layer the map is
81
+
inert: it does not create model-picker entries, pin sessions, or alter Pool or Direct routing.
82
+
73
83
`maxConcurrentThreadsPerSession` is the camel-case field used by `PUT /api/v2`, not a
74
84
`config.json` key. `ocx v2 threads <n>` persists the corresponding
75
85
`max_concurrent_threads_per_session` value under `[features.multi_agent_v2]` in Codex's
Copy file name to clipboardExpand all lines: docs-site/src/content/docs/ru/reference/configuration.md
+11Lines changed: 11 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -56,6 +56,7 @@ opencodex настраивается файлом `~/.opencodex/config.json`. Е
56
56
|`codexShimAutoRestore?`|`boolean`|`true`| Восстанавливает ранее установленный shim после того, как завершённое внешнее обновление Codex заменило его. Для отключения задайте `false` или установите процессу `OPENCODEX_CODEX_SHIM_AUTO_RESTORE=0`. |
57
57
|`syncResumeHistory?`|`boolean`|`true`| Обратимый режим совместимости истории Codex App. opencodex резервирует исходные метаданные потоков Codex, переназначает старые интерактивные строки OpenAI на `opencodex` и временно повышает созданные opencodex строки `exec` до видимого в приложении источника. `ocx stop` / `ocx restore` восстанавливают зарезервированные строки OpenAI и возвращают оставшиеся пользовательские потоки opencodex обратно к OpenAI, чтобы нативный Codex мог возобновлять их после удаления прокси из `config.toml`. Установите `false`, чтобы отказаться. |
58
58
|`codexAccounts?`|`CodexAccount[]`|`[]`| Метаданные аккаунтов пула ChatGPT/Codex, управляемые дашбордом Codex Auth. Секреты хранятся отдельно в `codex-accounts.json`. |
59
+
|`codexAccountNamespaces?`|`Record<string,string>`| — | Необязательная map публичного namespace селектора модели на сохранённую цель аккаунта Codex. Этот foundation layer проверяет и сохраняет map, но не добавляет строки picker и не меняет routing. |
59
60
|`activeCodexAccountId?`|`string`| — | Вручную выбранный аккаунт пула. Выбор очищает существующие привязки потоков и действует со следующего запроса; выполняющиеся запросы сохраняют захваченный аккаунт. |
60
61
|`autoSwitchThreshold?`|`number`|`80`| Порог процента использования для автопереключения новых сессий. Оценка использует самое «горячее» из известных окон квоты — 5-часовое, недельное или 30-дневное. Установите `0`, чтобы отключить автопереключение по квоте. Используется стратегией `quota` и как порог исчерпания для `fill-first`. |
61
62
| `accountPoolStrategy?` | `"quota" \| "round-robin" \| "fill-first"` | `"quota"` | Стратегия ротации новых сессий для пула Codex. Применяется **только к новым сессиям**; существующие id потоков сохраняют affinity. `quota` (по умолчанию) — выбор наименьшего известного usage, когда активный аккаунт превышает `autoSwitchThreshold`. `round-robin` — равномерное распределение между подходящими аккаунтами через smooth weighted selection. `fill-first` — использовать активный аккаунт до cooldown, недоступности или (если задано) `autoSwitchThreshold` (неизвестный usage не принуждает к переключению), затем переход к следующему подходящему аккаунту в стабильном отсортированном порядке. |
@@ -68,6 +69,16 @@ opencodex настраивается файлом `~/.opencodex/config.json`. Е
68
69
|`tokenGuardian?`|`OcxTokenGuardianConfig`| выкл. | Необязательная политика проактивного обновления OAuth и прогрева аккаунтов Codex; поля перечислены ниже. |
69
70
|`corsAllowOrigins?`|`string[]`|`[]`| Дополнительные точные origin, разрешённые CORS. Loopback-origin разрешены всегда. |
70
71
72
+
Ключи `codexAccountNamespaces` — публичные селекторы длиной 1–64 символа. Они должны начинаться и
73
+
заканчиваться ASCII-буквой или цифрой; внутри разрешены буквы, цифры, `.`, `_` и `-`. Зарезервированные
74
+
имена объектов JavaScript запрещены. Значение — допустимый id аккаунта пула (кроме внутреннего `__main__`)
75
+
либо `"@main"` для аккаунта Codex Desktop. Коллизии с provider и зарезервированными `openai` / `combo`
76
+
проверяются без учёта регистра; namespace-префикс namespaced combo alias не может повторять селектор.
77
+
Настроенные id пула и цели других селекторов также нельзя повторно использовать как селектор. Сохраняйте
78
+
raw id аккаунтов и email приватными, а селектор используйте как публичное имя.
79
+
В этом foundation layer map инертна: она не создаёт записи model picker, не закрепляет сессии и не меняет
80
+
маршрутизацию Pool / Direct.
81
+
71
82
`maxConcurrentThreadsPerSession` — это camelCase-поле, используемое `PUT /api/v2`, а не ключ
72
83
`config.json`. `ocx v2 threads <n>` сохраняет соответствующее значение
73
84
`max_concurrent_threads_per_session` в `[features.multi_agent_v2]` в
0 commit comments