Published to npm as @bitkyc08/opencodex@2.10.1 with dist-tag latest.
New Features
- Add default_mode_request_user_input feature toggle (#911)
- Add ClinePass subscription provider (#880)
- Providers: Add Command Code preset with live model discovery; Manage provider headers via PATCH and ocx provider edit --headers (#959) (#923, #1033)
- Codex: Add exact account routing; Add encrypted native main profiles; Classify reset-eligible quota rejection; Add account-qualified catalog entries; A write substrate that survives being interrupted (#671, #863, #866, #949, #998)
- Gui: Show weighted Codex pool capacity and next recovery; Fixed action toasts for dashboard sync + model-apply feedback (#878, #1050)
- Report A6API credit usage (#693)
- Ci: Require UI screenshot evidence for PRs mentioning gui; Draft contributor PRs until review-readiness checklist is complete; Verify checklist claims and reset readiness on head drift (#960, #969, #986)
- Render OpenAI-style release notes with optional LLM polish (#957)
- Opt-in same-target 429 wait-and-retry before key failover (#487) (#865)
- Routing: Record durable route decision traces; Add validated routing policy profiles; Execute capability-aware policy profiles; Add evidence-based route health scoring; Add quota-aware policy scoring; Add cost-aware policy scoring and limits (#1003, #1011, #1012, #1013, #1014, #1015)
- Control-Plane: Add indexed cursor-paginated request history; Expose route decision explanations (#1004, #1016)
- Add route reliability and latency analytics (#1005)
- Provider opt-in sparse lifecycle snapshot repair (#893) (#1025)
Bug Fixes
- Bound the six remaining retained-state leaks (#820 wave 2); Preserve hosted image tool preferences (#837 rebased, two defects fixed); Fix 6 React Doctor findings and pin the CI engine to 0.9.3 (#892, #924, #931)
- Close the agent star-consent bypass found auditing the #892 merge (#917)
- Openai-Chat: Deliver tool-result images to vision models; Enforce type:"object" on all tool parameters, not just Kimi (#912, #933)
- One effective-transport decision, one hosted declaration (#925)
- Try one alternate account on a pool 429/402, and keep the backoff headers (#927)
- Web-Search: Carry queries on a single-query search so strict parsers accept the replay; Reject malformed forced-answer passes and silent completions (#1001) (#932, #1030)
- Keep the signature from a standalone thought part (#941)
- Gui: Add Pool/Direct account mode switch to OpenAI provider settings; Providers overview quota/auth, Claude pool toggle, combos/models layout, dev session bootstrap (#935, #988)
- Keep DeepSeek reasoning_content on tool-call continuations (#950) (#971)
- Run the test gate on stacked child PRs, and label PRs whose title carries no type (#979)
- Require actionable reproduction detail (#981)
- Complete the repair migration — docs, startup health, doctor, and update advice (#991)
- Test: Fake codex app-server exits when its parent dies (leak fix); The 504 this test looked for was in a random id (#1035, #1042)
- Surface upstream error bodies through sidecar bridges (#1020)
- Codex: Pre-connection transport failures no longer rotate pool accounts (#914); Honor tri-state fastMode in Codex config injection; Avoid false project config warnings (#1023, #1022, #1000)
- Deepseek: Transport-neutral bounded-JSON policy with terminal SSE synthesis (#875); Canonical item-id repair for UUID message/reasoning ids (#938) (#1026, #1027)
- Routed models never inherit the native template's context window (#992) (#1028)
- Flush the login authorization URL synchronously under non-TTY stdout (#1007) (#1029)
- Refresh bundled gpt-5.6-terra/luna prices to the post-cut rates (#907) (#1031)
- Close the credential and lifecycle-identity variant gaps (#1038)
- Colorize brand icons and correct the OpenCodeX mark (#1037)
- Capture profileArn from whoami and classify profileArn-required 400s (#993) (#1032)
- Close the Bearer smuggling hole in the colon rule (#1040)
- Baseline preview changelogs from the prior stable (#1041)
Documentation
- Instruct agents to use issue and PR templates (#975)
- The example contradicted the paragraph under it (#1044)
Chores
- Shard the dev lane on Linux and move Windows to the shipping boundary; Add the deterministic PR hygiene gate (extracted from #903); Sponsor high-blast-radius surfaces, consolidate the governance stack (#899, #918, #920)
Other Changes
- Enable password manager autofill for admin tokens; Improve Simplified Chinese dashboard localization; Stack 1/6: triage the open issue surface and lock the bug plan; Stack 2/7: price long-context requests at the published long rate (#908); Stack 3/7: carry six contributor bug fixes with authorship intact; Stack 4/7: keep an explicit thinking disable through translation (#545); Stack 5/7: probe reset-derived cooldowns without waiting to be selected (#915); Stack 6/7: triage the overnight PRs and fix the #955 defects they found; Stack 7/7: NIM vision classification, service repair, and the qwen3.8-max rename (#873, #958, #951, #952, #953, #954, #955, #973, #980)
Changelog
Full Changelog: v2.10.0...v2.10.1
- #671 feat(codex): add exact account routing @chrisae9
- #693 feat(quota): report A6API credit usage @byongshintv
- #863 feat(codex): add encrypted native main profiles @luvs01
- #865 feat(proxy): opt-in same-target 429 wait-and-retry before key failover (#487) @harryzhou2000
- #866 feat(codex): classify reset-eligible quota rejection @luvs01
- #873 Enable password manager autofill for admin tokens @mincia1110
- #878 feat(gui): show weighted Codex pool capacity and next recovery @luvs01
- #880 feat(provider): add ClinePass subscription provider @n3wr1ch
- #892 fix: bound the six remaining retained-state leaks (#820 wave 2) @lidge-jun
- #899 ci: shard the dev lane on Linux and move Windows to the shipping boundary @lidge-jun
- #911 feat(codex-auth): add default_mode_request_user_input feature toggle @Wibias
- #912 fix(openai-chat): deliver tool-result images to vision models @DevMello
- #917 fix(security): close the agent star-consent bypass found auditing the #892 merge @lidge-jun
- #918 ci: add the deterministic PR hygiene gate (extracted from #903) @lidge-jun
- #920 ci: sponsor high-blast-radius surfaces, consolidate the governance stack @lidge-jun
- #923 feat(providers): add Command Code preset with live model discovery @Wibias
- #924 fix: preserve hosted image tool preferences (#837 rebased, two defects fixed) @lidge-jun
- #925 fix(hosted-tools): one effective-transport decision, one hosted declaration @lidge-jun
- #927 fix(compact): try one alternate account on a pool 429/402, and keep the backoff headers @lidge-jun
- #931 Fix 6 React Doctor findings and pin the CI engine to 0.9.3 @Wibias
- #932 fix(web-search): carry queries on a single-query search so strict parsers accept the replay @lidge-jun
- #933 fix(openai-chat): enforce type:"object" on all tool parameters, not just Kimi @IMHinnG
- #935 fix(gui): add Pool/Direct account mode switch to OpenAI provider settings @Wibias
- #941 fix(antigravity): keep the signature from a standalone thought part @DevMello
- #949 feat(codex): add account-qualified catalog entries @chrisae9
- #951 stack 1/6: triage the open issue surface and lock the bug plan @lidge-jun
- #952 stack 2/7: price long-context requests at the published long rate (#908) @lidge-jun
- #953 stack 3/7: carry six contributor bug fixes with authorship intact @lidge-jun
- #954 stack 4/7: keep an explicit thinking disable through translation (#545) @lidge-jun
- #955 stack 5/7: probe reset-derived cooldowns without waiting to be selected (#915) @lidge-jun
- #957 feat(release): render OpenAI-style release notes with optional LLM polish @Wibias
- #958 Improve Simplified Chinese dashboard localization @xueyang-dev
- #960 feat(ci): require UI screenshot evidence for PRs mentioning gui @Wibias
- #969 feat(ci): draft contributor PRs until review-readiness checklist is complete @Wibias
- #971 fix(responses): keep DeepSeek reasoning_content on tool-call continuations (#950) @Wibias
- #973 stack 6/7: triage the overnight PRs and fix the #955 defects they found @lidge-jun
- #975 docs(agents): instruct agents to use issue and PR templates @Wibias
- #979 fix(ci): run the test gate on stacked child PRs, and label PRs whose title carries no type @lidge-jun
- #980 stack 7/7: NIM vision classification, service repair, and the qwen3.8-max rename @lidge-jun
- #981 fix(issue-quality): require actionable reproduction detail @Wibias
- #986 feat(ci): verify checklist claims and reset readiness on head drift @Wibias
- #988 fix(gui): providers overview quota/auth, Claude pool toggle, combos/models layout, dev session bootstrap @Wibias
- #991 fix(service): complete the repair migration — docs, startup health, doctor, and update advice @lidge-jun
- #998 feat(codex): a write substrate that survives being interrupted @lidge-jun
- #1000 fix(codex): avoid false project config warnings @WZBbiao
- #1003 feat(routing): record durable route decision traces @Wibias
- #1004 feat(control-plane): add indexed cursor-paginated request history @Wibias
- #1005 feat(analytics): add route reliability and latency analytics @Wibias
- #1011 feat(routing): add validated routing policy profiles @Wibias
- #1012 feat(routing): execute capability-aware policy profiles @Wibias
- #1013 feat(routing): add evidence-based route health scoring @Wibias
- #1014 feat(routing): add quota-aware policy scoring @Wibias
- #1015 feat(routing): add cost-aware policy scoring and limits @Wibias
- #1016 feat(control-plane): expose route decision explanations @Wibias
- #1020 fix(anthropic): surface upstream error bodies through sidecar bridges @lidge-jun
- #1022 fix(codex): honor tri-state fastMode in Codex config injection @harryzhou2000
- #1023 fix(codex): pre-connection transport failures no longer rotate pool accounts (#914) @lidge-jun
- #1025 feat(responses): provider opt-in sparse lifecycle snapshot repair (#893) @lidge-jun
- #1026 fix(deepseek): transport-neutral bounded-JSON policy with terminal SSE synthesis (#875) @lidge-jun
- #1027 fix(deepseek): canonical item-id repair for UUID message/reasoning ids (#938) @lidge-jun
- #1028 fix(catalog): routed models never inherit the native template's context window (#992) @lidge-jun
- #1029 fix(cli): flush the login authorization URL synchronously under non-TTY stdout (#1007) @lidge-jun
- #1030 fix(web-search): reject malformed forced-answer passes and silent completions (#1001) @lidge-jun
- #1031 fix(usage): refresh bundled gpt-5.6-terra/luna prices to the post-cut rates (#907) @lidge-jun
- #1032 fix(kiro): capture profileArn from whoami and classify profileArn-required 400s (#993) @lidge-jun
- #1033 feat(providers): manage provider headers via PATCH and ocx provider edit --headers (#959) @lidge-jun
- #1035 fix(test): fake codex app-server exits when its parent dies (leak fix) @Wibias
- #1037 fix(provider-icons): colorize brand icons and correct the OpenCodeX mark @Wibias
- #1038 fix(redact,responses): close the credential and lifecycle-identity variant gaps @lidge-jun
- #1040 fix(redact): close the Bearer smuggling hole in the colon rule @lidge-jun
- #1041 fix(release): baseline preview changelogs from the prior stable @Wibias
- #1042 fix(test): the 504 this test looked for was in a random id @lidge-jun
- #1044 docs(codex): the example contradicted the paragraph under it @lidge-jun
- #1050 feat(gui): fixed action toasts for dashboard sync + model-apply feedback @Wibias