Releases: rizxfrog/CLIProxyAPI
Releases · rizxfrog/CLIProxyAPI
Release list
v2026.9.17.17-snapshot
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- feat(meta): add native Meta (Muse Code) provider and OAuth device flow (54d4f4c)
- fix(cli): make config optional in commandMode so login works without existing config.yaml (fbf7464)
- feat(meta): mint LLM API key from device access token via /muse-code/key (30191c3)
- feat(meta): add Meta OAuth management endpoint and WebUI / TUI support (23c16e2)
- fix(management): disable caching for management.html to prevent stale SPA views (78c14b8)
- fix(tui): rename Meta provider label from Meta (Muse) to Meta (18385de)
- feat(meta): add Meta API key management handlers, routes, logo, and tests (e475807)
- fix(meta): address review feedback on credential lifecycle, models, and config loading (cee799f)
- fix(codex): recognize codex_exec user agent for multi-agent v2 optimization (923a8c3)
- fix(meta): exclude cleared expired timestamp on persist, add runtime alias resolution, and fix test race (47cc31a)
- chore(meta): keep provider PR scoped to Meta support (21aa46b)
- fix(meta): recover and persist minted credentials correctly (be7323f)
- fix(meta): implement request preparer, disable unconditional refresh, scope 429 quota, and stabilize auth index (d09042a)
- fix(meta): require OAuth storage for DCA tokens and reject them in config meta-api-key (1144ae7)
- fix(meta): validate catalog section, singleflight management mints, and synchronize singleflight test (06660dd)
- fix(meta): unify credential minting and preserve auth lifecycle (4a0131c)
- Merge dev into feat/meta-provider and preserve both registry tests (c6e076f)
- docs(readme): update links after GitHub username change (cfeeeb3)
- feat(plugin-quota): add typed summary metrics (acb0eae)
- fix(plugin-quota): accept summary-only probes (5cb41e2)
- fix(plugin-quota): require summary metric values (7b60be3)
- fix(plugin-quota): tolerate malformed summaries (782a5cd)
- fix(plugin-quota): validate summary identifiers (d3cb685)
- fix(plugin-quota): validate summary metadata (617b9fd)
- fix(plugin-quota): preserve mapped summaries (6aea72e)
- fix(plugin-quota): preserve valid mapped summaries (07e85de)
- Merge pull request router-for-me#5803 from anpicasso/feat/plugin-quota-summary (512c453)
- feat(translator): refine tool call argument validation for finish reason logic (772c63c)
- Merge PR router-for-me#5502 feat/meta-provider into cpa/muse (42ca5d3)
- feat(executor): add native Meta (Muse Code) provider integration (65348b9)
- feat(config): add Meta OAuth aliasing and error rules support (8335eac)
- feat(auth): enhance retry logic with enriched error handling and tests (6724a95)
- fix(interactions): strip invalid id from function_result and redundant call_id from function_call (f51d3ae)
- Merge pull request router-for-me#5830 from router-for-me/fix/issue-5828-gemini-interactions-tool-result-id (10d464d)
- feat(translator): enhance finish reason handling and tool call translations (6f908cb)
- feat(translator): enhance cache usage handling and input token computation logic (e54a8e9)
- feat(translator): introduce namespace-aware tool name capping and collision handling (e3e97ad)
- fix(devin): support swe-1-6-slow model variant (dea4ce8)
- feat(antigravity): support web search translation and URL resolution in OpenAI Responses (ef63d2e)
- fix(provider): add CodeArts (Desktop Version) (HuaWei) (41d850a)
- feat(translator): preserve tool names in tool result messages (7def842)
- fix(devin): classify high-demand errors as rate limits (d44901f)
- Merge pull request router-for-me#5867 from avabbbb/fix/devin-swe-1-6-slow (44f8343)
- feat(codearts): credit quota endpoint, benefit-model routing, catalog refresh (4fd3c9b)
- fix(executor): prevent stream failure on client disconnect after claude completion (7c32971)
- Merge pull request router-for-me#5862 from sususu98/feat/antigravity-websearch (8c6d4dc)
- feat(codearts): add daily check-in script and fix the welfare check-in flow (cd94455)
- feat(translator): enhance web search streaming and citation mapping in OpenAI Responses (7fcbdf8)
- Merge pull request router-for-me#5870 from avabbbb/fix/devin-high-demand-rate-limit (4613cfd)
- feat(translator): support alternative reasoning fields in OpenAI Claude translation (77820cb)
- fix(devin): buffer content deltas to handle late thinking signatures (c2bb91d)
- feat(translator): wrap demoted mid-session system messages in system-reminder envelope (b681a1e)
- Merge pull request router-for-me#5725 from ztzpro/main (87561b6)
- Merge pull request router-for-me#5696 from cookerpapa/docs/picloud-related-project (12b496b)
- Merge pull request router-for-me#5509 from trukhinyuri/fix/codex-exec-user-agent (c8ec91f)
- fix(executor): strip relayed tool result images for text-only models (c4982e8)
- test(executor): use metaUserAgent constant in meta executor test (311efcb)
- fix(schema): strip unsupported schema identifier keywords (f668ac4)
- Merge branch 'main' into feature/dev (d1ff277)
- Merge pull request router-for-me#5889 from kinka/docs/add-cc-status-line (1bb8895)
- fix(codearts): confirm is best-effort and takes only userBenefitId (983ec73)
- feat(translator): preserve model metadata in requests (a9e92b8)
- fix(devin): filter automation update tools and sanitize tool descriptions (ad088a8)
- Merge pull request router-for-me#5896 from router-for-me/translator (8c664b2)
- Merge branch 'main' into feature/dev (09c8d1a)
Full Changelog: v2026.9.15.21-snapshot...v2026.9.17.17-snapshot
v2026.9.15.8-snapshot
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- fix(codex): buffer keepalive and empty item announcements during codex bootstrap (cb73cd9)
- feat(devin): support port-free manual code login in no-browser mode (fe2fdde)
- fix(devin): align OAuth authorization URL parameter order with official CLI binary (09807c5)
- fix(devin): mock AuthService in headless token test and validate prompt before printing URL (c35db12)
- feat(discovery): add LAN gateway discovery (3428110)
- fix(translator): preserve html characters in tool arguments and fix devin sequential tool calls (c1cb0c5)
- docs(readme): remove FastAIToken sponsor (fd3cd15)
- test(devin): route status calls to mock server in headless auth tests (f465ebd)
- fix(claude): repair tool call pairing and handle standalone tool outputs (2bcebaa)
- fix(discovery): harden advertiser lifecycle and browse limits (b900577)
- fix(discovery): honor caller cancellation and reload endpoint (c1b7c91)
- Merge pull request router-for-me#5724 from Viggo95/fix/codex-bootstrap-buffer-noncontent-events (bb20fa2)
- feat(conductor): configurable system prompt override per provider (19a9158)
- fix(discovery): bound browse resource usage (f5c19d2)
- fix(cmd/fetch_antigravity_models): support symlinked auth dir and multi-auth fallback (f341e07)
- feat(models): add gemini-3.5-flash-lite model definition (d48590a)
- feat(codex): add optional time ceiling for stream bootstrap buffering (6e30755)
- test(discovery): report temp cleanup failures (c3a5e8c)
- fix(discovery): close lifecycle and routing gaps (20ec9b8)
- Merge pull request router-for-me#5818 from router-for-me/feat/codex-bootstrap-timeout (6c5fef9)
- fix(discovery): keep JSON scans clean and honor interface filters (7d68705)
- fix(discovery): load default scan config and sanitize hostnames (2dd2fd6)
- fix(discovery): uniquify instance names without a startup browse (9e847e5)
- fix(devin): share manual paste parsing and surface oauth callback errors (5f74acc)
- fix(discovery): tighten scan timeout, flags, and TCP-only types (13af6c0)
- Merge pull request router-for-me#5808 from router-for-me/feat/devin-code-login (c9b3dbe)
- Merge pull request router-for-me#5796 from router-for-me/feat/ai-gateway-discovery (9b52a49)
- fix(pluginhost): keep request and method buffers alive during native call (b8477c7)
- feat(pluginabi): support HTTP status code propagation in plugin error envelopes (6ba4445)
- test(openai): add tests for responses websocket compaction replay and routing (ca92945)
- feat(conductor): system prompt replacements, tool description rewrite, prompt-file (94d9d6f)
- feat(pluginhost): propagate forced provider and auth ID in host model execution (748d576)
- feat(auth): add tests to ensure async operations don’t block unrelated actions (e3cbe43)
- feat(executor): strip unsupported
idfields from Gemini interactions payload (1fac8cc) - feat(auth): add retry logic for pre-HTTP transport failures and related tests (bef1f65)
- feat(translator): handle orphan function outputs as user text in OpenAI and Gemini translators (8c98467)
- feat(executor): promote reasoning content as summary and sanitize inputs (7bbfeaf)
- Merge branch 'main' into feature/dev (5a50553)
Full Changelog: v2026.9.14.11-snapshot...v2026.9.15.8-snapshot
v2026.9.15.21-snapshot
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- feat(provider): 商汤小浣熊 (170b770)
- feat: add built-in Prometheus metrics and Grafana dashboard (e40d605)
- Merge pull request #1 from centaurus-code/feature/prometheus-metrics (e966e7f)
- feat(provider): 商汤小浣熊 (758b4a9)
- fix(deps): add missing go.sum entry for prometheus/procfs (781509f)
What's Changed
- feat: add built-in Prometheus metrics and Grafana dashboard by @centaurus-code in #1
New Contributors
- @centaurus-code made their first contribution in #1
Full Changelog: v2026.9.15.8-snapshot...v2026.9.15.21-snapshot
v2026.9.14.9-snapshot
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- chore(models): remove gpt-5.4 and gpt-5.4-mini models (31ec436)
- fix(aistudio): normalize thinking level to uppercase (9dfddd6)
- fix(watcher): preserve concurrent file updates during auth snapshot rescans (084f25c)
- fix(claude): avoid mid-conversation system splicing for advisor calls or results (7c2f6ce)
- fix(codex): scope usage limit errors to credentials and parse flexible quota resets (5ab0bca)
- feat(usage): propagate session and parent session hierarchy to usage reporting queue (580df36)
- chore(codex): update codex user-agent to 0.153.3 (c76dfd4)
- perf(auth): optimize scheduler result updates with targeted model shards (fa01468)
- feat(pluginhost): expose outbound HTTP wire profile to plugin requests (00c63a5)
- feat(antigravity): add conversation compaction support and capsule encryption (70f4560)
- fix(xai): support compaction fallback from payload input or previous response id (0e85eb4)
- fix(gemini): append trailing user turn for requests ending with model content (5dc428f)
- fix(claude): preserve non-result block positions during tool result alignment (8564142)
- fix(antigravity): omit tools when tool_choice is none (a76da71)
- fix(auth): preserve active cooldown deadlines on subsequent failures (1c22598)
- fix(antigravity): enable thinking summary when responses reasoning effort is set (e92f6cf)
- fix(claude): normalize codex agent messages in responses conversion (d2f7122)
- feat: add Aiberm sponser (63fd255)
- fix Aiberm sponser logo (578ac8f)
- feat: add Aiberm sponsorship information to README_JA.md (4cd8ee7)
- feat: add link to Aiberm in sponsorship section of README files (934fb79)
- fix(gemini): hide trailing text thought signatures from responses timeline (510c9c8)
- fix(codex): restore dotted collaboration tool names in multi-agent v2 (82f4f37)
- fix(antigravity): default to short connections and harden connection pool lifecycle (fixes router-for-me#5494) (d539790)
- Merge pull request router-for-me#5596 from sususu98/fix/issue-5494-antigravity-idle-conns (f19d6da)
- fix(codex): simplify complex tool schema unions and detect empty incomplete responses (bf20b99)
- feat(claude): support structured output via system prompt instructions (4f03809)
- fix(wsrelay): preserve queued frames during terminal message delivery (7871a5a)
- fix(codex): preserve service tier and cache write tokens in openai responses (8696585)
- fix(codex): explicitly default function tool strict to false (d01516c)
- fix(codex): recover omitted tool namespaces in openai responses (03a054e)
- fix(codex): sanitize invalid tool name characters for upstream compatibility (bee20b9)
- fix(codex): recognize retryable server errors for bootstrap failover (ba7e558)
- fix(docs): remove Infistar.ai sponsorship details from README files (d198db5)
- fix(claude): default function parameters for tools without input schema (6e1f9ec)
- fix(antigravity): normalize gemini responseJsonSchema to responseSchema (dc21a42)
- fix(claude): align beta assembly and Haiku helper transport with the measured 2.1.258 (280b96a)
- fix(claude): attach helper request IDs according to the upstream base (35a4723)
- feat(kimi): support openai responses api (d4146bd)
- fix(antigravity): include resolved pool settings in transport cache key (68dd99d)
- fix(claude): enforce sequential content blocks for interleaved streaming tool calls (ef99119)
- fix(auth): cap refresh loop timer wait duration (48e5e9e)
- fix(claude): map codex reasoning tokens to thinking tokens (e365ab0)
- feat(session): enhance harness hierarchy recognition and deduplicate selector extraction (3905891)
- feat(usage): normalize reported session hierarchy to canonical UUIDv8 (6b187e7)
- fix(plugin-store): only check releases for installed update sources (1c9d719)
- fix(auth): strip monotonic clock reading from quota cooldown deadlines (1d5f7b2)
- fix(plugin-store): coalesce and throttle cached release checks (54b17ce)
- fix(plugin-store): honor shared GitHub API rate-limit cooldowns (8c0ad8c)
- feat(auth): export helper functions for headless antigravity oauth (20e3f73)
- perf(antigravity): batch functionResponse name repairs (d8f2dce)
- fix(plugin-store): add network scope handling for shared GitHub API cooldowns (3639d92)
- fix(api): skip access logging for health probes (e026cbf)
- fix(session): harden canonical UUIDv8 normalization for empty prefixes and context roots (1119ef1)
- fix(logging): silence only successful health probes (a163c5e)
- Merge pull request router-for-me#5625 from router-for-me/fix/issue-5608-plugin-store-rate-limit (f39702a)
- fix(gemini): normalize responses tool call outputs and resolve alternate call ids (d0bb908)
- Merge pull request router-for-me#5626 from nichaoshou/fix/healthz-access-log (454452d)
- feat(plugin): preserve raw json in management responses on schema version 6 (c6327a8)
- fix(gemini): reorder trailing text before function responses in user turns (4fde97f)
- fix(codex): strip schema dialect keywords from tool parameters (7fac6b1)
- feat(plugin): add host session affinity lookup callback (0796d6d)
- fix(claude): emit trailing usage chunk and aggregate stream usage (a59b176)
- feat(codebuddy-cn): add CodeBuddy CN (Tencent) provider (73e82b1)
- feat(provider): CodebuddyCN (d817587)
- docs(codebuddy-cn): fix example base-url (executor appends /chat/completions) (30239f7)
- feat(codebuddy-cn): add OAuth authentication (b9f780e)
- feat(codebuddy-cn): reproduce official TLS fingerprint (350d532)
- feat(deepseek-web): add browser-session provider (76ab133)
- fix(deepseek-web): distinguish dead userToken from transient refresh failures (827c0a9)
- fix(codebuddy-cn): keep reasoning_effort to enable thinking (9c82608)
- feat(codebuddy-cn): --local-model disable download frontend (fc278de)
- feat(front): open file route (a53528d)
- chore: docker hub (20e6b66)
- chore: build docker images at releases (3c943ee)
- feat: custom model.json (206962b)
- feat: redefine the concept of prefix of model id. the prefix means alias and force-prefix means force-alias, so it shouldn't affect the logic of register and looking up model. (2778ac2)
- feat(provider): add TRAE SOLO CN desktop (TraeWork) provider support (3578900)
- feat: register TRAE SOLO CN static models from client cache (9a0d136)
- feat: add TRAE SOLO CN daily checkin script (7de928d)
- test & feat: check-in scripts of codebuddy-cn and traework-cn (c8fb9ea)
- fix(trae-checkin): classify 9074 as retryable server-side queueing (b949eeb)
- feat(front): download management panel asset as @management.html (11f8bee)
- fix(trae-checkin): emulate runtime device identity and TTNet headers (9b25939)
- fix(trae): make SSE and pi tool calls compatible (ae75e30)
- fix(trae-checkin): handle current-device checkin state and code 9095 (e8d35fc)
- fix(trae-checkin): reuse OAuth credential device identity by default (2a02e6f)
- fix(trae-checkin): use official checked_in semantics and verify rewards (445985e)
- fix(trae-checkin): preflight OAuth server session state (7d6c7e8)
- fix(trae-checkin): require registered AHA DID for new claims (bbf321c)
- feat(trae): reuse configured AHA device identity for OAuth login (f8468b2)
- fix(trae): report current desktop client build to unlock newer models (0db6757)
- feat(codex): support model-level quota cooling (b064b83)
- fix(translator): strip unsupported unicode property escape patterns from tool schemas (e56abd5)
- fix(schema): inspect patternProperties keys and avoid Unicode escape fast-path bypass (37ce368)
- Merge pull request router-for-me#5677 from sususu98/fix/codex-tool-schema-pattern (db01159)
- feat(management): add endpoint to refresh auth files (60e5b8b)
- feat(auth): propagate canonical session id for custom header expansion (3bf787f)
- fix(auth): classify terminal upstream auth failures as non-retryable errors (aedc9e6)
- feat(codex): add support for gpt-image-2.5 models (d1a024e)
- fix(claude): preserve 1h cache ttl and beta header for subagent requests (6a73f39)
- fix(openai): preserve prewarm input and allow named tool outputs in responses websocket (bd03aab)
- fix(openai): preserve nested error details and sequence numbers in responses stream (2591308)
- fix(codex): treat model capacity errors as bootstrap overload failures (3ae9093)
- fix(auth): enable model cooldown and rotation for model not found errors (dde250f)
- Merge branch 'main' into feature/dev (cf0fe2b)
- update models.json (ead4f96)
- fix(translator): ignore null and empty finish reasons in openai to gemini response (4dce5f3)
- fix(stream): handle split CRLF across chunk boundaries in SSE validation (638ed7e)
- docs(readme): remove RunAPI sponsor (09a29bd)
- fix(openai): process reasoning deltas before content in responses stream (c8ecb4f)
- fix(antigravity): keep active block open on empty text parts in claude stream (fd3e662)
- fix(auth): treat cloudflare 520-526 origin errors as transient upstream failures (9fad505)
- fix(gemini): preserve function call pairing for interrupted calls and replay failures (b8e6ec0)
- fix(auth): bound force refresh all concurrency using worker pool (6dce786)
- fix(translator): ignore fco output item IDs when extracting responses call ID (5a07045)
- feat(usage): propagate upstream base_url across usage records and plugin auth (c8f723e)
- chore(codex): update codex user-agent...
v2026.9.14.11-snapshot
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- fix(openai): convert responses tool choice to chat completions format (8c5f6e1)
- docs(readme): document supported providers (09dfb50)
- fix(devin): parse field 8 header submessages, accumulate field 4 prompt tokens, and add field 28 usage fallback (b4749cb)
- test(devin): add unit test for devin oauth-model-alias channel routing (0148331)
- fix(devin): reject case-insensitive duplicate model IDs (db0b957)
- feat(api-call): support
$TOKEN$ replacement in request body data (0719520) - docs(readme): split README into EN/CN/JA (139bbeb)
- fix(devin): unwrap repeated field 28 groups, merge partial field 7 usage, and harden APICall escaping (4c331bb)
- fix(devin): trigger dimension group fallback if any usage metric is zero (5f56ce9)
- fix(devin): use loopback callback endpoint for oauth redirect uri (cca35ae)
- Merge pull request router-for-me#5806 from router-for-me/feat/devin-followups (7fa443d)
- feat(codebuddy-ai): inject required agent system prompt (c6db8cb)
- Merge branch 'main' into feature/dev (2720246)
Full Changelog: v2026.9.14.9-snapshot...v2026.9.14.11-snapshot
v2026.9.9.11-snapshot
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- chore(models): remove gpt-5.4 and gpt-5.4-mini models (31ec436)
- fix(aistudio): normalize thinking level to uppercase (9dfddd6)
- fix(watcher): preserve concurrent file updates during auth snapshot rescans (084f25c)
- fix(claude): avoid mid-conversation system splicing for advisor calls or results (7c2f6ce)
- fix(codex): scope usage limit errors to credentials and parse flexible quota resets (5ab0bca)
- feat(usage): propagate session and parent session hierarchy to usage reporting queue (580df36)
- chore(codex): update codex user-agent to 0.153.3 (c76dfd4)
- perf(auth): optimize scheduler result updates with targeted model shards (fa01468)
- feat(pluginhost): expose outbound HTTP wire profile to plugin requests (00c63a5)
- feat(antigravity): add conversation compaction support and capsule encryption (70f4560)
- fix(xai): support compaction fallback from payload input or previous response id (0e85eb4)
- fix(gemini): append trailing user turn for requests ending with model content (5dc428f)
- fix(claude): preserve non-result block positions during tool result alignment (8564142)
- fix(antigravity): omit tools when tool_choice is none (a76da71)
- fix(auth): preserve active cooldown deadlines on subsequent failures (1c22598)
- fix(antigravity): enable thinking summary when responses reasoning effort is set (e92f6cf)
- fix(claude): normalize codex agent messages in responses conversion (d2f7122)
- feat: add Aiberm sponser (63fd255)
- fix Aiberm sponser logo (578ac8f)
- feat: add Aiberm sponsorship information to README_JA.md (4cd8ee7)
- feat: add link to Aiberm in sponsorship section of README files (934fb79)
- fix(gemini): hide trailing text thought signatures from responses timeline (510c9c8)
- fix(codex): restore dotted collaboration tool names in multi-agent v2 (82f4f37)
- fix(antigravity): default to short connections and harden connection pool lifecycle (fixes router-for-me#5494) (d539790)
- Merge pull request router-for-me#5596 from sususu98/fix/issue-5494-antigravity-idle-conns (f19d6da)
- fix(codex): simplify complex tool schema unions and detect empty incomplete responses (bf20b99)
- feat(claude): support structured output via system prompt instructions (4f03809)
- fix(wsrelay): preserve queued frames during terminal message delivery (7871a5a)
- fix(codex): preserve service tier and cache write tokens in openai responses (8696585)
- fix(codex): explicitly default function tool strict to false (d01516c)
- fix(codex): recover omitted tool namespaces in openai responses (03a054e)
- fix(codex): sanitize invalid tool name characters for upstream compatibility (bee20b9)
- fix(codex): recognize retryable server errors for bootstrap failover (ba7e558)
- fix(docs): remove Infistar.ai sponsorship details from README files (d198db5)
- fix(claude): default function parameters for tools without input schema (6e1f9ec)
- fix(antigravity): normalize gemini responseJsonSchema to responseSchema (dc21a42)
- fix(claude): align beta assembly and Haiku helper transport with the measured 2.1.258 (280b96a)
- fix(claude): attach helper request IDs according to the upstream base (35a4723)
- feat(kimi): support openai responses api (d4146bd)
- fix(antigravity): include resolved pool settings in transport cache key (68dd99d)
- fix(claude): enforce sequential content blocks for interleaved streaming tool calls (ef99119)
- fix(auth): cap refresh loop timer wait duration (48e5e9e)
- fix(claude): map codex reasoning tokens to thinking tokens (e365ab0)
- feat(session): enhance harness hierarchy recognition and deduplicate selector extraction (3905891)
- feat(usage): normalize reported session hierarchy to canonical UUIDv8 (6b187e7)
- fix(plugin-store): only check releases for installed update sources (1c9d719)
- fix(auth): strip monotonic clock reading from quota cooldown deadlines (1d5f7b2)
- fix(plugin-store): coalesce and throttle cached release checks (54b17ce)
- fix(plugin-store): honor shared GitHub API rate-limit cooldowns (8c0ad8c)
- feat(auth): export helper functions for headless antigravity oauth (20e3f73)
- perf(antigravity): batch functionResponse name repairs (d8f2dce)
- fix(plugin-store): add network scope handling for shared GitHub API cooldowns (3639d92)
- fix(api): skip access logging for health probes (e026cbf)
- fix(session): harden canonical UUIDv8 normalization for empty prefixes and context roots (1119ef1)
- fix(logging): silence only successful health probes (a163c5e)
- Merge pull request router-for-me#5625 from router-for-me/fix/issue-5608-plugin-store-rate-limit (f39702a)
- fix(gemini): normalize responses tool call outputs and resolve alternate call ids (d0bb908)
- Merge pull request router-for-me#5626 from nichaoshou/fix/healthz-access-log (454452d)
- feat(plugin): preserve raw json in management responses on schema version 6 (c6327a8)
- fix(gemini): reorder trailing text before function responses in user turns (4fde97f)
- fix(codex): strip schema dialect keywords from tool parameters (7fac6b1)
- feat(codebuddy-cn): add CodeBuddy CN (Tencent) provider (73e82b1)
- feat(provider): CodebuddyCN (d817587)
- docs(codebuddy-cn): fix example base-url (executor appends /chat/completions) (30239f7)
- feat(codebuddy-cn): add OAuth authentication (b9f780e)
- feat(codebuddy-cn): reproduce official TLS fingerprint (350d532)
- feat(deepseek-web): add browser-session provider (76ab133)
- fix(deepseek-web): distinguish dead userToken from transient refresh failures (827c0a9)
- fix(codebuddy-cn): keep reasoning_effort to enable thinking (9c82608)
- feat(codebuddy-cn): --local-model disable download frontend (fc278de)
- feat(front): open file route (a53528d)
- chore: docker hub (20e6b66)
- chore: build docker images at releases (3c943ee)
- feat: custom model.json (206962b)
- feat: redefine the concept of prefix of model id. the prefix means alias and force-prefix means force-alias, so it shouldn't affect the logic of register and looking up model. (2778ac2)
- feat(provider): add TRAE SOLO CN desktop (TraeWork) provider support (3578900)
- feat: register TRAE SOLO CN static models from client cache (9a0d136)
- feat: add TRAE SOLO CN daily checkin script (7de928d)
- test & feat: check-in scripts of codebuddy-cn and traework-cn (c8fb9ea)
- fix(trae-checkin): classify 9074 as retryable server-side queueing (b949eeb)
- feat(front): download management panel asset as @management.html (11f8bee)
- fix(trae-checkin): emulate runtime device identity and TTNet headers (9b25939)
- fix(trae): make SSE and pi tool calls compatible (ae75e30)
- fix(trae-checkin): handle current-device checkin state and code 9095 (e8d35fc)
- fix(trae-checkin): reuse OAuth credential device identity by default (2a02e6f)
- fix(trae-checkin): use official checked_in semantics and verify rewards (445985e)
- fix(trae-checkin): preflight OAuth server session state (7d6c7e8)
- fix(trae-checkin): require registered AHA DID for new claims (bbf321c)
- feat(trae): reuse configured AHA device identity for OAuth login (f8468b2)
- fix(trae): report current desktop client build to unlock newer models (0db6757)
- update models.json (3d1c4cd)
Full Changelog: v7.2.150...v2026.9.9.11-snapshot
v2026.9.7.20
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- chore(models): remove gpt-5.4 and gpt-5.4-mini models (31ec436)
- fix(aistudio): normalize thinking level to uppercase (9dfddd6)
- fix(watcher): preserve concurrent file updates during auth snapshot rescans (084f25c)
- fix(claude): avoid mid-conversation system splicing for advisor calls or results (7c2f6ce)
- fix(codex): scope usage limit errors to credentials and parse flexible quota resets (5ab0bca)
- feat(usage): propagate session and parent session hierarchy to usage reporting queue (580df36)
- chore(codex): update codex user-agent to 0.153.3 (c76dfd4)
- perf(auth): optimize scheduler result updates with targeted model shards (fa01468)
- feat(pluginhost): expose outbound HTTP wire profile to plugin requests (00c63a5)
- feat(antigravity): add conversation compaction support and capsule encryption (70f4560)
- fix(xai): support compaction fallback from payload input or previous response id (0e85eb4)
- fix(gemini): append trailing user turn for requests ending with model content (5dc428f)
- fix(claude): preserve non-result block positions during tool result alignment (8564142)
- fix(antigravity): omit tools when tool_choice is none (a76da71)
- fix(auth): preserve active cooldown deadlines on subsequent failures (1c22598)
- fix(antigravity): enable thinking summary when responses reasoning effort is set (e92f6cf)
- fix(claude): normalize codex agent messages in responses conversion (d2f7122)
- feat: add Aiberm sponser (63fd255)
- fix Aiberm sponser logo (578ac8f)
- feat: add Aiberm sponsorship information to README_JA.md (4cd8ee7)
- feat: add link to Aiberm in sponsorship section of README files (934fb79)
- feat(codebuddy-cn): add CodeBuddy CN (Tencent) provider (4a02897)
- feat(provider): CodebuddyCN (44efe06)
- docs(codebuddy-cn): fix example base-url (executor appends /chat/completions) (f91c3dd)
- feat(codebuddy-cn): add OAuth authentication (c67caaa)
- feat(codebuddy-cn): reproduce official TLS fingerprint (dfaf752)
- feat(deepseek-web): add browser-session provider (160d7d1)
- fix(deepseek-web): distinguish dead userToken from transient refresh failures (b815e25)
- fix(codebuddy-cn): keep reasoning_effort to enable thinking (1c70848)
- feat(codebuddy-cn): --local-model disable download frontend (8bc6072)
- feat(front): open file route (9cbfdc4)
- chore: docker hub (7e34004)
- chore: build docker images at releases (f824b24)
- feat: custom model.json (6fe2fad)
- feat: redefine the concept of prefix of model id. the prefix means alias and force-prefix means force-alias, so it shouldn't affect the logic of register and looking up model. (3e1432e)
- feat(provider): add TRAE SOLO CN desktop (TraeWork) provider support (bdf415e)
- feat: register TRAE SOLO CN static models from client cache (b3ad29f)
- feat: add TRAE SOLO CN daily checkin script (b4ea471)
- test & feat: check-in scripts of codebuddy-cn and traework-cn (b6b6226)
- fix(trae-checkin): classify 9074 as retryable server-side queueing (cdf27cb)
- feat(front): download management panel asset as @management.html (17277d5)
- fix(trae-checkin): emulate runtime device identity and TTNet headers (10982b5)
- fix(trae): make SSE and pi tool calls compatible (cee9117)
- fix(trae-checkin): handle current-device checkin state and code 9095 (d629d3b)
- fix(trae-checkin): reuse OAuth credential device identity by default (a58e6db)
- fix(trae-checkin): use official checked_in semantics and verify rewards (de54381)
- fix(trae-checkin): preflight OAuth server session state (7159276)
- fix(trae-checkin): require registered AHA DID for new claims (d4c9956)
- feat(trae): reuse configured AHA device identity for OAuth login (1780b69)
- fix(trae): report current desktop client build to unlock newer models (1ec1a66)
Full Changelog: v7.2.151...v2026.9.7.20
v2026.9.5.23
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- fix(trae-checkin): emulate runtime device identity and TTNet headers (c7cf103)
- fix(trae): make SSE and pi tool calls compatible (2fd5ce4)
Full Changelog: v2026.9.5.19...v2026.9.5.23
v2026.9.5.19
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- feat(codebuddy-cn): add CodeBuddy CN (Tencent) provider (ba4e45a)
- feat(provider): CodebuddyCN (1659c6d)
- docs(codebuddy-cn): fix example base-url (executor appends /chat/completions) (6a443eb)
- feat(codebuddy-cn): add OAuth authentication (39a8501)
- feat(codebuddy-cn): reproduce official TLS fingerprint (62da1bc)
- feat(deepseek-web): add browser-session provider (332c40c)
- fix(deepseek-web): distinguish dead userToken from transient refresh failures (dabbe8c)
- fix(codebuddy-cn): keep reasoning_effort to enable thinking (23b0871)
- feat(codebuddy-cn): --local-model disable download frontend (4ac5d23)
- feat(front): open file route (b3ddb01)
- chore: docker hub (79012b2)
- chore: build docker images at releases (106be44)
- feat: custom model.json (92f7ea8)
- feat: redefine the concept of prefix of model id. the prefix means alias and force-prefix means force-alias, so it shouldn't affect the logic of register and looking up model. (dee9d00)
- feat(provider): add TRAE SOLO CN desktop (TraeWork) provider support (590d10c)
- feat: register TRAE SOLO CN static models from client cache (9ba3377)
- feat: add TRAE SOLO CN daily checkin script (a1d8af2)
- test & feat: check-in scripts of codebuddy-cn and traework-cn (6d56916)
- fix(trae-checkin): classify 9074 as retryable server-side queueing (f821b8c)
- feat(front): download management panel asset as @management.html (8403c1f)
Full Changelog: v7.2.151...v2026.9.5.19
v2026.9.5.0
Linux release assets
CLIProxyAPI_<version>_linux_<arch>.tar.gzis the default Linux build. It supports dynamic library plugins and is built against a GLIBC 2.17 baseline.CLIProxyAPI_<version>_linux_<arch>_no-plugin.tar.gzis the portable Linux build for musl-based or older systems such as OpenWrt. It does not support dynamic library plugins.
FreeBSD release assets
CLIProxyAPI_<version>_freebsd_aarch64_no-plugin.tar.gzis the FreeBSD arm64 build. It is built without CGO and does not support dynamic library plugins.
Changelog
- feat(codebuddy-cn): add CodeBuddy CN (Tencent) provider (1046217)
- feat(provider): CodebuddyCN (e0c9793)
- docs(codebuddy-cn): fix example base-url (executor appends /chat/completions) (1cc660f)
- feat(codebuddy-cn): add OAuth authentication (a7a799f)
- feat(codebuddy-cn): reproduce official TLS fingerprint (b7ce800)
- feat(deepseek-web): add browser-session provider (8aa075e)
- fix(deepseek-web): distinguish dead userToken from transient refresh failures (2901ecc)
- fix(codebuddy-cn): keep reasoning_effort to enable thinking (bc695e7)
- feat(codebuddy-cn): --local-model disable download frontend (fbb1458)
- feat(front): open file route (32661bc)
- chore: docker hub (3a6234a)
- chore: build docker images at releases (d4a39ca)
- feat: custom model.json (32ba022)
- feat: redefine the concept of prefix of model id. the prefix means alias and force-prefix means force-alias, so it shouldn't affect the logic of register and looking up model. (2f606ad)
- feat(provider): add TRAE SOLO CN desktop (TraeWork) provider support (066eb9c)
- feat: register TRAE SOLO CN static models from client cache (8ec60f4)
Full Changelog: v7.2.149...v2026.9.5.0