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
This commit was created on GitHub.com and signed with GitHub’s verified signature.
English
Preserve OpenAI Responses items through Codex native forwarding, while applying the ChatGPT Codex request constraints used by CLIProxyAPI. Chat Completions and Messages requests translated to Codex use the same constraints.
Add codex provider: OpenAI Codex accounts backed by a ChatGPT subscription, with browser OAuth login, automatic token refresh, streaming chat, model catalog, and rate-limit window display.
Add an experimental Command Code (commandcode.ai) provider that speaks the CLI's own /alpha/generate protocol. That endpoint is not plan-gated, so every plan works — including the $1 Go plan, whose Pro-gated /provider/v1/* generation endpoints return 403 upgrade_required. The adapter serves the whole model catalog. Auth is a single user_… key, pasted through the existing PAT tab; the model list is read from the anonymous /provider/v1/models, and usage is shown from /alpha/billing/credits (monthly plan window plus the rolling 5-hour and weekly windows). Streaming is rewritten from the upstream newline-delimited JSON into OpenAI SSE. Experimental: /alpha/generate is unpublished and version-coupled, so the pinned CLI version fails loudly rather than degrading silently, and the provider is not production-ready.
Present Qoder's context window like Trae's Max-context switch. Qoder reports a default window and a larger selectable window per model but has no upstream toggle, so the console now shows the same "default → larger + switch" control it uses for Trae instead of a raw number input. Turning it on sends the model's largest window as the request's context_length; turning it off clears the override so requests fall back to the model's default. The window values come from Qoder's own catalog (default_context_window / available_context_windows) rather than a hardcoded 180000, so glm-5.3-flash shows 1M instead of being capped at 180k. Qoder Global and CN.
Show Qoder model pricing on the account's model list. Qoder reports a per-model price_factor (the multiplier its own client renders as 0.50x Credit) plus is_free/tags, but the worker dropped them, so the console showed no price for any Qoder account. The worker now forwards them and the adapter renders the multiplier as the console's credits text. The free badge follows the Qoder client's own rule — the limited_time_free tag (or a zero factor) is free, a positive factor is priced — so a model that reports is_free alongside a real multiplier (Qwen3.8-Max: is_free + 0.5) shows its multiplier instead of the contradictory "免费 / x0.5" pair. Applies to Qoder Global and Qoder CN.
Qoder accounts now show their real remaining credits: the account card's headline sums the plan quota, the add-on pack, and the organization resource package instead of reading only the plan quota. Daily check-in rewards are credited to the add-on pack upstream, so before this a plan-only account's card never moved after a check-in (it stayed at e.g. 300 while the reward sat unshown). This matches how the Qoder client itself totals the buckets.