Kai (Tam Nhu) Tran
3608bf71a1
feat: rebrand CCS as Claude Codex Switch ( #1658 )
...
Closes #1657
2026-07-22 14:23:42 -04:00
github-actions[bot]
39d31508a2
chore(release): 8.8.1-dev.1
2026-07-22 14:43:17 +00:00
Kai (Tam Nhu) Tran
0ef370fafe
Merge pull request #1650 from minhbi245/feat/codex-effort-dropdown
...
feat(ui): per-tier reasoning effort dropdown in model mapping (codex + grok)
2026-07-22 10:39:11 -04:00
Tam Nhu Tran
c23b6bee19
fix(ui): preserve untrusted origins in dev proxy
2026-07-22 10:36:38 -04:00
milesnguyen2405
30b54a0966
feat(ui): extend reasoning control to xai grok models
2026-07-22 11:53:07 +07:00
milesnguyen2405
e81fd80944
chore(ui): forward dev proxy origin for dashboard csrf guard
2026-07-22 11:29:45 +07:00
milesnguyen2405
e57bded451
feat(ui): add per-tier codex effort dropdown in model mapping
2026-07-22 11:29:04 +07:00
semantic-release-bot
51e8716630
chore(release): 8.8.1 [skip ci]
...
## [8.8.1](https://github.com/kaitranntt/ccs/compare/v8.8.0...v8.8.1 ) (2026-07-19)
### Hotfixes
* **docker:** select Alpine-compatible CLIProxy asset ([003342f ](https://github.com/kaitranntt/ccs/commit/003342f604a78e88fd958b3ef2e7d4506d41190c ))
2026-07-19 00:08:05 +00:00
Kai (Tam Nhu) Tran
67e16d65f4
Merge pull request #1646 from kaitranntt/kai/hotfix-docker-original-no-plugin
...
hotfix(docker): select Alpine-compatible CLIProxy asset
2026-07-18 20:04:14 -04:00
Tam Nhu Tran
003342f604
hotfix(docker): select Alpine-compatible CLIProxy asset
2026-07-18 19:55:07 -04:00
semantic-release-bot
a31f1ec79c
chore(release): 8.8.0 [skip ci]
...
## [8.8.0](https://github.com/kaitranntt/ccs/compare/v8.7.0...v8.8.0 ) (2026-07-18)
### Features
* add Sonnet 5 to Claude provider catalog ([c8a4b42 ](https://github.com/kaitranntt/ccs/commit/c8a4b429906d0c9e08dc8ea27625676ff15c4bba ))
* **cliproxy:** add xAI Grok provider ([54a2b47 ](https://github.com/kaitranntt/ccs/commit/54a2b4759b7bf831ba6801cb71f97b6aef24481c ))
* **codex:** add GPT-5.6 model catalog ([24eae8a ](https://github.com/kaitranntt/ccs/commit/24eae8ae8f0dec38e0e12b8bb1147ebc1e8a85ed )), closes [#1633 ](https://github.com/kaitranntt/ccs/issues/1633 )
* **pricing:** register Claude Sonnet 5 in the pricing registry ([1e63c37 ](https://github.com/kaitranntt/ccs/commit/1e63c37baf94468b855cf583453816fadcb209e8 ))
* support custom GHCP model selection ([631a515 ](https://github.com/kaitranntt/ccs/commit/631a515986cd2224c3d89d8498399700f19e22c7 ))
### Bug Fixes
* **auth:** preserve xAI profile compatibility ([44718e9 ](https://github.com/kaitranntt/ccs/commit/44718e98ef2c3f9ec2cbe7434edb33cd9eecb390 ))
* **bar:** preserve quota cache and reset semantics ([8996c92 ](https://github.com/kaitranntt/ccs/commit/8996c92fda4c71b702acf505d1cee4300586cac9 ))
* **bar:** show Claude and Codex pool quota ([f77ed33 ](https://github.com/kaitranntt/ccs/commit/f77ed33cc70f8cd6b7ffb92f235eefb7b0386309 ))
* cap native quota profile refresh fan-out ([#1627 ](https://github.com/kaitranntt/ccs/issues/1627 )) ([0f9a876 ](https://github.com/kaitranntt/ccs/commit/0f9a87619c84efd268b8b717b54fc7cd3a7e8a45 ))
* **ci:** isolate Bar command fast tests ([6dc199a ](https://github.com/kaitranntt/ccs/commit/6dc199a0383b6f6ac8080ae358cba230f89b1be6 ))
* claude model no get the 1m tag ([7f369f7 ](https://github.com/kaitranntt/ccs/commit/7f369f75dce8dbb1d5dde9b63c51219e46614533 ))
* **cliproxy:** harden xAI provider contracts ([4e4c949 ](https://github.com/kaitranntt/ccs/commit/4e4c949967f3aa112795e1bf0cc3ee8ebdbd5b3b ))
* **codex-auth:** reject aliased plugin cache paths ([234dce3 ](https://github.com/kaitranntt/ccs/commit/234dce31500b2b147a0cfe3035722242fea74c40 ))
* **codex-auth:** share plugin cache across profiles ([e5d4d86 ](https://github.com/kaitranntt/ccs/commit/e5d4d860b32e8f8ff97d2da9a76530c99bfb81a0 ))
* **codex:** preview joined migration TOML repair ([77e73dd ](https://github.com/kaitranntt/ccs/commit/77e73dd091c40fb2e9f91297b4030fb47ff1c08d )), closes [#1635 ](https://github.com/kaitranntt/ccs/issues/1635 )
* guard against missing modelBreakdowns in usage aggregation ([a7f3e4b ](https://github.com/kaitranntt/ccs/commit/a7f3e4bc0eebadfaa62c87306855ec19526bf08b ))
* keep agy websearch permissions enabled ([#1625 ](https://github.com/kaitranntt/ccs/issues/1625 )) ([05685d1 ](https://github.com/kaitranntt/ccs/commit/05685d1c21bab786a20e5cdccceb326b12a0e091 ))
* prevent default profile credential collision ([#1628 ](https://github.com/kaitranntt/ccs/issues/1628 )) ([343899f ](https://github.com/kaitranntt/ccs/commit/343899f6c1529cbeb6e0a518a61908fd3171f20f ))
* reject case-variant symlinked file paths ([#1629 ](https://github.com/kaitranntt/ccs/issues/1629 )) ([1ee7cac ](https://github.com/kaitranntt/ccs/commit/1ee7cac5552313018bf14100a3393b90b31dbcfd ))
* strip stale Gemini extended context suffixes ([5943c8f ](https://github.com/kaitranntt/ccs/commit/5943c8fa3cc16814e7f3cd44279f1a11be3b3609 ))
* validate CCS Bar launch shim target integrity ([#1626 ](https://github.com/kaitranntt/ccs/issues/1626 )) ([3621f8d ](https://github.com/kaitranntt/ccs/commit/3621f8dcb1454cc9c6d25669cdd46f227282fbe7 ))
### Documentation
* **codex-auth:** document shared plugin cache ([3103af5 ](https://github.com/kaitranntt/ccs/commit/3103af5355448b9137828b062b50a64f8639902f ))
### Tests
* **codex-auth:** cover profile cache repair entry points ([960d6e2 ](https://github.com/kaitranntt/ccs/commit/960d6e23a0c85aef6fceef2afbe789e285c5d940 ))
2026-07-18 23:25:24 +00:00
Kai (Tam Nhu) Tran
197c43f164
Merge pull request #1645 from kaitranntt/kai/release/dev-to-main-20260718
...
feat: promote dev to main
2026-07-18 19:21:16 -04:00
github-actions[bot]
78a7335529
chore(release): 8.7.0-dev.12
2026-07-18 23:11:51 +00:00
Kai (Tam Nhu) Tran
a8bf7d1a9a
Merge pull request #1641 from minhbi245/feat/xai-grok-provider
...
feat(cliproxy): add xAI Grok provider
2026-07-18 19:07:33 -04:00
Tam Nhu Tran
44718e98ef
fix(auth): preserve xAI profile compatibility
2026-07-18 19:04:37 -04:00
Tam Nhu Tran
4e4c949967
fix(cliproxy): harden xAI provider contracts
2026-07-18 19:04:07 -04:00
Tam Nhu Tran
90c0409aac
Merge remote-tracking branch 'origin/dev' into kai/review/1641-xai-grok
2026-07-18 18:14:56 -04:00
github-actions[bot]
66189250a3
chore(release): 8.7.0-dev.11
2026-07-18 22:00:21 +00:00
Kai (Tam Nhu) Tran
4998153205
Merge pull request #1644 from kaitranntt/kai/fix/fast-bucket-bar-isolation
...
fix(ci): isolate Bar command fast tests
2026-07-18 17:54:13 -04:00
Tam Nhu Tran
6dc199a038
fix(ci): isolate Bar command fast tests
2026-07-18 17:46:53 -04:00
Kai (Tam Nhu) Tran
be97e43503
Merge pull request #1643 from kaitranntt/kai/fix/1642-bar-pool-quota
...
fix(bar): show Claude and Codex pool quota
2026-07-18 17:40:17 -04:00
Tam Nhu Tran
8996c92fda
fix(bar): preserve quota cache and reset semantics
2026-07-18 17:28:36 -04:00
Tam Nhu Tran
f77ed33cc7
fix(bar): show Claude and Codex pool quota
2026-07-18 17:13:40 -04:00
minhbi245
54a2b4759b
feat(cliproxy): add xAI Grok provider
2026-07-17 00:02:12 +07:00
github-actions[bot]
1b67c7840b
chore(release): 8.7.0-dev.10
2026-07-15 15:56:56 +00:00
Kai (Tam Nhu) Tran
802ea04712
Merge pull request #1640 from kaitranntt/kai/fix/1639-ccsx-profile-plugin-cache-v2
...
fix(codex-auth): share plugin cache across profiles
2026-07-15 11:52:26 -04:00
Tam Nhu Tran
234dce3150
fix(codex-auth): reject aliased plugin cache paths
2026-07-15 11:36:15 -04:00
Tam Nhu Tran
3103af5355
docs(codex-auth): document shared plugin cache
2026-07-15 10:24:13 -04:00
Tam Nhu Tran
960d6e23a0
test(codex-auth): cover profile cache repair entry points
2026-07-15 10:24:13 -04:00
Tam Nhu Tran
e5d4d860b3
fix(codex-auth): share plugin cache across profiles
2026-07-15 10:24:13 -04:00
github-actions[bot]
463a1ffa50
chore(release): 8.7.0-dev.9
2026-07-13 09:44:06 -04:00
github-actions[bot]
612a664259
chore(release): 8.7.0-dev.8
2026-07-13 13:37:36 +00:00
Kai (Tam Nhu) Tran
44c2e8ccc5
Merge pull request #1634 from KennethWKZ/feat/support-claude-sonnet-1m
...
fix: preserve saved Claude extended-context preference
2026-07-13 09:27:02 -04:00
Tam Nhu Tran
72f00bac1f
Merge remote-tracking branch 'origin/dev' into kai/review/pr-1634
2026-07-13 09:26:00 -04:00
Kai (Tam Nhu) Tran
073e795f61
Merge pull request #1638 from tom-price/fix/usage-aggregator-missing-modelbreakdowns
...
fix: guard against missing modelBreakdowns in usage aggregation
2026-07-13 09:25:43 -04:00
Tam Nhu Tran
b52e42eba4
Merge remote-tracking branch 'origin/dev' into kai/review/pr-1634
2026-07-13 09:16:46 -04:00
Tam Nhu Tran
5943c8fa3c
fix: strip stale Gemini extended context suffixes
2026-07-13 09:14:04 -04:00
Tom Price
a7f3e4bc0e
fix: guard against missing modelBreakdowns in usage aggregation
...
The CCS Bar server was crash-looping with:
[X] Cannot read properties of undefined (reading 'length')
Usage records from partially-written or legacy persisted files (e.g. a
Codex rollout scanned mid-write) can be missing modelBreakdowns despite
the type. getHourlyRequestCount() and the daily/monthly/hourly merges
read it unguarded, and the Bar re-runs aggregation every ~5 min and
restarts on crash - hence the loop.
Default modelBreakdowns to [] at every use site and fall back to 0 for
request count. Regression test added for all three merges.
I don't normally work in TS and this was heavily tool-assisted, but it
has fixed the crash loop on my machine.
2026-07-12 21:23:31 -04:00
github-actions[bot]
507ce278b9
chore(release): 8.7.0-dev.7
2026-07-10 17:30:09 +00:00
Kai (Tam Nhu) Tran
58c02a53d9
Merge pull request #1637 from kaitranntt/kai/feat/1633-gpt-5-6-models
...
feat(codex): add GPT-5.6 model catalog
2026-07-10 13:20:50 -04:00
Kai (Tam Nhu) Tran
ab09c96210
Merge pull request #1636 from kaitranntt/kai/fix/1635-codex-toml-recovery
...
fix(codex): preview joined migration TOML repair
2026-07-10 13:20:35 -04:00
Tam Nhu Tran
24eae8ae8f
feat(codex): add GPT-5.6 model catalog
...
Closes #1633
2026-07-10 08:54:48 -04:00
Tam Nhu Tran
77e73dd091
fix(codex): preview joined migration TOML repair
...
Closes #1635
2026-07-10 08:54:18 -04:00
Kenneth Wong
7f369f75dc
fix: claude model no get the 1m tag
2026-07-10 00:39:19 +08:00
github-actions[bot]
da6c99e3df
chore(release): 8.7.0-dev.6
2026-07-08 14:22:20 +00:00
Kai (Tam Nhu) Tran
5afd294c7e
Merge pull request #1631 from sgaluza/sergey/add-claude-sonnet-5-pricing
...
feat(pricing): register Claude Sonnet 5 in the pricing registry
2026-07-08 10:18:03 -04:00
Sergey Galuza
1e63c37baf
feat(pricing): register Claude Sonnet 5 in the pricing registry
...
Add explicit `claude-sonnet-5` and `claude-sonnet-5-thinking` entries to the
web-server PRICING_REGISTRY at the standard Sonnet rates ($3/$15 in/out,
$3.75/$0.30 cache).
The model catalog and dashboard already ship Sonnet 5 (it is the Claude
default), but pricing was missing: getModelPricing() fell through to
UNKNOWN_MODEL_PRICING, which only coincidentally matches Sonnet rates. As a
result hasCustomPricing('claude-sonnet-5') returned false and getKnownModels()
omitted it, so Sonnet 5 was treated as an unknown model in cost accounting and
known-model listings.
Registering it explicitly makes the pricing intentional and consistent with
every other Claude model, without changing any resolved values.
Built [OnSteroids](https://onsteroids.ai )
2026-07-07 14:51:43 +02:00
github-actions[bot]
f1eee3029e
chore(release): 8.7.0-dev.5
2026-07-02 15:15:30 +00:00
Kai (Tam Nhu) Tran
b95f95317e
Merge pull request #1630 from kaitranntt/kai/feat/copilot-model-ui
...
feat: support custom GHCP model selection
2026-07-02 11:11:20 -04:00
Tam Nhu Tran
c8a4b42990
feat: add Sonnet 5 to Claude provider catalog
2026-07-02 10:31:42 -04:00