Files
ccs/CHANGELOG.md
T
semantic-release-bot 3783ddab38 chore(release): 7.54.0 [skip ci]
## [7.54.0](https://github.com/kaitranntt/ccs/compare/v7.53.0...v7.54.0) (2026-03-16)

### Features

* add proxy setup using undici and update undici version ([c542606](https://github.com/kaitranntt/ccs/commit/c54260658232215ccc6c23fc1df29db62c591ab6))
* **ci:** harden AI review with adversarial red-team prompt ([19f7091](https://github.com/kaitranntt/ccs/commit/19f70914a987bef9278d5e5e2dc77d31ef00c0b7)), closes [#731](https://github.com/kaitranntt/ccs/issues/731)
* **claude-extension:** add binding workflow ([a2f5310](https://github.com/kaitranntt/ccs/commit/a2f531016d29093c957c1000860fc83e2dc55cb4))
* **config:** add Claude IDE extension setup flow ([b82f10e](https://github.com/kaitranntt/ccs/commit/b82f10e63952db82ebe2e66fc584c5da231efb1d))
* **docker:** publish release images on stable tags ([25bb806](https://github.com/kaitranntt/ccs/commit/25bb806ecdbf7e7b3b68e20b3f0557f9503edefa))
* **i18n:** add Japanese dashboard locale ([8b5158b](https://github.com/kaitranntt/ccs/commit/8b5158bec5574c884c2937ac804bc9cb2f977538))

### Bug Fixes

* add missing newline at end of fetch-proxy-setup.ts ([3324053](https://github.com/kaitranntt/ccs/commit/33240534c3927eac037c0ebc703ffd44d4a3a65e))
* align proxy routing across fetch and downloader ([fd5d16f](https://github.com/kaitranntt/ccs/commit/fd5d16f3f3cebe9b965d30bbc5a05d73011f500e))
* **ci:** address code review findings for hardened AI review ([b528bcb](https://github.com/kaitranntt/ccs/commit/b528bcbf35bed16bc711ad903c41788e7cf4ad52))
* **ci:** load review prompt from base branch to prevent prompt injection ([dcb4635](https://github.com/kaitranntt/ccs/commit/dcb46356f3fb65dfe065433472d73f5707bd2ce3))
* **ci:** remove maintainability baseline gate blocking releases ([e6ae052](https://github.com/kaitranntt/ccs/commit/e6ae0525271eb631b0c8fff9c18f570f1dcb5b14))
* **ci:** use full path in warning and add workflows/ to deep review triggers ([7828780](https://github.com/kaitranntt/ccs/commit/78287807f8c441db74d17630b7dad3fede42e997))
* **cliproxy:** validate tier thinking against model caps ([88d1dc1](https://github.com/kaitranntt/ccs/commit/88d1dc1ddb6dc2807edf89045b808cdb77c0bf3b))
* **config:** guard Claude extension metadata ([56ba379](https://github.com/kaitranntt/ccs/commit/56ba37911a2fc1465c1f793614ac19e4d7bcf004))
* **copilot:** stop mutating config on read ([7bd4049](https://github.com/kaitranntt/ccs/commit/7bd404960270fddf29e1c2129c64d033221362cc))
* **docker:** harden release image publishing ([314053b](https://github.com/kaitranntt/ccs/commit/314053b35ce9a25ca216b711fcec5b87d0cd89fe))
* harden global fetch proxy handling ([f50c962](https://github.com/kaitranntt/ccs/commit/f50c9625de6cc4d93c5db439af9349cb5e36f14b))
* **i18n:** polish Japanese dashboard copy ([e28f87b](https://github.com/kaitranntt/ccs/commit/e28f87bc9c7067e4c3a8c2105c42bb9f5266f7e4))
* normalize stale copilot raptor-mini model ([c409a45](https://github.com/kaitranntt/ccs/commit/c409a4522c21d439657026aab2b915c4817142ea))
* **sidebar:** move claude extension to compatible ([337dd18](https://github.com/kaitranntt/ccs/commit/337dd188cc240e74ea2e434ca99280360c3f9ce1))

### Documentation

* **readme:** clarify copilot config save behavior ([298b591](https://github.com/kaitranntt/ccs/commit/298b591d1499ff0da16c00decbddb1e74cb5a0b2))
* **readme:** document Claude IDE extension setup ([56db603](https://github.com/kaitranntt/ccs/commit/56db6035f51058a6ff7e3e245448b8e6fbf35f91))

### Styles

* **claude-extension:** apply formatter output ([6724ea5](https://github.com/kaitranntt/ccs/commit/6724ea52c2cb41ca3d71e663fafce00e040b5425))
2026-03-16 12:55:00 +00:00

277 KiB
Raw Blame History

7.54.0 (2026-03-16)

Features

  • add proxy setup using undici and update undici version (c542606)
  • ci: harden AI review with adversarial red-team prompt (19f7091), closes #731
  • claude-extension: add binding workflow (a2f5310)
  • config: add Claude IDE extension setup flow (b82f10e)
  • docker: publish release images on stable tags (25bb806)
  • i18n: add Japanese dashboard locale (8b5158b)

Bug Fixes

  • add missing newline at end of fetch-proxy-setup.ts (3324053)
  • align proxy routing across fetch and downloader (fd5d16f)
  • ci: address code review findings for hardened AI review (b528bcb)
  • ci: load review prompt from base branch to prevent prompt injection (dcb4635)
  • ci: remove maintainability baseline gate blocking releases (e6ae052)
  • ci: use full path in warning and add workflows/ to deep review triggers (7828780)
  • cliproxy: validate tier thinking against model caps (88d1dc1)
  • config: guard Claude extension metadata (56ba379)
  • copilot: stop mutating config on read (7bd4049)
  • docker: harden release image publishing (314053b)
  • harden global fetch proxy handling (f50c962)
  • i18n: polish Japanese dashboard copy (e28f87b)
  • normalize stale copilot raptor-mini model (c409a45)
  • sidebar: move claude extension to compatible (337dd18)

Documentation

  • readme: clarify copilot config save behavior (298b591)
  • readme: document Claude IDE extension setup (56db603)

Styles

  • claude-extension: apply formatter output (6724ea5)

7.53.0 (2026-03-11)

Features

  • add API profile lifecycle discover/copy/export/import parity (02c8174)
  • api: add Anthropic direct API key support (fedb4d4), closes #688
  • api: add llama.cpp support as local model provider (0ca6428), closes #690
  • auth: add --bare flag and MCP server sync for profiles (bc9b044), closes #691 #692

Bug Fixes

  • api: complete anthropic direct profile support (1f29fa0)
  • auth: preserve bare profile behavior across runtime and sync (8f8684c)
  • ci: remove LOC count from maintainability gate (d3ede45)
  • ci: remove maintainability baseline gate blocking releases (03a0fb2)
  • clarify CLIProxy dashboard install lifecycle (a4b626a)
  • cliproxy: handle Claude OAuth quota 401 (7e8f9e8)
  • cliproxy: poll paste-callback auth urls (b25b165)
  • cliproxy: preserve Claude fallback when quota is unavailable (6ed95a2)
  • cliproxy: preserve kiro paste-callback start route (86ca180)
  • cliproxy: sync claude 4.6 selector defaults (3d183fe)
  • cliproxy: use management auth-url route in paste callback (6fcd924)
  • cliproxy: use management oauth-callback in paste flow (fa02702)
  • codex: standardize haiku defaults on gpt-5.1-codex-mini (f4a7d4d)
  • complete codex tool sanitization coverage (4baed01)
  • config: align claude defaults across catalogs (bea3084)
  • config: update claude base models to latest (09aeec5)
  • config: use correct codex haiku model ID (gpt-5-codex-mini) (8a9751a), closes #602
  • confirm risky cliproxy installs in dashboard (aed7beb)
  • copilot: surface upstream model limits (8a5ed65)
  • harden profile lifecycle validation and dashboard UX flows (d6fc5dd)
  • hooks: handle thinking blocks in image analyzer response parsing (0060c77), closes #511
  • improve quota diagnostics and oauth refresh handling (fc3600e)
  • restart CLIProxy after dashboard version install (e14df1f)
  • stop untracked CLIProxy installs safely (ad01196)
  • strip unsupported gemini and codex tool fields (8cfd86f)
  • sync error code docs links (2be5c5a)
  • ui: update copilot default claude model (4d0ded3)
  • ui: use preset apiKeyPlaceholder when creating profiles (6078de7)

Tests

  • cover llama.cpp help parity (9bcb195)
  • hooks: add image analyzer regression coverage (5097375)

CI

  • harden AI review for external PRs (becfc57)

7.52.2 (2026-03-04)

Bug Fixes

  • ci: remove LOC count from maintainability gate (619c47d)
  • ci: strip ANSI codes before detecting published release (a8d7f7c)
  • cliproxy: reduce gemini alias model bloat (276649f)
  • copilot: harden daemon lifecycle and validate config updates (1fd128e)
  • copilot: improve daemon liveness and flag aliases (4b1cda2)
  • copilot: refine ownership checks and command error handling (930d66f)
  • copilot: sync alias UX and harden daemon stop safety (f4678d6)

Code Refactoring

  • daemon: share process ownership guard for safe shutdown (5ad2416)

Tests

  • cliproxy: strengthen alias non-enrichment assertions (e28d9c8)

CI

  • release: use PAT_TOKEN for semantic-release branch protection bypass (91280e3)

7.52.1 (2026-03-03)

Bug Fixes

  • ci: strip ANSI codes before detecting published release (6e16f1c)

7.52.0 (2026-03-03)

Features

  • analytics: integrate CLIProxy multi-provider usage into dashboard (c5124a9)
  • api: add Alibaba Coding Plan preset and providers promotion (8811e53)
  • continuity: support cross-profile continuity inheritance from account profiles (0b9f982)
  • i18n: add comprehensive Vietnamese dashboard locale (7893436)
  • i18n: Added support for Chinese language pack (7ffb8a4)
  • pricing: fix claude sonnet 4.6 and claude opus 4.6 pricing (9a7ca3f)

Bug Fixes

  • agy: harden preset canonicalization and migration coverage (747c706)
  • agy: harden self-migration across settings load/update paths (3a26aba)
  • agy: normalize sonnet 4.6 model ids and migrate legacy thinking alias (8a2b554)
  • agy: remove deprecated 4.5 selector options (5913f73)
  • api-profiles: keep AGY denylist when droid provider is set (2710139)
  • auth: harden continuity inheritance resolution (8a45727)
  • auth: scope km alias mapping to settings profiles (d827c3a)
  • ci: harden release workflows against PAT checkout failures (b35c85d)
  • ci: remove PAT dependency from release workflow checkouts (a259d95)
  • cliproxy: denylist deprecated agy 4.5 models (f63e2cd)
  • cliproxy: harden agy model canonicalization and migration paths (0b57e41)
  • cliproxy: normalize iflow aliases for explicit routing (7e471e6)
  • cliproxy: normalize stale iflow model aliases (546c4ee)
  • cliproxy: restore agy legacy 4.5 lookup compatibility (ed05cfc)
  • config: merge legacy and unified continuity maps (1eb41cc)
  • ghcp: improve oauth failure diagnostics in device flow (c2f564a)
  • i18n: complete Vietnamese dashboard copy QA polish (b07c62c)
  • i18n: harden unstable dialog and complete cursor locale key (552eee3)
  • i18n: polish remaining Vietnamese copy for dashboard context (f3f315e)
  • i18n: refine Vietnamese dashboard translation quality (758fcc7)
  • pricing: handle date-stamped 4.6 thinking model IDs (d31f85b)
  • respect auto_update preference by disabling Claude auto-updater (4cdb659)
  • security: harden API endpoints and resolve PR #674 review findings (a4c5bb7)
  • ui: improve providers badge readability and albb preset (3b38f1a)
  • ui: restore scrolling in API profile create dialog (6f8514b)
  • usage: coalesce refresh and force live sync on refresh (09ce1a9)
  • web-server: run usage cleanup during dashboard shutdown (e8519b6)

Documentation

  • i18n: add dashboard localization guide and links (2dddf02)

Code Refactoring

  • routes: resolve DRY violations, config race, and error leaks (e255855)

Tests

  • auth: cover legacy alias isolation for continuity (26f4fb3)
  • pricing: cover Claude 4.6 cache token cost rates (91050bf)
  • usage: add cliproxy sync and integration coverage (383ac94)

CI

  • release: use PAT_TOKEN for semantic-release branch protection bypass (343c36f)

7.51.0 (2026-02-26)

Features

  • accounts-ui: add history sync learning visualization (6cfc8d4)
  • accounts-ui: redesign accounts dashboard to column layout (12c7a21)
  • accounts: add advanced deeper continuity mode and claude pool discoverability (b6475ba)
  • agy: add power-user bypass for responsibility acknowledgement (d3c271a)
  • api: add --target to api command (3dacb39)
  • api: persist profile target metadata (461236e)
  • api: support profile target in routes (e833054)
  • cliproxy: accept target in variant routes (5b60784)
  • cliproxy: add target support to subcommands (d2d1d59)
  • cliproxy: persist target on variants (f4a6927)
  • config: support legacy profile target overrides (9a63f9b)
  • dashboard: add dedicated Factory Droid diagnostics page (bc079bc)
  • dashboard: enrich droid docs and quick settings controls (031dcd9)
  • droid: align BYOK provider mapping for ccsd (60b1c04), closes #632
  • droid: sync reasoning effort across CLI and dashboard (eedb53b)
  • pricing: add MiniMax M2.5/M2.5-lightning and Qwen3 series (max/plus/flash/coder) model pricing (089aa08)
  • runtime: run cliproxy profiles on droid (8a2a7c3)
  • ui: add target controls to cliproxy variants (543ec5f)
  • ui: add target support to API profile dashboard (ca78e63)
  • ui: add updates center with support matrix (e9d2515)
  • ui: redesign updates center into action inbox (78eac7d)
  • ui: support editing profile default target (db38ccc)
  • ui: surface cliproxy target in provider editor (6aae3ba)
  • ui: surface updates center across dashboard (c7c4c87)

Bug Fixes

  • accounts-ui: add actionable continuity controls and claude deep-link (a974efb)
  • accounts-ui: condense sync guidance and remove redundant controls (286180e)
  • accounts-ui: move action center content into left column (cfdad81)
  • accounts-ui: remove extra left-column wrapper layers (5996f9d)
  • accounts-ui: simplify left action column hierarchy (7fccb18)
  • accounts-ui: soften details trigger hover state (1708128)
  • accounts: focus dashboard on auth profiles and legacy context onboarding (10c08b9)
  • accounts: improve shared-context editing and discoverability (5c6fe20)
  • agy: align responsibility flow with issue #509 (3148014), closes 622/#619
  • agy: enforce multi-step responsibility acknowledgement for antigravity oauth (3b1271b)
  • agy: use type-only import for ui checklist value (7b4bd80)
  • api: remove stale legacy profile target mappings (e32dedc)
  • auth: close shared-context isolation edge cases (0b070a3)
  • auth: harden agy safety endpoints and config writes (b602ab9)
  • auth: harden shared-context isolation and config safety (0309630)
  • auth: harden shared-context isolation edge cases (7d5e604)
  • ci: align maintainability baseline for PR merge checks (a8b8e63)
  • ci: refresh maintainability baseline for dev release (d6fd598)
  • cli: improve cliproxy target parsing edge cases (8d95de9)
  • cliproxy-sync: honor profile settings paths and targets (ac1c744)
  • cliproxy: normalize deprecated antigravity Claude aliases (ff9dbb3)
  • dashboard: align droid config diagnostics with factory paths (c6d2e71)
  • dashboard: guard droid docs links for older API payloads (e7f3b3f)
  • dashboard: make droid docs links always clickable (1704b80)
  • droid: add structural exec passthrough for ccsd (5963ba9)
  • droid: avoid interactive model arg prompt pollution (f1567c0)
  • droid: harden exec passthrough and add integration coverage (ce44d2e)
  • droid: restore tabbed layout and stabilize save state (a88fd68)
  • help: align cliproxy status and provider filter docs (b658b20)
  • iflow: replace placeholder model defaults to prevent 406 (03bc414)
  • maintainability: make gate parallel-pr friendly (fdb32e2)
  • pricing: normalize model aliases for MiniMax and Qwen (7ac5e3e)
  • proxy: harden AGY risk persistence and confirm UX (36d5cb7), closes #509
  • safety: unify add-account typed risk phrase (c0eb786)
  • shared: harden markdown traversal and parsing (46b4f9c)
  • shared: polish shared data UX and route persistence (f9f063c)
  • shared: resolve strict ui build typing errors (787ebbc)
  • shared: support file-based agents and recursive commands (346fa5f)
  • targets: sanitize invalid persisted target values (2bd3c40)
  • ui: align cliproxy log polling with existing API routes (a7db16c)
  • ui: align cliproxy target schema typing (1c7e4e1)
  • ui: align updates page with dashboard layout patterns (d47efc7)
  • ui: de-surface updates center from primary navigation (69378ad)
  • ui: harden target update flows in profile editors (d385bd1)
  • ui: improve agy auth UX and flow resilience (6e20cdc)
  • ui: keep home route at root without last-route redirect (c130e9a)
  • ui: move agy power-user mode to proxy settings (30dccb1), closes #509
  • ui: redesign updates page as changelog-first layout (4736445)
  • ui: remove nested sidebar list markup (1698ead)
  • ui: tighten updates action row type narrowing (ae7ab59)
  • ui: unify gemini and agy safety warning banner (e22d331), closes #509
  • websearch: support Gemini positional prompt mode (0d09604)

Documentation

  • cli: document target defaults and ccsd cliproxy usage (172e599)
  • readme: document dashboard updates center (0a5b12b)

Code Refactoring

  • dashboard: reuse compatible CLI settings editor stack (e9eab71)
  • dashboard: switch droid settings I/O to async fs (20e48b3)
  • ui: remove unused last-route restore helpers (766cc1b)

Tests

  • web-server: cover profile and variant target parsing (2e8c7a3)

7.50.0 (2026-02-24)

Features

  • auth: add opt-in shared context groups across accounts (4fed74c)

Bug Fixes

  • cliproxy: prevent agy model reset and add sonnet 4.6 models (bebb758)

7.49.1 (2026-02-24)

Bug Fixes

  • cliproxy: prevent blank page in remote mode (4eb2be7)
  • cliproxy: strengthen account safety warning and redesign alert UI (00495b6)

7.49.0 (2026-02-23)

Features

  • memory: share project memory across account instances (e2623e6)

Bug Fixes

  • ci: auto-close released issues in stable release workflow (b6f2d5d)
  • codex: canonicalize dashboard presets and migrate suffixed settings (be96b84)
  • codex: preserve codex tier efforts in auto thinking (db80f85)
  • codex: validate tier thinking values before suffixing (57e14cf)
  • memory: use async fs APIs to satisfy maintainability gate (c6c44d0)
  • resolve package.json version conflict from main merge (6840523)
  • web-server: detect symlinked shared entries (e3dbc67)
  • web-server: harden shared route symlink scanning (498b66d)

7.48.1 (2026-02-23)

Bug Fixes

  • ci: enforce parity gate and stabilize test execution (0aed60f)

7.48.0 (2026-02-22)

Features

  • cliproxy: add Claude quota windows and account failover (2385d90)

Bug Fixes

  • cliproxy: add gemini 3.1 preview alias compatibility (653f809)
  • cliproxy: close remaining quota edge-case gaps (8c790f4)
  • cliproxy: harden antigravity alias generation (63619cb)
  • cliproxy: harden quota guards and review follow-ups (ca58cb5)
  • cliproxy: keep canonical codex model ids in settings (a81176d)
  • cliproxy: keep remote-proxy client under maintainability limit (88be99f)
  • cliproxy: normalize codex effort aliases without reasoning proxy (742b5ed)
  • cliproxy: normalize provider-aware Claude model IDs (6429781)
  • cliproxy: prevent false remote timeout on reachable proxy (34292ca)
  • cliproxy: split claude quota fetcher for maintainability gate (9371a72)
  • core: resolve edge cases and hardcoded drift (343ec95)
  • persist: add auto-approve permission flags (e3255e5)
  • persist: harden persist restore safety and edge cases (29cceb3)
  • persist: resolve CI gate and review test gaps (61bcd4d)
  • refactor: address PR review follow-up findings (6074fcb)
  • types: use type-only import for composite tier config (af6aa2d)

Documentation

  • cliproxy: add normalizer API usage examples (187c6f7)

Code Refactoring

  • core: centralize claude paths and command parsing (8d2ec86)

7.47.0 (2026-02-20)

Features

  • quota: add GitHub Copilot quota checks for ghcp and copilot (8d9d498)
  • thinking: complete thinking UX/DX for all providers (c48ed2e), closes #583

Bug Fixes

  • api: sanitize preset help text rendering (5b12ce7)
  • cliproxy: add Kimi model catalog, sync, and pricing to dashboard (3767b95), closes #581
  • cliproxy: add kimi-k2 pricing and kimi catalog tests (dd38df6)
  • cliproxy: address review feedback on kimi catalog (c73a26c)
  • cliproxy: harden provider alias and refresh edge cases (a71496c)
  • cliproxy: normalize codex model and provider routing (ecc4a3f)
  • cliproxy: warn gemini and agy users about issue 509 (476eabe)
  • delegation: strip CLAUDECODE env var to bypass nested session guard (4303ee4), closes #588
  • delegation: strip claudecode in core delegation spawn paths (50412dc), closes #588
  • execution: strip claudecode in remaining claude paths (8e57d59), closes #588
  • profile: close km legacy kimi compatibility gaps (0bf00b2)
  • profile: handle km compatibility for legacy kimi api users (cf8070b)
  • profiles: reset form state on preset transitions (14242b5)
  • quota: address ghcp review follow-ups (8201204)
  • spawn: sanitize claudecode in shared claude env builders (d25eda8), closes #588
  • test: pin real child_process passthrough refs (04e4e61)
  • test: prevent child_process mock cross-test leakage (5b164a6)
  • test: scope child_process mock to test lifecycle (873b7ad)
  • thinking: handle clear no-op and tighten override coverage (954baec)
  • thinking: harden codex reasoning controls across cli and dashboard (92e2ec1)
  • ui: harden cliproxy panel and proxy edge handling (c18adc9)
  • ui: harden provider preset/icon typing (b317717)
  • ui: make api profile dialog scrollable on small screens (faa610f)
  • ui: normalize ghcp quota tooltip and labels (2c5b2af)
  • ui: replace stale BASE_URL references in api client (5a78626)

Documentation

  • spawn: document claudecode env sanitization behavior (f2ffb81), closes #588

Code Refactoring

  • cliproxy: address review feedback on parity and refresh flow (39593c1)
  • cliproxy: centralize provider auth capability metadata (bd8daac)
  • cliproxy: resolve remaining review parity and cleanup nits (7e527af)
  • cliproxy: use shared default port in management paths (90b8d04)
  • commands: share cliproxy default port for setup and help (688f3e3)
  • presets: centralize shared provider preset catalog (21d6754)
  • ui: centralize default ports and add parity test (63f4221)
  • ui: centralize provider metadata and fallbacks (9ad8e64)
  • ui: centralize provider metadata for setup wizard (a53e6cb)
  • ui: replace remaining hardcoded port defaults (70116cb)
  • ui: unify api base path for cursor and copilot hooks (feb556d)
  • ui: use shared default proxy port in settings cards (5788ddc)

Tests

  • delegation: add regression coverage for claudecode stripping (80a84ed), closes #588

7.46.0 (2026-02-17)

Features

  • cliproxy: add Kimi as OAuth CLIProxy provider (08b2a67), closes #574
  • cliproxy: expose codex weekly reset schedule in quota views (4fc19c4)
  • cliproxy: rename kimi API preset to km, add kimi to UI (f451f4e)
  • cursor: harden daemon integration and model discovery (c639cef)
  • targets: add multi-target CLI adapter system (Droid support) (7d7054e)
  • targets: support CCS_DROID_ALIASES argv0 mapping (025218a)
  • ui: add Kimi provider logo with dark background (6961fb0)

Bug Fixes

  • cliproxy: add kimi to wizard constants and image analysis config (ddd5b15)
  • cliproxy: log unknown codex quota window labels (9031e5a)
  • core: prevent GLMT proxy leaks in child lifecycle (53e18d4)
  • cursor: fallback when requested model is unavailable (fae8716)
  • cursor: resolve review feedback and harden edge cases (4798741)
  • targets: close all remaining multi-target droid edge cases (0431adf)
  • targets: DRY signal handling, remove redundant guards, harden config manager (02af8d5)
  • targets: harden adapter lifecycle and droid model edge cases (3da3407)
  • targets: harden edge cases from parallel code review (3191a4a)
  • targets: run cleanup before adapter launch exits (812bb5c)
  • targets: snapshot active profiles during droid prune (15d6c06)
  • test: add kimi to provider tests, remove merge conflict marker (0fe195c)

Documentation

  • provider: clarify kimi base profile endpoint (e33164f)
  • targets: document built-in and env droid aliases (91edc95)

Styles

  • format source and test files (539afea)

Code Refactoring

  • cliproxy: DRY provider lists into single source of truth (94b03c7)

CI

  • ai-review: switch from CLIProxy to GLM API for code reviews (55ecbce)
  • ai-review: switch from CLIProxy to GLM API for code reviews (f81c562)

7.45.0 (2026-02-14)

Features

  • cursor-ui: restore Cursor dashboard UX and icon assets (7ab7a15), closes #555
  • cursor: sync model mapping across config and raw settings (7b73658), closes #555

Bug Fixes

  • cursor-settings: remove sync fs calls in settings sync (4f086aa)
  • cursor-ui: label cursor dashboard as beta (b40fe86)
  • cursor-ui: restore info card order and list scrolling (decdffe)

7.44.0 (2026-02-14)

Features

  • cliproxy: add CLI edit command for composite variants (43e73f3)
  • cliproxy: add composite variant CLI wizard (4926c20), closes #506
  • cliproxy: add composite variant runtime execution (44b30b8), closes #506
  • cliproxy: add composite variant type definitions (3d207fa), closes #506
  • cliproxy: add dashboard CRUD for composite variants (1ebd9f4)
  • cliproxy: add explicit start and restart commands (8395364)
  • cliproxy: add per-tier thinking config for composite variants (ed22c1a)
  • cliproxy: add provider error detection for composite fallback (478e9e8)
  • cliproxy: clarify codex effort mapping and preset UX (945db1d)
  • cliproxy: extend composite schema with fallback and thinking fields (20d6079), closes #506
  • cliproxy: implement composite variant CRUD and settings (c58fdc9), closes #506
  • cliproxy: wire composite variant into main execution flow (07bef9f), closes #506
  • codex: add gpt-5.3 preset defaults (7fddb63)
  • codex: keep gpt-5.2 catalog entry (d6aa1d9)
  • cursor: add auth module with SQLite auto-detect and types (56270d9), closes #519 #517
  • cursor: add config integration and dashboard routes (93dafa0)
  • cursor: add core protobuf encoder/decoder and executor (9daf943)
  • cursor: add daemon lifecycle, models catalog, and CLI commands (aaa31c6), closes #520 #521 #522
  • cursor: complete daemon wiring and add dedicated dashboard page (be9d7cf)
  • cursor: namespace FIELD constants and implement true streaming SSE (#531, #535) (4e5b502)

Bug Fixes

  • analytics: stabilize responsive row alignment (0cc1f11)
  • cli: add kiro auth-method flag wiring and help (e425f47), closes #552 #233
  • cliproxy: add circular fallback and empty model validation in API (ef77607)
  • cliproxy: add defensive null checks for composite tier config (0c7dc39)
  • cliproxy: add session check on delete and atomic settings writes (7486897)
  • cliproxy: address 3 code review issues in composite variants (399d7e1)
  • cliproxy: address 3 functional regressions in composite variants (61f46e7)
  • cliproxy: address 4 functional regressions in composite variants (27d22e8)
  • cliproxy: address code review feedback (attempt 1/5) (854b198)
  • cliproxy: address code review feedback (attempt 2/5) (ac574e0)
  • cliproxy: address code review feedback (attempt 3/5) (6cfbdd6)
  • cliproxy: address code review feedback (attempt 4/5) (4c002ca)
  • cliproxy: address lifecycle port and thinking regressions (f02e7dc)
  • cliproxy: align kiro auth methods with upstream contracts (fd46ad0), closes #552 #233
  • cliproxy: fix edit dialog empty model and composite guidance (8e6b67b)
  • cliproxy: fix thinking off regression and composite error handling (e914fe9)
  • cliproxy: harden composite validation and runtime safeguards (1a23f91)
  • cliproxy: harden composite variant routing and validation (0a8adb2)
  • cliproxy: harden kiro device-code auth flow consistency (826a42d)
  • cliproxy: improve multi-provider auth with continue-on-error pattern (6ff17d8)
  • cliproxy: keep daemon running after parent exit (3136f24)
  • cliproxy: keep variant updates atomic and persisted (7bb9ceb)
  • cliproxy: mark Kiro as device_code flow for dashboard auth (6c20839), closes #552
  • cliproxy: resolve merge-duplicate lifecycle handlers (9268c05)
  • cliproxy: restore POST tier validation and guard null payloads (a99180f)
  • cliproxy: strip thinking suffix in detectFailedTier matching (efd3f21)
  • cliproxy: unify codex reasoning flags and thinking flow (f9df3cf)
  • codex: align quota display to 5h and weekly windows (f8af5a8)
  • codex: infer code review cadence from reset window (1d2ee82)
  • codex: preserve sonnet high alias on variant model updates (3410c52)
  • codex: preserve xhigh default effort for gpt-5.3 (164d195)
  • codex: reduce quota timeout flakes in dashboard (b3d9dce)
  • codex: stabilize code review window labeling (40512fe)
  • codex: type cast provider in model update path (41d9978)
  • commands: await async command validation (b98335c)
  • config: serialize cursor section in generateYamlWithComments (4b7de69)
  • cursor: add enabled field to tests, simplify cursor routing (f9834c8)
  • cursor: add input validation on dashboard settings routes (1bebf16)
  • cursor: add resolve guard, port validation, and daemon tests (7d4e6d6)
  • cursor: add response body handling and size limit (36f0308)
  • cursor: add subcommand parity comment and raw settings TODO (4ca4a9d)
  • cursor: address CI gate and review regressions (0e55db8)
  • cursor: address code review edge cases in protobuf and executor (cc5a903)
  • cursor: address code review feedback (attempt 1/5) (31f5741)
  • cursor: address code review feedback on auth module (7e4f080)
  • cursor: address fourth-round review feedback for protobuf module (c5e8241)
  • cursor: address PR #527 review feedback (9f0ea25)
  • cursor: address PR #528 review feedback (d58e988)
  • cursor: address remaining LOW review items in protobuf module (f3d532a)
  • cursor: address remaining PR #527 review feedback (afb5e74)
  • cursor: address remaining PR #528 review feedback (b8aaa58)
  • cursor: address remaining review items in auth module (b412ba2), closes #526
  • cursor: address second-round review feedback for auth module (84a256d)
  • cursor: address second-round review feedback for protobuf module (e177a4b), closes #531 #531
  • cursor: address third-round review feedback for auth module (a8a68c9)
  • cursor: address third-round review feedback for protobuf module (66a93ee), closes #535
  • cursor: align daemon routes, add enabled field, handle bare command (6af7186)
  • cursor: clean up PID file on startDaemon failure and improve daemon robustness (cda037e)
  • cursor: clean up settings validation and route consistency (1e4cae3)
  • cursor: close ReadableStream controller on abort to prevent consumer hangs (36a67c4)
  • cursor: export missing symbols, eliminate subcommand sync risk, improve tests (9342387)
  • cursor: fix router fall-through, add daemon marker, use random test port (bfc9361)
  • cursor: fix test isolation and daemon exit handling (fe97d72)
  • cursor: guard raw-settings save race and enforce daemon preconditions (9a76f86)
  • cursor: harden auth security and add token expiry warning (aeb5802)
  • cursor: harden stopDaemon PID validation, tighten regex, add lifecycle test (760a5c3)
  • cursor: kill orphaned daemon on timeout and fix exit codes (88ad13e)
  • cursor: pass all args to handler, use getCursorConfig in routes (d7e0d1c)
  • cursor: save credentials after auto-detect and fix signal hang (9f9db7d)
  • cursor: show auto-detect error message, add subcommand sync comment (887efa4)
  • cursor: split daemon helpers to satisfy maintainability gate (08a3e0b)
  • cursor: tighten rate limit detection string matching (79ba1de)
  • cursor: use getCursorConfig(), fix help text and stub messages (2ba826b)
  • cursor: use process.execPath and add safeResolve to model fetcher (9478967)
  • cursor: use stdio ignore, sequential polling, move CursorConfig to types (ce19153)
  • cursor: validate fetch status before streaming fallback and register abort early (27badb2)
  • cursor: validate request body on settings endpoints (f5a912b)
  • format: align image analysis check with pinned prettier (ae83be1)
  • hardening: count executable sync fs call sites (d21b5c4)
  • hardening: handle regex literals after else/do (65a1d8a)
  • hardening: handle regex literals in sync-call scanner (bb9d846)
  • hardening: ignore literal text in sync-call metrics (8193e9d)
  • maintainability: enforce gate and correct loc metric (2610971)
  • maintainability: harden tracked scan and baseline checks (33e9a88)
  • maintainability: require git-tracked scan for gate (b7481cf)
  • maintainability: scan tracked src files for stable gate (8f0ba48)
  • test: avoid global ui mock leakage in shell completion tests (851f870)
  • ui: add method-aware kiro auth flow parity (6a21f39), closes #552 #233
  • ui: add trim validation for composite tier model fields (b6e1d0c)
  • ui: fix TypeScript error in composite edit dialog tier mapping (240dfe2)
  • ui: use default tier provider instead of hardcoded 'gemini' (f3618c5)
  • ui: use type-only import for KiroAuthMethod (e3f0860)
  • web-server: make kiro auth routes method-aware (577991c), closes #552 #233

Documentation

  • guidelines: add AGENTS symlink and neutral wording (fca5ca2)
  • kiro: document method-aware auth behavior (14dd341), closes #552 #233

Code Refactoring

  • cliproxy: centralize provider capability registry (924e368)
  • commands: add command contract and migrate shell completion (fc4b77b)

Tests

  • cliproxy: add composite variant v2 unit tests (e0ae5f2)
  • cliproxy: add regression coverage for update consistency (7dd4ce5)
  • cliproxy: add thinking suffix test and document exit 0 behavior (c35de7e)
  • cliproxy: stabilize path-sensitive CI test assertions (c9faf6c)
  • cliproxy: stabilize thinking override assertion (d28fb2c)
  • use getCcsDir() instead of os.homedir() for test isolation (ca7bb23)

7.43.0 (2026-02-11)

Features

  • cliproxy: add account safety guards to prevent Google account bans (#516) (e055dac), closes #509 #512
  • cliproxy: runtime quota monitoring during active sessions (#529) (c6c94a0), closes #524
  • glm: update default model to GLM-5 and fix all GLM pricing (3e26dee), closes #532

Bug Fixes

  • cliproxy: add fork:true for Claude model aliases in config generator (#523) (4065399), closes #522
  • cliproxy: address all review feedback (Low + informational) (7d049d8)
  • cliproxy: mask email in ban detection and fix JSDoc default (fcc605b)
  • cliproxy: migrate deprecated gemini-claude-* model names to upstream claude-* names (#515) (6afbb72), closes #513
  • glm: fix missed help text reference and glm-4.5-air pricing (7d9c538)
  • hooks: isolate image type check before error-prone processing (#514) (19de427), closes #511

7.42.0 (2026-02-11)

Features

7.41.0 (2026-02-11)

Features

  • config: add CCS_DIR env var and --config-dir flag for config directory override (7a0e6a4), closes #507
  • env: add ccs env command for third-party tool integration (2e85064), closes #503
  • update cliproxy, config loader, glmt transformer, and provider routes (8c6afe2)

Bug Fixes

  • cliproxy: prevent OAuth process hang on Qwen device code flow (086bf95), closes #314
  • cliproxy: strip Gemini-unsupported schema fields including "examples" (505d6d0), closes #155
  • config: dynamic health message, cache getters, static imports, cloud hint (706cca8)
  • config: lazy-evaluate paths, fix TOCTOU, segment-boundary cloud detection (d5abc7d)
  • config: migrate all hardcoded paths to getCcsDir() and improve validation (60d6bbd)
  • config: resolve remaining hardcoded paths and improve readability (c8800b4)
  • delegation: use exitCode instead of killed for process termination checks (4b1fcac)
  • env: add key sanitization and shell completions (76457a5)
  • env: add missing CLIProxy profiles to bash completion and shell validation (6d9351d)
  • env: address all PR review feedback (44b3152)
  • env: address P1-P3 review items from code review (3f5ecd4)
  • env: fix fish escaping, profile parsing, and add OPENAI_MODEL mapping (d5c03d1)
  • env: improve empty profile UX and consolidate shell validation constants (b96eacf)
  • env: sync CLIProxy profiles across all shell completions and improve error messages (a98f4a5)
  • env: use single quotes to prevent shell injection via eval (a5dc15d)
  • separate type-only exports and migrate test imports from dist/ to src/ (0483444)

Documentation

  • update local docs for ccs env command (38bd562)

Code Refactoring

  • config: DRY precedence logic, dynamic recovery messages, CCS_HOME cloud warning (9699e01)
  • utils: extract killWithEscalation to shared process-utils (90b4627)

Tests

  • cliproxy: add edge case coverage for Gemini schema sanitizer (917f0bb)
  • utils: add unit tests for killWithEscalation (dc9b276)

7.40.0 (2026-02-07)

Features

  • cliproxy: add hybrid catalog sync with CLIProxyAPI (#485) (c8a0995), closes #477
  • cliproxy: delegate kiro/ghcp token refresh to CLIProxyAPIPlus (#488) (215c00e), closes #487

Bug Fixes

  • cliproxy: disable 1M extended context for opus 4.6 (256k limit) (#492) (43cd19a), closes #490
  • cliproxy: guard against empty upstream SSE responses in agy profile (#489) (545c8b9), closes #350
  • hooks: add image analysis env vars for settings-based profiles (#484) (b0dff7a), closes #440
  • teams: propagate CLAUDE_CONFIG_DIR to tmux session for agent teammates (db88290)

Code Refactoring

  • cliproxy: check lifecycle events in remaining SSE buffer (42a3eb1)
  • cliproxy: deduplicate message_delta/message_stop in synthetic SSE response (152f543), closes #491
  • cliproxy: extract SSE lifecycle tracker and add backpressure handling (1b3440b)
  • teams: use spawnSync array args instead of execSync string (0f7d5f9)

7.39.0 (2026-02-07)

Features

7.38.0 (2026-02-07)

Features

7.37.1 (2026-02-05)

Bug Fixes

  • cliproxy: fix discoverExistingAccounts test failures (759f289)
  • ui: display device code for GitHub Copilot OAuth in Dashboard (13f6c3f), closes #460

Code Refactoring

  • cliproxy: modularize top 4 giant files (b149e25)
  • ui: address PR review feedback for device code auth (a08d0cf)

7.37.0 (2026-02-05)

Features

  • oauth: add interactive mode prompt for VPS/headless environments (7a1b4d6), closes #461
  • oauth: add interactive mode prompt for VPS/headless environments (#462) (2777202), closes #461

Bug Fixes

  • auth: show command checks unified config for accounts (0e140f8), closes #458
  • cliproxy: add NO_PROXY support and error handling for proxy URLs (bcde5f4)
  • cliproxy: respect http_proxy env vars for binary downloads (9c527b7), closes #266
  • cliproxy: sanitize MCP tool input_schema to remove non-standard properties (#459) (f8c179f), closes #456
  • dashboard: delete accounts from unified config mode (8d5f7d2), closes #455
  • doctor: use cmd.exe compatible quoting for Windows shell execution (ff92c66)
  • shell: escape ! for cmd.exe delayed expansion (61bc54a)
  • shell: escape cmd.exe special chars (%, ^, newlines) (ed91f21)
  • ui: allow backend switching in remote mode (28e776d), closes #463

Tests

  • cliproxy: add comprehensive proxy support unit tests (713ee93)
  • shell: add unit tests for escapeShellArg (48aa3cc)

7.36.0 (2026-02-04)

Features

  • detector: add Windows native installer fallback detection (3336736), closes #447

Bug Fixes

  • detector: use expandPath helper and add tests (7f83a7d), closes #449 #447
  • hooks: deduplicate WebSearch hooks when saving via Dashboard (57d4b04), closes #450
  • ui: prevent settings tab truncation with grid layout (bfb2a06)

Tests

  • add stress test and PostToolUse preservation tests (2fe6c33), closes #452
  • glmt: increase timeout for retry-logic tests on CI (aa83b4d)
  • uploader: fix flaky timeout test with 5ms tolerance (36c5605)

7.35.1 (2026-02-04)

Bug Fixes

  • cliproxy: use os.homedir() for cross-platform path expansion (39f77bd), closes #445

7.35.0 (2026-02-04)

⚠ BREAKING CHANGES

  • hooks: config.yaml image_analysis section now uses provider_models instead of providers/model fields.

Provider-to-model mappings:

  • agy → gemini-2.5-flash
  • gemini → gemini-2.5-flash
  • codex → gpt-5.1-codex-mini
  • kiro → kiro-claude-haiku-4-5
  • ghcp → claude-haiku-4.5
  • claude → claude-haiku-4-5-20251001

Hook checks CCS_CURRENT_PROVIDER against provider_models and skips if no vision model configured for that provider.

Features

  • hooks: add ANTHROPIC_MODEL fallback for image analysis (ae3eb28)
  • hooks: add block-image-read hook to prevent context overflow (38eb740), closes #426
  • hooks: add image/PDF analysis via CLIProxy transformer (d5f2aca), closes #426
  • hooks: add UX improvements for image analysis hook (2b0717e)
  • hooks: extend image analyzer to all CLIProxy providers (3252228)
  • hooks: inject image analyzer hooks into all profile types (a8ddf8b)
  • hooks: skip image analyzer for Claude Sub accounts (26f4021)
  • ui: improve settings page UX and responsiveness (4d87a64)

Bug Fixes

  • backup: create backups only when settings content changes (c324e92), closes #433
  • checks: use configurable CLIProxy port in health check (bfb5350)
  • cli: improve network handling and shell escaping (3c1cf91)
  • config: remove unused forceReload parameter in showStatus (8dfd9e9)
  • delegation: dynamic model display from settings (f6b7045), closes #431
  • glmt: gate retry rate limit logs behind verbose flag (73824bc)
  • hooks: add defensive validation for env var generation (9662490)
  • hooks: add edge case validation in image analyzer (0e7b9c9)
  • hooks: add network errors to noRetryPatterns, update E2E test (1201b4b)
  • hooks: enable image-read blocking by default for third-party profiles (9f3edc5)
  • hooks: improve error handling and edge cases for image analysis (cb8de2c)
  • hooks: improve image analysis output format (70caaa0)
  • ui: add missing animate property to connection indicator (57f7a70)
  • update: pre-remove package on Windows bun before reinstall (a55e0af), closes #435

Documentation

  • update documentation for v7.34 release (c6be09b)

Code Refactoring

  • hooks: consolidate getCcsHooksDir to config-manager (b014c4e)
  • hooks: deprecate block-image-read, add CLIProxy fallback (51b719e), closes #442 #426
  • hooks: use provider_models mapping for image analysis (40caff1)

Performance Improvements

  • config: replace busy-wait with Atomics.wait in lock retry (ec4e1ae)

7.34.1 (2026-02-03)

Bug Fixes

  • dashboard: cross-browser OAuth with manual callback fallback (#417) (#423) (24b0312)
  • dashboard: detect popup blocked during OAuth flow (441870d)
  • jsonl: add explicit UTF-8 BOM stripping (09b5239)
  • quota: add explicit 429 rate limit handling (e596ab4)
  • quota: improve 403 error messaging for forbidden accounts (5a308db)
  • websearch: add type guards and deduplication for global settings (847aad0)
  • websearch: normalize double-slash paths in hook detection (66f5fe6)
  • websearch: normalize Windows path separators in hook detection (d61c940)
  • websocket: add maxPayload limit to prevent DoS attacks (4fd2f60)

Code Refactoring

  • oauth: align box chars with CCS standard and add JSDoc (258220b)
  • websearch: extract shared hook utils to DRY module (1f8d9b8), closes #420

Tests

  • websearch: add unit tests for hook-utils module (deb6249)

7.34.0 (2026-02-01)

Features

  • glmt: add rate limit resilience with exponential backoff retry (3afdcea), closes #402

Bug Fixes

  • claude: update base config to Claude 4.5 model IDs (09dd701)
  • cliproxy: load WebSearch hooks via --settings flag (7aaf568), closes #412
  • glmt: add env var validation and max delay cap (67a8e2c)
  • glmt: extract Retry-After from HTTP headers and cap maxRetries (62ac3e2)
  • sync: prevent duplicate backup folders on Windows (a8b0547), closes #409
  • update: add line-buffering and unit tests for stderr filter (b39726f)
  • update: filter npm cleanup warnings on Windows (c9f8ed1), closes #405

7.33.0 (2026-01-30)

Features

  • cliproxy: add backend caching and reauth indicator for quota endpoints (7947a7a)
  • cliproxy: add Codex/Gemini quota API routes (2f5a50b)
  • cliproxy: add proactive token refresh for Gemini quota (match AGY pattern) (606bb72)
  • ui: add Codex/Gemini quota API client and hooks (19a57c3)
  • ui: display Codex/Gemini quota in dashboard (387c010)

Code Refactoring

  • ui: address code review feedback (32ef233)
  • ui: extract duplicated quota helpers to shared utils (8ce7495), closes #400
  • ui: extract shared QuotaTooltipContent component (eeb0dde)

Tests

  • quota: add extensive test suite for quota caching system (3df2619)
  • ui: add comprehensive tests for quota utility functions (0b8635d)

7.32.0 (2026-01-30)

Features

  • cliproxy: add ToolSanitizationProxy for Gemini 64-char limit (6363350), closes #219

Bug Fixes

  • cliproxy: address PR #399 review suggestions (98b7f6f)
  • cliproxy: route proxy logs to file instead of stderr (4d292c6)

Code Refactoring

  • cliproxy: address PR review suggestions (d86c531)

Tests

  • cliproxy: add integration tests for ToolSanitizationProxy (bf19002)

7.31.1 (2026-01-29)

Bug Fixes

  • cliproxy: read Gemini tokens from CLIProxy auth directory (9d96535), closes #368

Code Refactoring

  • cliproxy: address code review feedback for token handling (cddf931), closes #396

7.31.0 (2026-01-29)

Features

  • cliproxy: add multi-provider quota display for Codex and Gemini CLI (30e611f)

Bug Fixes

  • cliproxy: resolve regex escape bug and complete DRY refactor (38ba6a9), closes #395
  • config: add missing base-claude.settings.json (643232f)

Code Refactoring

  • cliproxy: extract shared auth utils and remove unused parameter (e31d00f), closes #395

Tests

  • cliproxy: add unit tests for quota fetchers and auth utilities (ad8327d), closes #395

7.30.1 (2026-01-29)

Bug Fixes

  • cliproxy: update Claude model catalog to latest CLIProxy models (d238a5d), closes #392
  • copilot: update fallback model ID to match catalog default (2501843)

7.30.0 (2026-01-28)

Features

  • cliproxy: add auto_sync config option (fc23afd)
  • cliproxy: add granular account tier prioritization (ultra/pro/free) (aeb9abc), closes #387
  • cliproxy: add local config sync module (9de2682)
  • cliproxy: add Management API client for CLIProxy (4cc89ea)
  • cliproxy: add sync and alias CLI commands (cb6c212)
  • cliproxy: add sync API routes (56500fe)
  • cliproxy: auto-sync on profile create (b2ba402)
  • cliproxy: enable auto_sync by default (28b0e89)
  • ui: add CLIProxy sync components (75a4e68)
  • ui: add granular account tier types (pro/ultra/free) (890fd14)
  • ui: add tier badges to account cards (31a91f6)
  • ui: add toast feedback for sync actions (f972a4e)
  • ui: allow custom model names in Quick Setup wizard (ab9bbed)
  • ui: mount SyncStatusCard to CLIProxy page (afa3bda)

Bug Fixes

  • cliproxy: address edge cases in sync module (9924b2f)
  • cliproxy: address PR review feedback (4967693)
  • cliproxy: address sync review feedback (e80d2d2)
  • cliproxy: correct sync terminology and add unit tests (c3f85bc)
  • cliproxy: harden sync against edge cases (bbad73b)
  • cliproxy: improve sync robustness and consistency (4124780)
  • cliproxy: preserve config comments during sync (68a63a7)
  • cliproxy: use paidTier for account tier detection instead of allowedTiers (de23029)
  • ui: add scroll boundary for account list in Quick Setup (85aa747)
  • ui: fix account card layout overflow (87cced8)
  • ui: update sync card for local sync design (e2b9c46)

Code Refactoring

  • cliproxy: remove model alias functionality (32dbd5e)
  • ui: merge sync into ProxyStatusWidget (3761634)

Tests

  • cliproxy: add management-api-client unit tests (6611142)

7.29.0 (2026-01-28)

Features

  • cliproxy: add Claude (Anthropic) OAuth provider support (28d8bd8), closes #380
  • skip local OAuth when using remote proxy with auth token (1f5d119)

Bug Fixes

  • add claude provider to statsProviderMap, UI types, and provider arrays (4a2abc7)
  • cliproxy: add Claude to all provider lists for sidebar display (d212995)
  • cliproxy: address PR review feedback (2091a90), closes #D97757
  • cliproxy: improve skip-local-auth edge case handling (21e819b)
  • cliproxy: use correct --claude-login flag for Claude OAuth (8017ce8), closes #382
  • replace hardcoded provider validation arrays with CLIPROXY_PROFILES import (9cd9c42), closes #382
  • test: use correct provider name 'ghcp' instead of 'copilot' (838cd1d)
  • ui: add iFlow to PROVIDER_ASSETS + sync validation test (5c62e06), closes #384
  • ui: truncate long account emails in provider editor (a9c5520)

Code Refactoring

  • cliproxy: reorder providers - Antigravity first, then Claude (b385ab1)
  • cliproxy: use CLIPROXY_PROFILES for provider arrays (DRY) (9fd9395), closes #384
  • oauth: derive auth-code providers from OAUTH_FLOW_TYPES (DRY) (c713d48), closes #384
  • ui: centralize provider list in provider-config.ts (DRY) (5a4c8e0)

7.28.2 (2026-01-27)

Bug Fixes

  • websearch: add shell option for Windows spawnSync compatibility (3c534f4), closes #378

7.28.1 (2026-01-26)

Bug Fixes

  • cliproxy: pin version to 6.7.25, add disable-cooling (fb77d72)
  • websearch: stop polluting global ~/.claude/settings.json with hooks (0216341)

7.28.0 (2026-01-26)

Features

  • cli: implement --uninstall handler (c44a5c2)
  • cli: inject hooks into profile settings on launch (0099ab5)
  • npm: add postuninstall script (4f28de9)
  • websearch: add per-profile hook injection module (242ab76)
  • websearch: add removeHookConfig function (9159aa5), closes #317
  • websearch: call removeHookConfig on uninstall (fc4d987)
  • websearch: inject hooks on profile creation (fca8dbd)

Bug Fixes

  • address PR #373 review feedback (e98a92f)
  • address PR review feedback (cd7a112)
  • config: persist setup_completed flag to YAML file (a8c46cc)
  • isolation: add getCcsDir/getCcsHome to more files (6a2c829)
  • isolation: use getCcsDir() for test isolation (9b61f53)
  • setup: persist setup_completed flag to prevent repeated first-time notice (85e41a5)
  • websearch: use getCcsDir() for test isolation (b33674b)

Code Refactoring

  • uninstall: stop modifying global settings.json (ba1fb7e)
  • websearch: address PR review recommendations (21b18d0)

Tests

  • setup: add unit tests for setup_completed flag detection (596a9c6)
  • uninstall: add hook cleanup tests (6838ac0)
  • uninstall: update tests for per-profile hook behavior (ce59eb6)

7.27.0 (2026-01-25)

Features

  • ui: add bulk account controls to provider editor (1427d36)
  • ui: add expandable provider cards with account controls (87226e0)
  • ui: add tiered visual grouping to quota tooltip (ebfc554)
  • ui: add visible pause toggle button to account item cards (56dfb24)
  • ui: persist provider selection in cliproxy and auth-monitor (7fc9ff0)

Bug Fixes

  • api: add race condition prevention and input validation for account control (d1b579a)
  • hooks: add stats invalidation to account control mutations (7086617)
  • quota: fetch quota for paused accounts + simplify exhausted display (27e8813)
  • quota: return exhausted models with resetTime from API (e3920e0)
  • ui: add pause toggle to flow viz account cards, remove dropdown redundancy (56dfada)
  • ui: display exhausted Claude/GPT models in quota tooltip (ce16517)
  • ui: improve bulk actions UX in provider editor (6021c10)
  • ui: improve model quota tooltip tier sorting (de71381)
  • ui: improve pause toggle position in flow-viz account cards (eb05342)
  • ui: improve tier header contrast in quota tooltip (41d17e7)
  • ui: remove dead 'Account is paused' error handling from flow-viz (a84cc03)
  • ui: show 0% quota when Claude/GPT models exhausted (1f323f0)
  • ui: show Claude reset time for quota display (not earliest) (9516e71)
  • ui: simplify quota tooltip - delimiter lines only, full model names (b2b8a85)

Code Refactoring

  • ui: update cliproxy page for account control flow (118ce46)

7.26.3 (2026-01-24)

Bug Fixes

  • cliproxy: propagate backend parameter to version check functions (2a0efbd)
  • tests: address edge cases in mock infrastructure (2b91c40)
  • tests: remove undefined MockRoute export and unused imports (aaa6feb)

Documentation

  • clarify no-emoji rule applies only to CLI terminal output (0902211)

Performance Improvements

  • tests: replace real network ops with mock infrastructure (5c83429)

7.26.2 (2026-01-23)

Bug Fixes

  • display correct project names in session stats (8ee87c7), closes #348 #103
  • glmt: respect user-configured model instead of hardcoding glm-4.6 (bd343f3), closes #358
  • resolve test import paths and vi.mock hoisting issues (84ec434)
  • ui: display correct project names in session stats (01f9610), closes #348 #103

Tests

7.26.1 (2026-01-23)

Bug Fixes

  • cliproxy: complete backend param propagation per code review (388ab69)
  • cliproxy: complete backend switching with proper binary extraction (2794a54)
  • cliproxy: make backend switching work with version pins and status (628148c)
  • cliproxy: make version cache backend-specific for proper switching (a41fd2a)
  • cliproxy: use backend-aware labels in error messages and API (f0c845c)
  • cliproxy: use backend-specific GitHub repos for version fetching (0a1cbcc)
  • ui: add backend fields to CliproxyUpdateCheckResult type (c916356)
  • ui: align alert icon vertically with text when using py-2 (0511c5e)
  • ui: correct warning text to reference Instance Status section (46e75e2)
  • ui: display dynamic backend label in dashboard (dad4349)
  • ui: integrate ProxyStatusWidget in Settings & block backend switch when running (6458173)
  • ui: prevent race conditions during backend switch (498175e)
  • ui: sync backend state across all CLIProxy UI components (88560c7)

7.26.0 (2026-01-23)

Features

  • add Ollama provider support (bd3be23)
  • ui: add Ollama logo and make API key optional (2cb77f2)
  • ui: add Ollama provider presets to dashboard (2b7d18c)
  • ui: add provider logos for alternative API presets (5074122)

Bug Fixes

  • api: skip API key prompt for local Ollama preset (ef2c8bb)
  • api: skip API key prompt for local Ollama using noApiKey flag (dc6977d)
  • ollama: align property naming and descriptions (3ce698c)
  • presets: make requiresApiKey required boolean, add sentinel docs (8e29c48)

Documentation

  • add Ollama to Built-in Providers table and usage examples (c9604be)

7.25.0 (2026-01-22)

Features

  • api: add /api/thinking endpoints for budget config (9a2598f), closes #307
  • cli: add --thinking flag for runtime budget override (4d361b2), closes #307
  • cliproxy: add model-specific reasoning effort caps (eec44d5), closes #344
  • cliproxy: add thinking budget validator module (82ef680), closes #307
  • cliproxy: add ThinkingSupport to model catalog (ebf7e04), closes #307
  • cliproxy: inject thinking suffix into model config (014b5e6), closes #307
  • config: add ThinkingConfig to unified config (0c2fd9c), closes #307
  • thinking: improve config validation and codex support (19b7a49)
  • ui: add Thinking settings tab to dashboard (0a95f36), closes #307

Bug Fixes

  • api: add optimistic locking for thinking config (ba19e1f)
  • api: add override type and provider_overrides validation (31b9520)
  • api: add type guard for tier_defaults and extract tiers constant (299d96c), closes #351
  • cli: add --thinking=value format and improve flag handling (3060373)
  • cliproxy: add case-insensitive model lookup (36bcc04)
  • cliproxy: add NaN/Infinity and empty string validation (5f8d23c)
  • cliproxy: handle edge cases in thinking validation (ca490a9)
  • cliproxy: improve thinking flag validation and warnings (d5652de)
  • config: add null guard and document nested paren limitation (19e5239)
  • config: improve YAML error messages and thinking validation (f7cc9f4)
  • ui: add fetch timeout and abort controller cleanup (b634f36)
  • ui: add missing useThinkingConfig export to barrel file (b996153)
  • ui: add provider indicator, retry button, and optimistic locking (35f28a6)
  • ui: add spacing between Port label and input field (1eeb8f9)
  • ui: add thinking tab to URL sync conditional (3ea549a)
  • ui: reduce excessive AGY quota API requests (c8c1894)

Documentation

  • cli: add extended thinking section to help (7c5f365)

Tests

  • cliproxy: add unit tests for thinking validator (3bd3e37), closes #307
  • update tests for codex catalog inclusion (fbb71a2)

7.24.2 (2026-01-18)

Bug Fixes

  • ci: disable track_progress for workflow_dispatch events (65c325d)

7.24.1 (2026-01-18)

Bug Fixes

  • ci: use placeholder API key to pass claude-code-action validation (a83a87b)

7.24.0 (2026-01-18)

Features

  • cliproxy: add backend selection for CLIProxyAPI vs CLIProxyAPIPlus (8ade4a6)

Bug Fixes

  • cliproxy: address PR review issues for backend selection (a019ed2)

Documentation

  • add Docker support documentation (90bced9)

Code Refactoring

  • ci: simplify ai-review to use claude-code-action directly (5e22547)
  • ci: simplify ai-review to vanilla claude-code-action (bdfc409)

7.23.0 (2026-01-18)

Features

  • docker: add Docker/Compose setup for CCS dashboard (a14c7f3)

Bug Fixes

  • docker: address security and reproducibility issues (b386410)
  • docker: use bun 1.2.21 (1dee718)

7.22.0 (2026-01-15)

Features

  • cliproxy: add HTTPS tunnel for remote proxy mode (#1) (9e9cbd4)
  • dashboard: add project_id display for Antigravity accounts (ed2ce13)
  • dashboard: show projectId warning in Live Account Monitor (28b0faa)

Bug Fixes

  • address PR #4 review - HTTPS tests and timeout handling (e055890)
  • address PR #4 review suggestions (c3bfa34)
  • cliproxy: add try-catch for file operations in pause/resume (d87a653)
  • cliproxy: move token files when pausing/resuming accounts (9d2442f), closes #337
  • cliproxy: show clear message for paused accounts in Live Monitor (a931bc9)
  • cliproxy: use sibling auth-paused/ dir to prevent token refresh loops (4d31128)
  • dashboard: harden projectId handling with edge case fixes (bc02ecc)
  • dashboard: update projectId for existing accounts during discovery (36367d4)
  • increase timeout in connection tracking test for CI (e7e95e6)
  • make connection tracking test deterministic (b735234)
  • resolve CI test timing and merge conflict with dev (504b1b3)
  • ui: improve paused account display in Live Account Monitor (502b30a)

7.21.0 (2026-01-14)

Features

  • dashboard: implement full parity UX improvements (bd5e9d2)

Bug Fixes

  • dashboard: address code review feedback for PR #336 (e808972)
  • dashboard: resolve 6 critical security and UX edge cases (623a314)
  • dashboard: resolve edge cases in backup restore and settings UI (2e45447)
  • persist: add rate limiting, tests, and code quality improvements (7b80dcc), closes #339

Documentation

  • update minimax preset references to 'mm' (eee62a4)

7.20.1 (2026-01-14)

Bug Fixes

  • ci: expand ai-review allowedTools to prevent token waste (ac7b324)
  • cliproxy: address PR review feedback (04c9b08)
  • cliproxy: return null for unknown quota, add verbose diagnostics (1ac1941)
  • deps: add express-rate-limit to production dependencies (d9631be), closes #333

7.20.0 (2026-01-14)

Features

  • config: add ccs config auth CLI subcommand (39c1ee2), closes #319
  • dashboard: add optional login authentication (#319) (464b410)
  • persist: add --list-backups and --restore options for backup management (ef7e595)
  • persist: add backup management for settings.json (#312) (3ac687e), closes #248

Bug Fixes

  • auth: add security hardening per code review (a3a167e)
  • auth: move redirect to useEffect and validate bcrypt hash format (37e3468)
  • ci: add full CLIProxy env vars for AI review (7cfd3c1)
  • ci: add Write tool to allowedTools for PR comment posting (e7dca48)
  • persist: harden security and edge case handling (#328) (397331e), closes #312
  • ui: use wss:// for WebSocket on HTTPS pages (#315) (db58c6b)

7.19.2 (2026-01-13)

Bug Fixes

  • ci: expand allowedTools patterns for flexible comment posting (0a27c6a)

7.19.1 (2026-01-13)

Bug Fixes

  • ci: update allowedTools pattern to prevent token waste on retries (edec6f6)

7.19.0 (2026-01-13)

Features

  • doctor: add --help flag with comprehensive command documentation (22c7d4a)

Bug Fixes

  • ci: prevent AI review self-cancellation with smart concurrency (25d31ce)
  • ci: trigger AI review on follow-up commits to PR (a2a13fb)

7.18.3 (2026-01-13)

Bug Fixes

  • ci: simplify AI review workflow by disabling progress tracking (4ef2d48)
  • ci: simplify AI review workflow by disabling progress tracking (#323) (39b37ca)

7.18.2 (2026-01-13)

Bug Fixes

  • ci: isolate concurrency groups by comment author (3163509)
  • ci: isolate concurrency groups by comment author (#322) (1d33012)

7.18.1 (2026-01-13)

Bug Fixes

  • ci: add explicit instruction to post review as PR comment (85f6bc0)
  • ci: exclude bot comments from triggering AI review (ce70617)
  • ci: prevent self-cancelling AI review workflow (120aca4)
  • ci: prevent self-cancelling AI review workflow (#321) (fa1899f)
  • delegation: improve profile discovery and CI workflow (#310) (affdaea)
  • delegation: only check profiles defined in config.yaml (0075248)
  • doctor: use dynamic profile discovery for delegation check (f88ad8e)
  • ui: improve sidebar navigation for collapsible menu items (12b68f9)
  • ui: improve sidebar navigation for collapsible menu items (#313) (e2e2ecd)

7.18.0 (2026-01-08)

Features

  • codex: inject OpenAI reasoning.effort per tier (204eea0)

Bug Fixes

  • ci: only auto-review on PR opened, not synchronize (6f65697)
  • cliproxy: remove stable version cap, only v81-88 are faulty (0abd021)
  • codex-proxy: security hardening and edge case fixes (87cfcc5)

Styles

  • ci: enhance ai-review prompt with rich emoji formatting (6dcc8b2)

7.17.0 (2026-01-08)

Features

Bug Fixes

  • ci: only auto-review on PR opened, not synchronize (211e642)

7.16.0 (2026-01-08)

Features

Bug Fixes

7.15.0 (2026-01-06)

Features

  • api: add pause/resume account endpoints (c13003d), closes #282
  • cli: add pause, resume, status subcommands (cfd8dd9), closes #282
  • cliproxy: add hybrid quota management core (11ffca3), closes #282
  • cliproxy: integrate pre-flight quota check (10e3eec), closes #282
  • ui: add pause/resume API hooks (b92a35d), closes #282
  • ui: add pause/resume toggle and tier badges (4ad7292), closes #282

Bug Fixes

  • cliproxy: harden nickname validation and race condition handling (5970e70)
  • cliproxy: prevent race in promptNickname close handler (107e281)
  • cliproxy: update lastUsedAt on normal execution (b55cd79)
  • cliproxy: use nickname as accountId for kiro/ghcp providers (d96c67b), closes #258 #267
  • quota: address edge cases from code review (a32fdc8), closes #30 #31 #8 #26
  • quota: correct tier detection - remove 2.5-pro from ultra indicators (0af185f)
  • quota: handle 'standard-tier' as free in tier mapping (a5f1472)
  • quota: use API tier detection instead of model-based heuristics (aad0d44)

Documentation

  • CLAUDE.md: add help location reference and documentation requirements (113cc06)
  • cli: add cliproxy pause/resume/status to --help (4b7328b)
  • update documentation for CCS v7.14.x with quota management (ec4c2c2)

Code Refactoring

  • quota: simplify AccountTier to free|paid|unknown (db071e2)

7.14.0 (2026-01-06)

Features

  • agy: add preflight quota check with auto-switch (c85ff74)
  • agy: promote gemini-claude-sonnet-4-5 as default Haiku model (c9cdfd9), closes #270
  • cliproxy: add background token refresh worker (f98bb24)
  • cliproxy: add dashboard UI parity for version stability (c5621da), closes #269
  • cliproxy: add doctor subcommand for quota diagnostics (944f5c0), closes #252
  • cliproxy: add version management UI with install/restart controls (a69b2e9)
  • dev: add symlink setup for testing dev version (981cef8)
  • quota: add fetchAllProviderQuotas and findAvailableAccount (24847f5), closes #252
  • ui: add stability warning to ProxyStatusWidget (8a56a43)

Bug Fixes

  • agy: edge case handling for quota failover (5b58bd3)
  • cliproxy: add edge case handling for version capping (212aef8)
  • cliproxy: add missing OAuth callback ports for codex, agy, iflow (cfe604a)
  • cliproxy: cap auto-update to v80 due to v81+ context bugs (869ab3e), closes #269
  • oauth: add stdin keepalive to prevent blocking on manual URL prompt (0557f93)
  • oauth: harden cleanup for edge cases in auth process (472497f)
  • shared-manager: normalize plugin registry paths to canonical ~/.claude/ (1067afb), closes #276
  • ui: add missing isStable and maxStableVersion to type (4fd4d6c)
  • ui: clean up ProxyStatusWidget layout spacing (4f69abb)
  • ui: update/downgrade button now installs correct version (48d4a96)
  • websearch: use 'where' command on Windows for CLI detection (e03d9b7), closes #273

Documentation

  • agy: add quota management and failover documentation (8ea1e33)

Code Refactoring

  • ui: redesign ProxyStatusWidget with two-state UX (8072b93)

7.13.1 (2026-01-05)

Bug Fixes

  • cliproxy: add management_key support for remote proxy auth separation (0e58d0e)
  • cliproxy: add missing kiro/ghcp provider mappings in remote-auth-fetcher (dea0e87)
  • cliproxy: extract unique accountId from token filename for Kiro/GHCP (7bb7ccc), closes #258
  • cliproxy: proactive token refresh to prevent UND_ERR_SOCKET (a6a653f), closes #256
  • validation: add Windows reserved name validation and version format edge cases (ae1847d)

7.13.0 (2026-01-03)

Features

  • minimax: Add full MiniMax M2.1 support (bd5c9a0)
  • minimax: Add mm profile and migration support (267599d)

Bug Fixes

  • accounts: integrate CLIProxy OAuth accounts into API endpoint (eebcb7b)
  • migrate: Add rename-profile flag handling (4dace51)
  • minimax: Add MiniMax placeholder to DEFAULT_PLACEHOLDERS (46e0995)
  • minimax: prevent double-resolve race condition and align placeholder (a59ad0e)
  • minimax: restore migrate-command, remove broken migration file, fix validator typo (c48f798)

Documentation

  • minimax: Update review_pr.md with fix status (5d34bd6)

Code Refactoring

  • api-key-validator: extract shared validation logic, remove unnecessary comments (a00cf36)
  • minimax: Rename to 'mm' for brevity (2b549f5)

7.12.2 (2026-01-01)

Bug Fixes

  • cliproxy: add kiro/ghcp provider mappings to discoverExistingAccounts (4386e91), closes #242
  • ui: show min Claude quota instead of avg all models (a011908)

Tests

  • cliproxy: add unit tests for discoverExistingAccounts (43f1a98)

7.12.1 (2026-01-01)

Bug Fixes

  • cliproxy: add comprehensive port validation across proxy system (e0a1f8f)
  • cliproxy: filter undefined config values to preserve defaults (4c35e8a)

7.12.0 (2026-01-01)

Features

  • cliproxy: add --allow-self-signed flag for HTTPS connections (#227) (709976e)
  • delegation: add Claude Code CLI flag passthrough (6b74243), closes #89
  • release: CLI flag passthrough, proxy fixes, and UI improvements (#239) (b3ef76a), closes #228 #89 #234 #227

Bug Fixes

  • cliproxy: pass variant port to executor for isolation (e58afd7), closes #228
  • cliproxy: propagate port in unified config and UI preset handlers (2625389)
  • cliproxy: use correct default port (8317) for remote HTTP connections (76aab09)
  • prompt: add stdin.pause() to prevent process hang after password input (f30d0c1)
  • ui: enable cancel button during OAuth authentication (86200eb), closes #234

Tests

  • delegation: add comprehensive CLI flag passthrough tests (d5e485b)

7.11.1 (2025-12-29)

Bug Fixes

7.11.0 (2025-12-29)

Features

  • cliproxy: add --proxy-timeout CLI option (#220) (4cd9bec)

7.10.0 (2025-12-29)

Features

  • cliproxy: add account quota display for Antigravity provider (205b5ab)
  • error-logs: extract model and quota reset info from error logs (e3a71fc)
  • quota: add OAuth token refresh for independent quota fetching (4be8e92)
  • quota: implement proactive token refresh (5-min lead time) (00597b3)
  • ui: replace misleading token expiry with runtime-based status (6ccf6c5)

Bug Fixes

  • cliproxy: resolve merge conflicts and add edge case fixes (7861b63)
  • error-logs: fix endpoint regex for v1/messages URL format (19550b2)
  • quota,error-logs: match CLIProxyAPI headers and enhance error log display (ac6f382)
  • quota: add unprovisioned account detection with actionable message (ecfdcde)
  • quota: remove misleading token expiration check in quota fetcher (739270a)
  • ui: remove duplicate provider prop in ModelConfigTab (3531991)
  • ui: replace misleading 'Expires' with 'Last used' in credential health (4233415)

7.9.0 (2025-12-27)

Features

  • dashboard: add Import from Kiro IDE button (5f59d71)
  • ui: add auth profile management to Dashboard (fa8830e)

Bug Fixes

  • cliproxy: ensure version sync after binary update (29f1930)
  • config: use safe inline logic in getSettingsPath() legacy fallback (a4a473a)
  • dashboard: support unified config.yaml in web server routes (0c69740), closes #206
  • improve type safety and error handling in config-manager (8a3c5a4), closes #215
  • kiro: add fallback import from Kiro IDE when OAuth callback redirects (add4aa5), closes #212
  • run RecoveryManager before early-exit commands and improve config handling (0be3977), closes #214
  • test: remove redundant build from beforeAll hook (67a48a8)
  • tests: update test files for renamed getCliproxyConfigPath function (ec2ee0a)
  • wrap RecoveryManager in try-catch to prevent blocking CLI commands (2fff770), closes #215

Documentation

  • update design principles and add feature interface requirements (c200334)

7.8.0 (2025-12-26)

Features

  • api: add auth tokens REST endpoints (ffd4996)
  • cli: add tokens command for auth token management (0c6491c)
  • cliproxy: add customizable auth token manager (c4f0916)
  • cliproxy: add variant port isolation for concurrent proxy instances (0bcaf4b)
  • ui: add auth tokens settings tab (71335a6)
  • ui: add Settings link to control panel key hint (7a6341f)

Bug Fixes

  • cliproxy: use auth inheritance in stats-fetcher and config-generator (133aeba)
  • dashboard: read accounts from unified config (8d7845d), closes #203
  • dashboard: support unified config across health checks and settings (9722e19), closes #203
  • dashboard: support unified config in overview and file watcher (25f0ddb), closes #203
  • doctor: comprehensive health check fixes (ac74550)
  • doctor: prefer config.yaml and make settings files optional (4fca7d1)
  • ui: initialize colors early for consistent status output (e38af6a), closes #201
  • ui: simplify config header and add explicit save button (7e031b5)
  • ui: use effective management secret in control panel embed (a762563)

Tests

  • cliproxy: add comprehensive auth token test suite (ed6776a)
  • cliproxy: add integration tests for variant port isolation (8f120b5), closes #184

7.7.1 (2025-12-26)

Bug Fixes

  • health: correct CLIProxy port detection on macOS/Linux (d1a0ebe)
  • health: use prefix matching for Linux process name truncation (91e7b9f)

7.7.0 (2025-12-25)

Features

  • api: add Minimax, DeepSeek, Qwen provider presets (e7066b9), closes #123
  • kiro: add UI toggle and auth hint for --no-incognito option (083e674)
  • kiro: improve auth UX with normal browser default and URL display (df0c947)

Bug Fixes

  • cliproxy: preserve user API keys during config regeneration (2b4d21e), closes #200
  • core: address all code review issues from PR #199 (f2a4200)
  • kiro: add --no-incognito option for normal browser auth (13e4bac)
  • profiles: prevent GLM auth regression from first-time install detection (cc2d62d), closes #195
  • qwen: inherit stdin for Device Code flows to enable interactive prompts (c811fdf), closes #188
  • ui: add gemini-3-flash-preview to model dropdowns (50653d1), closes #194
  • ui: respect initialMode in profile create dialog (db3662b)

Code Refactoring

  • paths: use expandPath() consistently for cross-platform path handling (adb6222)

Tests

  • auth: add comprehensive tests for GLM auth persistence fix (92a79aa)

7.6.0 (2025-12-24)

Features

  • cli: add config command hints to help and error messages (e981c39)
  • setup: add first-time setup wizard for config initialization (cec616d), closes #142

Bug Fixes

  • cliproxy: respect enabled:false and use protocol-based port defaults (a99b6eb)
  • config: improve edge case handling for config initialization (ca78993)
  • ghcp: display device code during OAuth device code flow (46f1699), closes #189

Code Refactoring

  • config: migrate to config.yaml as primary format (b34469d), closes #142
  • ghcp: remove unused device code session management (5de6ccc)

7.5.1 (2025-12-23)

Bug Fixes

  • ui: use UI color system for consistent CLI indicators (91cd9ff)

Code Refactoring

  • cliproxy: enhance binary downloader with robust error handling (c2dd026)

7.5.0 (2025-12-22)

Features

  • glm: add GLM 4.7 model support (a827b73), closes #179

7.4.0 (2025-12-22)

Features

  • api: add Azure Foundry preset (31bafaa)

7.3.0 (2025-12-22)

Features

  • auth: add Kiro and GitHub Copilot OAuth providers (2b441f6)
  • cliproxy: add ghcp settings and update variant adapter (fae1ee2)
  • cliproxy: add kiro and ghcp OAuth configurations (a01abe1)
  • cliproxy: add kiro and ghcp providers to CLIProxyProvider type (036714c)
  • cliproxy: add kiro and ghcp to OAuth diagnostics and account manager (49bc0a4)
  • cliproxy: migrate from CLIProxyAPI to CLIProxyAPIPlus (6f8587d)
  • config: add base settings for Kiro and Copilot providers (b15ff7f)
  • config: add kiro and ghcp to unified config and auth routes (d04bcc1)
  • ui: add Kiro and Copilot provider icons (9ca20e7)
  • ui: add kiro and ghcp to provider types and configs (bf3d51a)
  • ui: add kiro and ghcp to wizard, auth flow, and settings (9221545)
  • ui: integrate Kiro and Copilot providers, rename to CLIProxy Plus (0f029f9)
  • ui: update cliproxy components with kiro and ghcp providers (099b712)

Bug Fixes

  • update download URLs and binary names for CLIProxyAPIPlus (4829902)

Documentation

  • add CLIProxyAPIPlus attribution for Kiro and Copilot (743d34a)
  • cli: add ccs kiro and ccs ghcp to help text (8c8a15f)
  • update documentation for kiro and ghcp providers (b93b91c)

Code Refactoring

  • complete CLIProxy Plus branding across CLI and UI (af92bc3)
  • rename CLIProxyAPI to CLIProxy Plus across UI and CLI (670993d)

7.2.0 (2025-12-22)

Features

  • cliproxy: add localhost URL rewriting for remote proxy mode (d0599e8)
  • cliproxy: add proxy target resolver for remote/local routing (9e2fd09)
  • cliproxy: add remote routing for stats and auth endpoints (17bb6f9)
  • ui: add remote mode indicator to provider editor header (3bf9ebe)
  • ui: dynamic control panel embed for remote CLIProxy (bfa55e0)
  • ui: show remote server info in ProxyStatusWidget (d86dfab)

Bug Fixes

  • api: add try-catch error handling to route handlers (85b0f17)
  • api: complete error handling and add missing endpoints (3ed961f)
  • api: resolve route path mismatches (557926f)
  • cliproxy: add gemini-cli provider mapping for remote auth (068d577)
  • cliproxy: address code review findings for remote routing (cdb4653)
  • cliproxy: load remote config from config.yaml for proxy resolution (a2d01bc)
  • cliproxy: merge dev with proper remote mode integration (28c6262)
  • cliproxy: respect user model settings in remote proxy mode (4ee3100)
  • ui: correct cliproxy account API paths (e84df00)
  • ui: hide local paths in remote CLIProxy mode (883d9fa)

Documentation

  • update documentation for v7.1 remote CLIProxy feature (ec7781b), closes #142

CI

  • improve issue tagging and label management in release workflows (3638620)

7.1.1 (2025-12-21)

Bug Fixes

  • hooks: memoize return objects to prevent infinite render loops (f15b989)
  • settings: memoize useSettingsActions to prevent infinite render loop (4f75e10)

Documentation

  • update documentation for modularization phases 6-9 (e45b46d)

Code Refactoring

  • ui: modularize analytics page into directory structure (03d9bf7)
  • ui: modularize auth-monitor into directory structure (8ead6fa)
  • ui: modularize settings page into directory structure (104a404)

Tests

  • ui: add vitest testing infrastructure with 99 unit tests (3fca933)

7.1.0 (2025-12-21)

Features

  • ui: add visual feedback for WebSearch model auto-save (eaf566b), closes #164

Bug Fixes

  • ci: use commit-based changelog for dev release Discord notifications (1129ec6)
  • ui: add unsaved changes confirmation when switching profiles (b790005), closes #163
  • ui: fix profile switching and improve UX (86d992f)

Documentation

  • readme: add OpenRouter to built-in providers (676929f)
  • standards: add input state persistence patterns (53a7ba8), closes #165

7.0.0 (2025-12-21)

⚠ BREAKING CHANGES

  • install: GLM/GLMT/Kimi profiles no longer auto-created
  • remove glm.settings.json auto-creation
  • remove glmt.settings.json auto-creation
  • remove kimi.settings.json auto-creation
  • config.json now starts with empty profiles
  • users create via: ccs api create --preset glm
  • or via UI: Profile Create Dialog → Provider Presets
  • existing profiles preserved for backward compatibility

Features

  • api: unify profile management with config-aware services (4c74e92)
  • cli: add --preset option to ccs api create command (418d121)
  • cli: add interactive OpenRouter model picker for api create (d193626)
  • install: remove auto-creation of GLM/GLMT/Kimi profiles (f96116d)
  • openrouter: prioritize Exacto models for better agentic performance (ebc8ee2)
  • proxy: improve remote proxy UX defaults (116b6a1)
  • ui: add dynamic newest models detection for OpenRouter (a1cbd4d)
  • ui: add OpenRouter badge to API Profiles sidebar item (a08aef9)
  • ui: add OpenRouter model catalog core infrastructure (80beb1d)
  • ui: add OpenRouter model picker and tier mapping components (3cd21bb)
  • ui: add provider preset categories with helper function (10cfe0f)
  • ui: add provider presets and OpenRouter promo components (9c90e1d)
  • ui: add streamlined OpenRouter profile editor (7788137)
  • ui: add value input for new environment variables (f947aeb)
  • ui: integrate OpenRouter model picker into profile editor (677f9d1)
  • ui: rewrite profile create dialog with provider presets (adcc323)

Bug Fixes

  • ci: use custom dev versioning to preserve stable version coupling (dce4b36)
  • cliproxy: correct remote proxy URL building for default port (294d8d5)
  • cliproxy: improve remote proxy error messages (55464c5), closes #142
  • cliproxy: use /v1/models for remote proxy health check (5e1d290), closes #142
  • config: add missing cliproxy_server section to YAML serialization (b322203)
  • openrouter: add ANTHROPIC_API_KEY="" default for OpenRouter profiles (70bc44e)
  • openrouter: correct ANTHROPIC_BASE_URL to https://openrouter.ai/api (7d4961e)
  • openrouter: show all env vars except API key in Additional Variables (f41d361)
  • ui: deduplicate API key and restore add variable input (3f7add5)
  • ui: model selection now updates all tiers correctly (723ce28)
  • ui: resolve Radix ScrollArea viewport overflow (2b6600a)
  • ui: show OpenRouterQuickStart by default on API page (05380e2)
  • ui: use current input values for test connection and persist across tabs (12b534c), closes #142 #163 #164 #165
  • update: correct dev version comparison semantic (df77745)

Code Refactoring

  • config: remove secrets.yaml architecture (4f4ab43)
  • ui: rename /api route to /providers (9382278)
  • ui: reorganize profile create dialog with preset categories (96310dd)
  • ui: replace hardcoded orange colors with accent tokens (b9f6823)

Tests

  • npm: update tests for preset-based profile creation (de45fa0)

6.8.0-dev.1 (2025-12-20)

Features

  • proxy: improve remote proxy UX defaults (116b6a1)

Bug Fixes

  • cliproxy: use /v1/models for remote proxy health check (5e1d290), closes #142

6.7.2-dev.1 (2025-12-20)

Code Refactoring

  • ui: rename /api route to /providers (9382278)

6.7.1 (2025-12-20)

Documentation

  • add comprehensive documentation suite for modular architecture (1ffd169)
  • readme: update providers, websearch, and add star history (0dc2da6)

Code Refactoring

  • add barrel exports for commands and utils directories (50c427d)
  • add barrel exports to api/, glmt/, management/ (6372b3d)
  • api: extract service layer from api-command (ecb6bb4)
  • auth: modularize auth-commands into commands/ directory (0341f4f)
  • cliproxy: extract service layer from cliproxy-command (b49b7d1)
  • cliproxy: modularize auth handler and binary (5c28935)
  • cliproxy: modularize binary-manager into binary/ directory (d3c94fe)
  • delegation: modularize headless-executor into executor/ directory (c3baaa8)
  • errors: centralize error handling infrastructure (22dbfd9)
  • glmt: modularize transformer pipeline (cd107e3)
  • management: modularize doctor health checks (0eb2030)
  • remove unused deprecated code (4a5b832)
  • types: add generic types and consolidate ExecutionResult (6c78b63)
  • ui: add barrel exports for analytics and components root (b911db8)
  • ui: organize health components into health/ directory (a106aa2)
  • ui: organize layout components into layout/ directory (bef9955)
  • ui: organize shared components into shared/ directory (3c7b0e7)
  • ui: remove old flat component files after reorganization (e1fd394)
  • ui: split account-flow-viz into account/flow-viz/ directory (8fd35c8)
  • ui: split copilot-config-form into copilot/config-form/ directory (1b1015c)
  • ui: split error-logs-monitor into monitoring/error-logs/ directory (946030c)
  • ui: split profile-editor into profiles/editor/ directory (6778c4d)
  • ui: split provider-editor into cliproxy/provider-editor/ directory (4bea5a3)
  • ui: split quick-setup-wizard into setup/wizard/ directory (81196b0)
  • ui: update imports to use new domain directories (c70ba89)
  • utils: extract formatRelativeTime to utils/time.ts (e1f135a)
  • utils: modularize ui.ts into ui/ directory (c1e5ec7)
  • utils: modularize websearch-manager into websearch/ directory (5e4fa20)
  • utils: remove deprecated color and error functions from helpers.ts (99afb3e)
  • utils: use canonical ValidationResult from types/utils (18424cb)
  • web-server: extract usage aggregator service (9346ff2)
  • web-server: extract usage module to usage/ directory (bae323c)
  • web-server: modularize health-service into health/ directory (c1f30ae)
  • web-server: modularize routes into dedicated files (a12c3d8)
  • websearch: unify CLI status types with ComponentStatus (a8f7dad)

Performance Improvements

  • assets: convert screenshots to WebP, add new feature images (a9d21c2)

6.7.1-dev.1 (2025-12-20)

Documentation

  • add comprehensive documentation suite for modular architecture (1ffd169)
  • readme: update providers, websearch, and add star history (0dc2da6)

Code Refactoring

  • add barrel exports for commands and utils directories (50c427d)
  • add barrel exports to api/, glmt/, management/ (6372b3d)
  • api: extract service layer from api-command (ecb6bb4)
  • auth: modularize auth-commands into commands/ directory (0341f4f)
  • cliproxy: extract service layer from cliproxy-command (b49b7d1)
  • cliproxy: modularize auth handler and binary (5c28935)
  • cliproxy: modularize binary-manager into binary/ directory (d3c94fe)
  • delegation: modularize headless-executor into executor/ directory (c3baaa8)
  • errors: centralize error handling infrastructure (22dbfd9)
  • glmt: modularize transformer pipeline (cd107e3)
  • management: modularize doctor health checks (0eb2030)
  • remove unused deprecated code (4a5b832)
  • types: add generic types and consolidate ExecutionResult (6c78b63)
  • ui: add barrel exports for analytics and components root (b911db8)
  • ui: organize health components into health/ directory (a106aa2)
  • ui: organize layout components into layout/ directory (bef9955)
  • ui: organize shared components into shared/ directory (3c7b0e7)
  • ui: remove old flat component files after reorganization (e1fd394)
  • ui: split account-flow-viz into account/flow-viz/ directory (8fd35c8)
  • ui: split copilot-config-form into copilot/config-form/ directory (1b1015c)
  • ui: split error-logs-monitor into monitoring/error-logs/ directory (946030c)
  • ui: split profile-editor into profiles/editor/ directory (6778c4d)
  • ui: split provider-editor into cliproxy/provider-editor/ directory (4bea5a3)
  • ui: split quick-setup-wizard into setup/wizard/ directory (81196b0)
  • ui: update imports to use new domain directories (c70ba89)
  • utils: extract formatRelativeTime to utils/time.ts (e1f135a)
  • utils: modularize ui.ts into ui/ directory (c1e5ec7)
  • utils: modularize websearch-manager into websearch/ directory (5e4fa20)
  • utils: remove deprecated color and error functions from helpers.ts (99afb3e)
  • utils: use canonical ValidationResult from types/utils (18424cb)
  • web-server: extract usage aggregator service (9346ff2)
  • web-server: extract usage module to usage/ directory (bae323c)
  • web-server: modularize health-service into health/ directory (c1f30ae)
  • web-server: modularize routes into dedicated files (a12c3d8)
  • websearch: unify CLI status types with ComponentStatus (a8f7dad)

Performance Improvements

  • assets: convert screenshots to WebP, add new feature images (a9d21c2)

6.7.0 (2025-12-19)

Features

  • cliproxy: auto-apply default preset when adding first account (4036c42)
  • env: add debug logging for global env injection (68eab56)
  • recovery: add lazy initialization for bun/pnpm users (2d2cd3e)

Bug Fixes

  • ci: use built-in GITHUB_TOKEN for release comments (cff38ac)
  • cliproxy: include BASE_URL and AUTH_TOKEN when applying presets (598454c)
  • cliproxy: prevent port race condition with unified detection and startup lock (96f17e3)
  • cliproxy: prevent variant names matching reserved provider names (7ea64bd)
  • remote-proxy: fix TypeError and make port optional with protocol defaults (03aea4e), closes #142
  • update-checker: resolve dev channel update and duplicate comments (b6b1817)
  • web-server: add comprehensive reserved name validation (2373100)

6.7.0-dev.5 (2025-12-19)

Features

  • cliproxy: auto-apply default preset when adding first account (4036c42)

6.7.0-dev.4 (2025-12-19)

Bug Fixes

  • cliproxy: prevent port race condition with unified detection and startup lock (96f17e3)

6.7.0-dev.3 (2025-12-19)

Features

  • recovery: add lazy initialization for bun/pnpm users (2d2cd3e)

6.7.0-dev.2 (2025-12-19)

Bug Fixes

  • cliproxy: include BASE_URL and AUTH_TOKEN when applying presets (598454c)
  • cliproxy: prevent variant names matching reserved provider names (7ea64bd)
  • web-server: add comprehensive reserved name validation (2373100)

6.7.0-dev.1 (2025-12-19)

Features

  • env: add debug logging for global env injection (68eab56)

6.6.2-dev.3 (2025-12-19)

Bug Fixes

  • update-checker: resolve dev channel update and duplicate comments (b6b1817)

6.6.2-dev.2 (2025-12-19)

Bug Fixes

  • remote-proxy: fix TypeError and make port optional with protocol defaults (03aea4e), closes #142

6.6.2-dev.1 (2025-12-19)

Bug Fixes

  • ci: use built-in GITHUB_TOKEN for release comments (cff38ac)

6.6.1 (2025-12-19)

Bug Fixes

  • cliproxy: register session on dashboard start and add port-based stop fallback (a3b172c)

6.6.1-dev.1 (2025-12-19)

Bug Fixes

  • cliproxy: register session on dashboard start and add port-based stop fallback (a3b172c)

6.6.0 (2025-12-19)

⚠ BREAKING CHANGES

  • Native shell installers (curl/irm) no longer work. Use npm install -g @kaitranntt/ccs instead.

Features

  • ci: add Discord notifications for releases (ee76d66)
  • ci: add semantic-release for dev branch with rich Discord notifications (0f590c8)
  • cleanup: add age-based error log cleanup (45207b4)
  • cliproxy: add getRemoteEnvVars for remote proxy mode (f4a50d0)
  • cliproxy: add proxy config resolver with CLI flag support (68a93f0)
  • cliproxy: add remote proxy client for health checks (30d564c)
  • cliproxy: integrate remote proxy mode in executor (bd1ff2f)
  • cliproxy: set WRITABLE_PATH for log storage in ~/.ccs/cliproxy/ (6b9396f)
  • config: add proxy configuration types and schema (eff2e2d)
  • config: add proxy section to unified config loader (1971744)
  • dashboard: add error log viewer for CLIProxy diagnostics (5b3d565), closes #132
  • global-env: add global environment variables injection for third-party profiles (5d34326)
  • ui: add absolute path copy for error logs (5d4f49e)
  • ui: add Proxy settings tab to dashboard (9a9ef98)
  • ui: add Stop and Restart buttons to ProxyStatusWidget (c9ad0b0)
  • ui: add version sync timestamp to ProxyStatusWidget (d43079b)
  • ui: redesign error logs monitor with split view layout (8f47b87)
  • ui: show CLIProxyAPI update availability in dashboard (96762a9)
  • web-server: add proxy configuration API routes (8decdfb)

Bug Fixes

  • ci: remove deprecated installer references from dev-release workflow (4b969b6)
  • ci: remove sync-version.js that depends on deleted VERSION file (18729c9)
  • cliproxy: prevent misleading update message when proxy is running (2adc272), closes #143
  • error-logs-monitor: properly handle status loading state (1ef625e)
  • profiles: prevent env var inheritance for settings-based profiles (903bc10)

Documentation

  • cliproxy: add remote proxy documentation (196422c)

Styles

  • ui: use sidebar accent colors for proxy update button (eeb6913)
  • ui: widen cliproxy sidebar from w-64 to w-80 (248d970)

Code Refactoring

  • remove deprecated native shell installers (126cffc)
  • rename proxy to cliproxy_server and update API routes (8d8d4c2)

6.6.0-dev.4 (2025-12-19)

Bug Fixes

  • profiles: prevent env var inheritance for settings-based profiles (903bc10)

6.6.0-dev.3 (2025-12-19)

Features

  • cliproxy: add getRemoteEnvVars for remote proxy mode (f4a50d0)
  • cliproxy: add proxy config resolver with CLI flag support (68a93f0)
  • cliproxy: add remote proxy client for health checks (30d564c)
  • cliproxy: integrate remote proxy mode in executor (bd1ff2f)
  • config: add proxy configuration types and schema (eff2e2d)
  • config: add proxy section to unified config loader (1971744)
  • ui: add Proxy settings tab to dashboard (9a9ef98)
  • web-server: add proxy configuration API routes (8decdfb)

Documentation

  • cliproxy: add remote proxy documentation (196422c)

Styles

  • ui: use sidebar accent colors for proxy update button (eeb6913)

Code Refactoring

  • rename proxy to cliproxy_server and update API routes (8d8d4c2)

6.6.0-dev.2 (2025-12-19)

Bug Fixes

  • ci: remove sync-version.js that depends on deleted VERSION file (18729c9)

6.6.0-dev.1 (2025-12-19)

⚠ BREAKING CHANGES

  • Native shell installers (curl/irm) no longer work. Use npm install -g @kaitranntt/ccs instead.

Features

  • ci: add Discord notifications for releases (ee76d66)
  • ci: add semantic-release for dev branch with rich Discord notifications (0f590c8)
  • cleanup: add age-based error log cleanup (45207b4)
  • cliproxy: set WRITABLE_PATH for log storage in ~/.ccs/cliproxy/ (6b9396f)
  • dashboard: add error log viewer for CLIProxy diagnostics (5b3d565), closes #132
  • global-env: add global environment variables injection for third-party profiles (5d34326)
  • ui: add absolute path copy for error logs (5d4f49e)
  • ui: add Stop and Restart buttons to ProxyStatusWidget (c9ad0b0)
  • ui: add version sync timestamp to ProxyStatusWidget (d43079b)
  • ui: redesign error logs monitor with split view layout (8f47b87)
  • ui: show CLIProxyAPI update availability in dashboard (96762a9)

Bug Fixes

  • ci: remove deprecated installer references from dev-release workflow (4b969b6)
  • cliproxy: prevent misleading update message when proxy is running (2adc272), closes #143
  • error-logs-monitor: properly handle status loading state (1ef625e)

Styles

  • ui: widen cliproxy sidebar from w-64 to w-80 (248d970)

Code Refactoring

  • remove deprecated native shell installers (126cffc)

6.5.0 (2025-12-18)

Bug Fixes

  • cli: allow ccs copilot as profile by routing only known subcommands (2c6dfe7)
  • cli: route 'ccs copilot' without subcommand to help (671a9e7)
  • copilot: use gpt-4.1 as default model and 127.0.0.1 for local connections (ec6face)
  • copilot: use token file check for instant auth status (4783632)
  • copilot: widen sidebar and balance split-view layout (63bdc3a)
  • ui: add install button to copilot page sidebar (3865747)
  • ui: constrain copilot config left panel width to 540px (da5dc31)
  • ui: handle 404 errors in profile settings fetch (60c01c7)
  • ui: improve copilot sidebar logical order and remove redundancy (f9b89de)

Features

  • api: add copilot install and info endpoints (fee241d)
  • api: add copilot REST API endpoints (c84db38)
  • auth: add copilot profile detection (e5a1f60)
  • cli: add copilot CLI commands (d25db1f)
  • config: add copilot configuration types and loader (b87aeae)
  • copilot: add complete model catalog with plan tiers (7653cab)
  • copilot: add copilot manager module (3b8a85c)
  • copilot: add model tier mapping support (d21908a)
  • copilot: add raw settings API and model mapping routes (a3e2153)
  • copilot: add raw settings support to useCopilot hook (882792a)
  • copilot: add self-managed package manager for copilot-api (ecdad1d)
  • copilot: redesign config form to match CLIProxy pattern (7886259)
  • ui: add copilot dashboard page (6b04532)
  • ui: add copilot-api install button and version display (f813ad0)
  • ui: display plan tiers and presets in copilot model selector (87c2acc)
  • ui: expose auth result with device code in hook (5f0fde9)
  • update: add automatic update check on startup (8a0ad53)

6.4.0 (2025-12-18)

Bug Fixes

  • websearch: detect Gemini CLI auth status before showing Ready (98c21ef)

Features

  • cliproxy: implement interactive project selection for OAuth flows (a66abba)

6.3.1 (2025-12-18)

Bug Fixes

  • ui: limit Connection Timeline to 100 events to prevent lag (170dcdc)

6.3.0 (2025-12-18)

Bug Fixes

  • dashboard: detect legacy proxy instances without session lock (85cfbde)

Features

  • cliproxy: default session persistence for CLIProxy (a7450bd), closes #129
  • dashboard: add CLIProxy status widget with start button (589cd2c)

6.2.1 (2025-12-18)

Bug Fixes

  • ui: add error state handling to API Profiles page (2e77646), closes #125
  • websearch: pass through to native WebSearch for account profiles (6bd1f42)

6.2.0 (2025-12-18)

Bug Fixes

  • ui: improve account flow viz layout to fill available width (7b876d2)
  • ui: improve account-flow-viz layout and styling (ee85a1f)
  • ui: optimize bundle size and fix calendar crash (572703f)
  • ui: unify account card padding and fix SVG glow filter (ab4c95b)

Features

  • cliproxy: remove thinking token cap and update agy haiku model (925ac8e)
  • ui: add ClaudeKit badge and Sponsor buttons to navbar (9028b74)
  • ui: add multi-zone layout and enhanced drag features to account flow viz (365f820)
  • ui: extend privacy mode to blur cost/token values in analytics (2bf7992)

6.1.0 (2025-12-17)

Bug Fixes

  • cliproxy: prevent shared proxy termination on multi-session exit (3629e3e), closes #118

Features

  • privacy: add privacy/demo mode for personal info blurring (6f3fb54)
  • ui: add iflow provider logo support (cefb3a5)

6.0.0 (2025-12-17)

Bug Fixes

  • config: force shutdown immediately instead of waiting (6d69379)
  • dev-install: prevent duplicate entries in bun global package.json (13824b6)
  • websearch: preserve opencode and grok in mergeWithDefaults (110925e)
  • websearch: update config.yaml comments to match CLI implementation (81e46bd)
  • websearch: update existing hook config when filename changes (4959928)
  • websearch: use correct @vibe-kit/grok-cli package (b6c1ae4)

Features

  • build: add preinstall script to manage UI dependencies (78fb459)
  • cliproxy-stats: Implement detailed stats fetching and integrate into UI (3216a0e)
  • monitor: Enhance auth monitor and account flow visualization (994bd77)
  • ui: add connection timeline and improve account flow layout (27de6af)
  • ui: add documentation button to header (6e4ee80)
  • ui: enhance light theme contrast and animations (197848a)
  • ui: implement auth monitor components & pages (b97c3bf)
  • websearch: add advanced configuration and custom MCP support (cadd2e8)
  • websearch: add Grok CLI support and improve install guidance (c0938e1)
  • websearch: add MCP fallback and Gemini CLI hook for third-party profiles (fd99ebc)
  • websearch: add model config + improve hook UX (14c53d5)
  • websearch: add multi-tier MCP fallback for third-party profiles (071ec04)
  • websearch: add OpenCode CLI as third WebSearch provider (482cda0)
  • websearch: dynamic hook timeout from config + grok-code default (d33fefd)
  • websearch: enhance Gemini CLI integration, package manager detection, and WebSearch status (f7a1a40)
  • websearch: implement fallback chain for CLI providers (e6aa8ac)
  • websearch: respect config provider settings and consolidate prompts (e71cb62)
  • web: update account manager and web routes (127e0e6)

BREAKING CHANGES

  • websearch: Hook no longer falls back to all installed CLIs. It now strictly respects config.yaml settings.

5.20.0 (2025-12-15)

Bug Fixes

  • auth: improve default account hint and add reset-default command (2fb266c), closes #106
  • resolve ESM/CJS compatibility for Node.js 18 (b915127), closes #110

Features

  • oauth: enhance auth flow with detailed pre-flight checks and real-time progress (e80c48c)

5.19.2 (2025-12-14)

Bug Fixes

  • auth: handle Windows spawn for profile creation (5efab53)

5.19.1 (2025-12-14)

Bug Fixes

  • auth: include unified config accounts in auth list command (3cdf84b)

5.19.0 (2025-12-14)

Bug Fixes

  • auth: use unified config for account profile touch in ccs.ts (4ccde8a), closes #98
  • ci: prevent shell injection from PR body markdown (5a8db2c)
  • cliproxy: add SSH port forwarding instructions for headless OAuth (a6b95db)

Features

  • cliproxy: disable logging by default and add cleanup command (e5cdf7c), closes #96

5.18.0 (2025-12-13)

Bug Fixes

  • analytics: fill hourly gaps with zero values in 24H view (4412d22)
  • analytics: guard against undefined data arrays in filtering (e08935b)
  • analytics: use UTC dates and cap hourly chart at current time (9fd0c1c)

Features

  • ui: implement operational hub core components (a2d049c)
  • ui: premium home page with gradient glass design (dbc1371)
  • ui: redesign home page as Interactive Status Board (cf567bb)

5.17.0 (2025-12-12)

Bug Fixes

  • ci: improve issue tagging - use bot, skip duplicates, simpler msg (27f9ea8)
  • ci: resolve YAML syntax error in dev-release workflow (763928f)
  • cliproxy: inherit stdin for OAuth interactive prompts (84484c0), closes #91
  • cliproxy: respect version pin when user installs specific version (a7ba1a1), closes #88
  • config: prevent profile loss from strict config validation (d343abc), closes #82
  • update: add shell option for Windows npm/cache spawn (8c1b8e4), closes #85
  • update: avoid Node deprecation warning on Windows spawn (bace084)
  • update: suppress Node deprecation warnings on Windows (d616e61)

Features

  • analytics: add 24H hourly chart with caching and UI improvements (d64115f)
  • cli: standardize UI output with ui.ts abstraction layer (4005f1c)

Performance Improvements

  • ci: add HUSKY=0 to release workflow (99f3a67)
  • ci: reduce test redundancy from 4x to 1x per release (d39095c)

5.16.0 (2025-12-12)

Features

  • cliproxy: add provider editor with presets and control panel (92b7065)
  • cliproxy: add stats fetcher and OpenAI-compatible model manager (a94c3d6)
  • ui: add cliproxy stats overview and enhance analytics components (c3b2d50)
  • ui: redesign cliproxy page with master-detail layout (f8648be)

5.15.0 (2025-12-11)

Bug Fixes

  • cache: use ~/.ccs/cache/ for usage and update-check files (790ac3c)
  • migrate: include backup path in rollback command (0aa9131)
  • migrate: skip autoMigrate when running migrate command (05a6199)
  • ui: resolve layout and theme issues in profile editor (46ee1df)

Features

  • api-profile-ux: Implement API & UI for profile management (8357005)
  • api-profile-ux: implement tabbed profile editor and fix disclaimer visibility (8c9d669)
  • api: improve create UX with URL validation and model mapping (f83051b), closes #72
  • cliproxy: implement --nickname flag for account management (0d70708)
  • config: add unified YAML config with migration support (b621b8e), closes #75
  • dashboard: add code editor for raw JSON settings editing (2b1a3b4), closes #73
  • profile: refactor create UX with dialog-based interface (720ff9d)

5.14.0 (2025-12-10)

Features

  • ui: replace anomaly alert badge with usage insights card (824c3ba)
  • usage-analytics: implement token cost breakdown and anomaly detection (d81a5e6)
  • usage: add internal data aggregation and cost tracking (49b4065)

5.13.0 (2025-12-09)

Features

  • analytics: aggregate usage from all CCS auth profiles (1e11d2e)
  • analytics: refactor model color management and fix UI display issues (f255a20)
  • cliproxy: add --add flag and nickname support for multi-account auth (493492f)
  • cliproxy: add --use and --accounts flags for multi-account switching (8f6684f)
  • cliproxy: add multi-account support phases 02-03 (d868dc4)
  • dashboard: add Environment and OAuth Readiness groups to health page (96d9fc6)
  • doctor: add OAuth diagnostics for Windows headless false positives (92007d7)
  • ui: simplify CLIProxy page UX with dedicated Add Account dialog (8f5c006)

5.12.1 (2025-12-09)

Performance Improvements

  • analytics: instant dashboard loading with disk cache persistence (abb156d)

5.12.0 (2025-12-09)

Bug Fixes

  • security: improve API key detection patterns to prevent false positives (efb42ba)
  • ui: reduce focus ring size to prevent overlapping content (639eec7)
  • ui: update dropdown menu item SVG color on focus (ed5c3fc)
  • web: correct skill detection to look for SKILL.md instead of prompt.md (13194fe)

Features

  • analytics: add usage analytics page with caching layer (a721af3)
  • cli: Introduce version utility and command updates (d77f07e)
  • cliproxy: promote thinking models as default for agy provider (1475adb)
  • ui: add modular health dashboard components (4ff6f08)
  • ui: Enhance web overview with new components and data (cc16556)
  • ui: redesign health dashboard to match ccs doctor output (8aae0db)

Performance Improvements

  • analytics: add cache pre-warming and SWR pattern for instant page load (69e6a32)

5.11.0 (2025-12-08)

Bug Fixes

  • cliproxy: map token type values to provider names for account discovery (17caf80)
  • ui: improve cliproxy dashboard layout and dropdown styling (10d0550)
  • ui: remove padding from cliproxy card (3a1e8c0)

Features

  • cliproxy: add multi-account support for CLIProxy providers (4dc17fa)

5.10.0 (2025-12-08)

Bug Fixes

  • glmt: add bearer prefix for openai-compatible endpoints (077a406), closes #61
  • glmt: pass env vars to proxy subprocess (e17a068)
  • ui: adjust layout of localhost disclaimer (ad5859c)
  • ui: improve table column widths and spacing (9b4a5d8)
  • ui: prettier formatting for documentation link (d11071a)
  • ui: suppress react compiler warning in profiles-table (cf072c0)

Features

  • build: disable commitlint subject-case rule and add clean-dist script (5947532)
  • cliproxy: add authentication status display to web dashboard (a283f94)
  • cliproxy: deprecate claude thinking models in agy provider (63b3ca7)
  • completions: enhance cliproxy help and update shell completion scripts (59a2f2b)
  • doctor: improve port detection with process identification (98fd1be)
  • ui: add accounts and cliproxy management dashboard (03059db)
  • ui: add ccs branding assets and logo component (1b16305)
  • ui: add comprehensive quality gates and fix linting issues (707af2f)
  • ui: enhance settings dialog with tabbed interface and scrollable areas (4adb94b)
  • ui: enhance visual contrast and update project link (c65d9c9)
  • ui: redesign sidebar and fix disclaimer (c8890f3)
  • ui: reorganize theme colors and add dev script (235bd6b)
  • ui: update theme colors to match brand palette (b5f22e4)
  • web-dashboard: add dev mode with hmr and optimize build (23a3382)
  • web-dashboard: add express server and react ui scaffolding (6a6f2a2)
  • web-dashboard: add rest api and real-time sync (56502ab)
  • web-dashboard: complete settings, health, shared data and build integration (5975802)
  • web: enhance dashboard functionality and ui components (6e2da64)
  • web: update shared routes and home page for dashboard (e078f15)

5.9.0 (2025-12-06)

Features

  • cliproxy: add crud commands for variant profiles (6427ecf)

5.8.0 (2025-12-05)

Bug Fixes

  • agy: enable claude model thinking via antigravity profile (6f19440)
  • agy: preserve user settings during model switch (f5c31da)
  • agy: remove max_thinking_tokens when switching to non-claude model (6decd15)
  • cliproxy: consolidate download ui to single spinner (ace5ba8)
  • cliproxy: only remove provider-specific auth files on logout (4770047)
  • skill: use yaml block scalar for ccs-delegation description (26154c3)

Features

  • agy: disable thinking toggle for claude models via antigravity (f5a1b81), closes #415
  • delegation: add passthrough args for claude cli flags (26d72cf)

5.7.0 (2025-12-05)

Bug Fixes

  • ci: add path filtering to deploy-ccs-worker pull request trigger (64a8e86)
  • doctor: repair shared settings.json symlink broken by claude cli (1471bd2), closes #57
  • types: add forceversion to binarymanagerconfig interface (3bb1ea7)

Features

  • cliproxy: add iFlow OAuth provider support (#55) (20bf626)

5.6.0 (2025-12-04)

Bug Fixes

  • cliproxy: clarify paid tier messaging to reference google account tier (848fbf4)
  • cliproxy: correct model selection default and update fallback version (fdb8761)
  • dev-release: find next available dev version from npm (482f3a7)
  • doctor: use actual installed clipproxy version instead of hardcoded (e3edcf6)
  • prompt: strip bracketed paste escape sequences from password input (df31ffc)
  • update: add --help support and --dev alias for update command (b18163c)

Features

  • cliproxy: add model catalog with configuration management (4654c15)
  • cliproxy: add version management command (7e07615)
  • cliproxy: add warning for broken claude proxy models on agy (0e11426), closes CLIProxyAPI#415
  • prompt: add password input utility with masking (3bdbff9)
  • release: simplify dev versioning with stable base (942b4b9)

5.5.0 (2025-12-04)

Bug Fixes

  • changelog: restore full changelog history from main (2e5b1f2)
  • tests: migrate test suite from mocha to bun test runner (bd46c8d)

Features

  • kimi: update default model to kimi-k2-thinking-turbo (134511c)

5.4.4-dev.2 (2025-12-04)

Bug Fixes

  • changelog: restore full changelog history from main (2e5b1f2)

5.4.3 (2025-12-03)

Bug Fixes

  • postinstall: handle broken symlinks during npm install (81add5a)

5.4.2 (2025-12-03)

Bug Fixes

  • merge: resolve conflicts between dev and main (8347ea6)
  • sync: implement copy fallback for windows when symlinks unavailable (6b3f93a), closes #45

5.4.2-dev.1 (2025-12-03)

Bug Fixes

  • merge: resolve conflicts between dev and main (8347ea6)
  • sync: implement copy fallback for windows when symlinks unavailable (6b3f93a), closes #45

5.4.1 (2025-12-03)

Bug Fixes

  • cliproxy: resolve windows auth browser not opening (af4d6cf), closes #42
  • doctor: resolve windows claude cli detection failure (cfe9ba0), closes #41
  • sync: implement copy fallback for windows when symlinks unavailable (6b3f93a), closes #45

5.4.1-dev.1 (2025-12-03)

Bug Fixes

  • cliproxy: resolve windows auth browser not opening (af4d6cf), closes #42
  • doctor: resolve windows claude cli detection failure (cfe9ba0), closes #41

5.4.0 (2025-12-02)

Bug Fixes

  • auth: prevent default profile from using stale glm env vars (13d13da), closes #37
  • cliproxy: convert windows backslashes to forward slashes in config.yaml auth-dir (a6663cb), closes #36
  • cliproxy: improve qwen oauth error handling (7e0b0fe), closes #29
  • cliproxy: use double-dash flags for cliproxyapi auth (#24) (4c81f28)
  • deps: add chalk, boxen, gradient-string, listr2 as dependencies (a214749)
  • glmt: handle 401 errors and headers-already-sent exception (#30) (c953382), closes #26
  • prompt: improve password input handling with raw mode and buffer support (bc56d2e)

Features

  • cliproxy: add qwen code oauth provider support (#31) (a3f1e52), closes #29
  • cliproxy: auto-update cliproxyapi to latest release on startup (8873ccd)
  • profile: add profile command with configuration display (53d7a15)
  • shell-completion: add --force flag and fix zsh profile coloring (7faed1d)
  • ui: add central ui abstraction layer for cli styling (6e49e0e)
  • ui: enhance auth commands with new ui layer (6f42a65)
  • ui: enhance delegation with listr2 task lists and styled output (716193a)
  • ui: enhance doctor and error manager with new ui layer (57016f3)
  • ui: enhance help and profile commands with new ui layer (f3ed359)
  • ui: enhance section headers with gradient and rename profile to api (073a5e1)

5.4.0-beta.3 (2025-12-02)

Bug Fixes

  • cliproxy: convert windows backslashes to forward slashes in config.yaml auth-dir (a6663cb), closes #36

5.4.0-beta.2 (2025-12-02)

Bug Fixes

  • auth: prevent default profile from using stale glm env vars (13d13da), closes #37

5.4.0-beta.1 (2025-12-02)

Bug Fixes

  • cliproxy: improve qwen oauth error handling (7e0b0fe), closes #29
  • cliproxy: use double-dash flags for cliproxyapi auth (#24) (4c81f28)
  • deps: add chalk, boxen, gradient-string, listr2 as dependencies (a214749)
  • glmt: handle 401 errors and headers-already-sent exception (#30) (c953382), closes #26
  • prompt: improve password input handling with raw mode and buffer support (bc56d2e)

Features

  • cliproxy: add qwen code oauth provider support (#31) (a3f1e52), closes #29
  • cliproxy: auto-update cliproxyapi to latest release on startup (8873ccd)
  • profile: add profile command with configuration display (53d7a15)
  • shell-completion: add --force flag and fix zsh profile coloring (7faed1d)
  • ui: add central ui abstraction layer for cli styling (6e49e0e)
  • ui: enhance auth commands with new ui layer (6f42a65)
  • ui: enhance delegation with listr2 task lists and styled output (716193a)
  • ui: enhance doctor and error manager with new ui layer (57016f3)
  • ui: enhance help and profile commands with new ui layer (f3ed359)
  • ui: enhance section headers with gradient and rename profile to api (073a5e1)

5.3.0 (2025-12-01)

Features

5.3.0-beta.4 (2025-12-01)

Bug Fixes

  • cliproxy: improve qwen oauth error handling (#33) (1c3374f), closes #29

5.3.0-beta.3 (2025-12-01)

Bug Fixes

  • prompt: improve password input handling with raw mode and buffer support (bc56d2e)

Features

  • profile: add profile command with configuration display (53d7a15)
  • shell-completion: add --force flag and fix zsh profile coloring (7faed1d)

5.2.1 (2025-12-01)

Bug Fixes

  • cliproxy: improve qwen oauth error handling (#33) (1c3374f), closes #29

5.3.0-beta.2 (2025-12-01)

Bug Fixes

  • cliproxy: improve qwen oauth error handling (7e0b0fe), closes #29

5.3.0-beta.1 (2025-12-01)

Bug Fixes

  • cliproxy: use double-dash flags for cliproxyapi auth (#24) (4c81f28)
  • glmt: handle 401 errors and headers-already-sent exception (#30) (c953382), closes #26

Features

  • cliproxy: add qwen code oauth provider support (#31) (a3f1e52), closes #29
  • cliproxy: auto-update cliproxyapi to latest release on startup (8873ccd)

5.2.0 (2025-12-01)

Features

  • release: trigger v5.2.0 release (7b65374)

5.1.1 (2025-12-01)

Bug Fixes

  • cliproxy: use double-dash flags for cliproxyapi auth (9489884)

5.1.1-beta.1 (2025-12-01)

Bug Fixes

  • cliproxy: use double-dash flags for cliproxyapi auth (#24) (4c81f28)

5.1.0 (2025-12-01)

Bug Fixes

  • ci: use pat token to bypass branch protection (04af7e7)

Features

  • release: implement semantic versioning automation with conventional commits (d3d9637)

Changelog

Format: Keep a Changelog

[5.0.0] - 2025-11-28

Added

  • CLIProxy OAuth Profiles: Three new zero-config profiles powered by CLIProxyAPI

    • ccs gemini - Google Gemini via OAuth (zero config)
    • ccs codex - OpenAI Codex via OAuth (zero config)
    • ccs agy - Antigravity (AGY) via OAuth (zero config)
  • Download-on-Demand Binary: CLIProxyAPI binary (~15MB) downloads automatically on first use

    • Supports 6 platforms: darwin/linux/windows × amd64/arm64
    • SHA256 checksum verification
    • 3x retry with exponential backoff
    • No npm package size impact
  • OAuth Authentication System (src/cliproxy/auth-handler.ts):

    • Browser-based OAuth flow with automatic token storage
    • Headless mode fallback (ccs gemini --auth --headless)
    • Token storage in ~/.ccs/cliproxy-auth/<provider>/
    • 2-minute OAuth timeout protection
  • CLIProxy Diagnostics in ccs doctor:

    • Binary installation status + version
    • Config file validation
    • OAuth status per provider (gemini/codex/agy)
    • Port 8317 availability check
  • Enhanced Error Messages (src/utils/error-manager.ts):

    • OAuth timeout troubleshooting
    • Port conflict resolution
    • Binary download failure with manual URL
  • New CLIProxy Module (src/cliproxy/):

    • binary-manager.ts - Download, verify, extract binary
    • platform-detector.ts - OS/arch detection for 6 platforms
    • cliproxy-executor.ts - Spawn/kill proxy pattern
    • config-generator.ts - Generate config.yaml per provider
    • auth-handler.ts - OAuth token management
    • types.ts - TypeScript type definitions
    • index.ts - Central exports

Changed

  • Profile Detection: New priority order
    1. CLIProxy profiles (gemini, codex, agy)
    2. Settings-based profiles (glm, glmt, kimi)
    3. Account-based profiles (work, personal)
    4. Default Claude CLI
  • Help Text: Updated with new OAuth profiles (alphabetically sorted)
  • Profile Detector: Added cliproxy profile type

Technical Details

  • Binary Version: CLIProxyAPI v6.5.27
  • Default Port: 8317 (TCP polling for readiness, no PROXY_READY signal)
  • Model Mappings:
    • Gemini: gemini-2.0-flash (opus: thinking-exp, haiku: flash-lite)
    • Codex: gpt-4o (opus: o1, haiku: gpt-4o-mini)
    • Antigravity: agy (sonnet: agy-pro, haiku: agy-turbo)
  • Storage:
    • Binary: ~/.ccs/bin/cliproxyapi
    • Tokens: ~/.ccs/cliproxy-auth/<provider>/
    • Config: ~/.ccs/cliproxy.config.yaml

Migration

  • No breaking changes: All existing profiles (glm, glmt, kimi, accounts) work unchanged
  • Zero configuration: OAuth profiles work out-of-box after browser login
  • Backward compatible: v4.x commands and workflows unchanged

[4.5.0] - 2025-11-27 (Phase 02 Complete)

Changed

  • Modular Command Architecture: Complete refactoring of command handling system
    • Main entry point (src/ccs.ts) reduced from 1,071 to 593 lines (44.6% reduction)
    • 6 command handlers extracted to dedicated modules in src/commands/
    • Enhanced maintainability through single responsibility principle
    • Command handlers can now be developed and tested independently

Added

  • Modular Command Handlers (src/commands/):

    • version-command.ts (3.0KB) - Version display functionality
    • help-command.ts (4.9KB) - Comprehensive help system
    • install-command.ts (957B) - Installation/uninstallation workflows
    • doctor-command.ts (415B) - System diagnostics
    • sync-command.ts (1.0KB) - Configuration synchronization
    • shell-completion-command.ts (2.1KB) - Shell completion management
  • New Utility Modules (src/utils/):

    • shell-executor.ts (1.5KB) - Cross-platform shell command execution
    • package-manager-detector.ts (3.8KB) - Package manager detection (npm, yarn, pnpm, bun)
  • TypeScript Type System:

    • src/types/ directory with comprehensive type definitions
    • Standardized CommandHandler interface for all commands
    • 100% TypeScript coverage across all new modules

Improved

  • Maintainability: Each command now has focused, dedicated module
  • Testing Independence: Command handlers can be unit tested in isolation
  • Development Workflow: Multiple developers can work on different commands simultaneously
  • Code Navigation: Developers can quickly locate specific command logic
  • Future Extension: New commands can be added without modifying main orchestrator

Technical Details

  • Zero Breaking Changes: All existing functionality preserved
  • Performance: No degradation, minor improvement due to smaller main file
  • Quality Gates: All Phase 01 ESLint strictness rules maintained
  • Type Safety: Comprehensive TypeScript coverage with zero any types
  • Interface Consistency: All commands follow standardized CommandHandler interface

[4.4.0] - 2025-11-23

Changed

  • BREAKING: settings.json now shared across profiles via symlinks
    • Each profile previously had isolated settings.json
    • Now all profiles share ~/.claude/settings.json
    • Migration automatic on install (uses ~/.claude/settings.json)
    • Backups created: <instance>/settings.json.pre-shared-migration
    • Rollback: restore backup manually if needed

Added

  • Doctor validates settings.json symlink integrity
  • Sync repairs broken settings.json symlinks
  • Migration from isolated to shared settings (automatic)

Fixed

  • Consistent shared data architecture across all .claude/ items

[4.3.10] - 2025-11-23

Fixed

  • Update Cache Issue: Fixed ccs update serving cached package versions instead of fresh downloads
  • Package manager cache is now automatically cleared before updating
  • Update now ensures users always receive the latest version from registry

Technical Details

  • Node.js (bin/ccs.js): Added cache clearing for npm, yarn, pnpm before update
    • npm: npm cache clean --force
    • yarn: yarn cache clean
    • pnpm: pnpm store prune
    • bun: No explicit cache clearing needed
  • Bash (lib/ccs): Added npm cache clean --force before npm update
  • PowerShell (lib/ccs.ps1): Added npm cache clean --force before npm update
  • Non-blocking: Update continues even if cache clearing fails (with warning)
  • Manual fallback commands: Updated to include cache clearing step

Impact

  • Users no longer need to manually run npm cache clean --force before ccs update
  • Resolves issue where update reported success but installed cached/outdated version
  • Ensures fresh package downloads from npm registry on every update

[4.3.8] - 2025-11-23

Fixed

  • ora v9 Compatibility: Fixed "ora is not a function" errors in ccs doctor and installer utilities
  • Properly handle ora v9+ ES module format when using CommonJS require()
  • All spinner-based operations now work correctly with ora v9.0.0

Technical Details

  • ora v9+ is an ES module, requiring .default property access in CommonJS
  • Updated import: const oraModule = require('ora'); ora = oraModule.default || oraModule
  • Fallback spinner implementation ensures graceful degradation when ora is unavailable
  • Affects: bin/management/doctor.js, bin/utils/claude-dir-installer.js, bin/utils/claude-symlink-manager.js
  • Impact: ccs doctor command and postinstall scripts now work correctly with latest ora version

[4.3.7] - 2025-11-23

Fixed

  • Postinstall Script: Fixed missing ~/.ccs/.claude/ directory during npm install
  • Made ora dependency optional in ClaudeDirInstaller and ClaudeSymlinkManager
  • Postinstall script now gracefully handles missing ora module during installation
  • Ensures .claude/ directory and symlinks are properly created even when ora is unavailable

Technical Details

  • Root cause: ora module not available during npm install postinstall execution
  • Solution: Optional require with fallback to console.log when ora is unavailable
  • Affects: bin/utils/claude-dir-installer.js, bin/utils/claude-symlink-manager.js
  • Impact: All npm installations now properly create ~/.ccs/.claude/ and CCS symlinks

[4.3.6] - 2025-11-23

Added

  • Plugin Support: Claude Code plugins now shared across all CCS profiles via ~/.ccs/shared/plugins/
  • Symlink architecture: ~/.claude/plugins/~/.ccs/shared/plugins/instance/plugins/
  • Install plugins once, use across GLM, GLMT, Kimi, and all Claude accounts
  • Cross-platform support with Windows fallback (copy mode)

[4.3.5] - 2025-11-22

Changed

  • Deprecated Agent Cleanup: Removed deprecated ccs-delegator.md agent file from installations
  • Enhanced installation process to automatically clean up obsolete files
  • Improved ccs sync command with migration logic for deprecated components

Removed

  • ccs-delegator.md: Agent file deprecated in favor of ccs-delegation skill (v4.3.2)
  • Clean up of package copy in ~/.ccs/.claude/agents/ccs-delegator.md
  • Clean up of user symlink in ~/.claude/agents/ccs-delegator.md

Added

  • Automatic migration marker system for tracking cleanup completion
  • Intelligent backup system for user-modified deprecated files
  • Version-aware migration logic following existing patterns

Migration

  • Automatic: Users upgrading from v4.3.2 or earlier will have deprecated files cleaned up automatically
  • Manual: Run ccs sync to trigger cleanup manually
  • Backups: User-modified files are backed up with timestamp before removal
  • Idempotent: Cleanup is safe to run multiple times

Technical Details

  • Integrated into npm postinstall script for automatic cleanup on package updates
  • Added to ccs sync command for manual cleanup operations
  • Uses migration markers in ~/.ccs/.migrations/v435-delegator-cleanup
  • Follows existing SharedManager migration patterns for consistency

[4.3.4] - 2025-11-22

Fixed

  • CCS Update Command: Enhanced ccs update to support multiple package managers
  • Added automatic detection for npm, yarn, pnpm, and bun package managers
  • Update commands now use the appropriate package manager automatically
  • Improved installation method detection for more reliable updates

[4.3.3] - 2025-11-21

⚠️ BREAKING CHANGES

  • CCS Delegation Commands Consolidated: Replaced 4 hardcoded commands with 2 intelligent commands
    • Old: /ccs:glm, /ccs:kimi, /ccs:glm:continue, /ccs:kimi:continue
    • New: /ccs (auto-selects profile), /ccs:continue (auto-detects profile)
    • Override with flags: /ccs --glm "task", /ccs --kimi "task"

Changed

  • Updated --help text across Node.js, Bash, and PowerShell implementations
  • Updated delegation examples in README.md and workflow documentation
  • Fixed CCS Doctor health checks to validate new command files
  • Updated user configuration templates with new command syntax

Added

  • Intelligent profile selection based on task analysis (reasoning, long-context, cost-optimized)
  • Support for custom profiles without creating new commands
  • Enhanced session management with automatic profile detection

Migration

Old Command New Command
/ccs:glm "task" /ccs "task" (or /ccs --glm "task")
/ccs:kimi "task" /ccs "task" (or /ccs --kimi "task")
/ccs:glm:continue /ccs:continue
/ccs:kimi:continue /ccs:continue

[4.1.5] - 2025-11-17

Added

  • Sync command (ccs sync) for updating delegation commands and skills
  • Short flag -sc for --shell-completion command
  • Enhanced version display with delegation status information

Changed

  • Auth help text now emphasizes concurrent account usage across all platforms
  • Help text standardization ensures consistent messaging across bash, PowerShell, and Node.js
  • Description text emphasizes running different Claude CLI sessions concurrently
  • GitHub documentation links updated to stable permalinks
  • Shell completions updated to include sync command and -sc flag

Fixed

  • Inconsistent help text across different platform implementations
  • Outdated description text to emphasize concurrent sessions over specific examples

[4.1.4] - 2025-11-17

Fixed

  • Shell completion ENOTDIR errors when parent path conflicts with existing files
  • Zsh completion syntax errors with _alternative and _describe functions
  • Reversed color application in zsh completion (commands vs descriptions)

Added

  • Enhanced shell completion UI/UX with descriptions and grouping
  • Color-coded completions for zsh and fish shells
  • Custom settings profile support in shell completions
  • Improved completion formatting with section headers and separators

Changed

  • Generalized help text removed specific account examples for broader applicability
  • Delegation help section clarified context and removed non-existent commands
  • Shell completion organization grouped by categories (commands, model profiles, account profiles)

[4.1.3] - 2025-11-17

Fixed

  • Doctor command delegation check false positive
    • Fixed ccs doctor incorrectly checking for delegation commands in ~/.ccs/shared/commands/ccs/ instead of ~/.ccs/.claude/commands/ccs/
    • Removed check for non-existent create.md file
    • Now correctly detects installed delegation commands (glm.md, kimi.md) after npm install
    • Users will no longer see "[!] Delegation commands not found" warning when delegation is properly installed

[4.1.2] - 2025-11-16

Fixed

  • Kimi API 401 errors caused by deprecated model fields
    • Removed ANTHROPIC_MODEL, ANTHROPIC_SMALL_FAST_MODEL, ANTHROPIC_DEFAULT_OPUS_MODEL, ANTHROPIC_DEFAULT_SONNET_MODEL, ANTHROPIC_DEFAULT_HAIKU_MODEL from Kimi settings
    • Kimi API update now rejects requests with these fields (previously optional, now break authentication)
    • Automatic migration removes deprecated fields from existing ~/.ccs/kimi.settings.json
    • Preserves user API keys and custom settings during migration
    • Updated config/base-kimi.settings.json template
    • Users experiencing 401 errors will be automatically fixed on next install/update

Changed

  • Kimi settings now minimal: only ANTHROPIC_BASE_URL and ANTHROPIC_AUTH_TOKEN required

[4.1.1] - 2025-11-16

Fixed

  • npm install fails to copy .claude/ directory to ~/.ccs/.claude/
    • Error: "[!] CCS .claude/ directory not found, skipping symlink installation"
    • Created bin/utils/claude-dir-installer.js utility to copy .claude/ from package
    • Updated scripts/postinstall.js to copy .claude/ before creating symlinks
    • Updated ccs update command to re-install .claude/ directory
    • Supports Node.js 14+ with fallback for versions < 16.7.0

Added

  • ClaudeDirInstaller utility class for managing .claude/ directory installation

[4.1.0] - 2025-11-16

Added

  • Selective .claude/ directory symlinking for shared resources across profiles
  • claude-symlink-manager.js utility for managing symlinks with Windows fallback
  • Enhanced ccs doctor command to verify .claude/ directory health
  • Postinstall script for automatic .claude/ directory setup
  • Stream-JSON output for real-time delegation visibility (--output-format stream-json --verbose)
  • Real-time tool tracking with verbose context (shows file paths, commands, patterns)
  • Smart slash command detection (preserves /cook, /plan, /commit in delegated prompts)
  • Signal handling (Ctrl+C/Esc kills delegated child processes, prevents orphans)
  • Comprehensive tool support (13 Claude Code tools: Bash, Read, Write, Edit, Glob, Grep, NotebookEdit, NotebookRead, SlashCommand, Task, TodoWrite, WebFetch, WebSearch)
  • Active task display for TodoWrite (shows current task instead of count)
  • Documentation: Stream-JSON workflow diagrams

Changed

  • Installers now create selective symlinks (commands/, skills/, agents/) instead of full directory copies
  • Windows support: Falls back to directory copying when symlinks unavailable
  • Profile-specific files (settings.json, sessions/, todolists/, logs/) remain isolated
  • Improved README with symlink architecture documentation
  • BREAKING: Delegation now uses stream-json instead of single JSON blob
  • Time-based limits replace turn-based limits (10min default timeout vs 20 max-turns)
  • Graceful termination with SIGTERM → SIGKILL fallback (2s grace period)
  • Removed --max-turns flag (deprecated, use timeout instead)
  • Simplified slash command docs (removed over-prescriptive instructions)
  • Internal tools (TodoWrite, Skill) now show meaningful progress

Fixed

  • Duplicate .claude/ resources across multiple profiles
  • Installer logic now handles symlink creation during setup
  • Orphaned claude -p processes after parent termination
  • Slash commands broken by IMPORTANT safety prefix
  • Slash commands detected as file paths (/home vs /cook)
  • Stream-json requires --verbose flag with -p
  • Tool output spam (filtered internal tools, show active tasks)

Removed

  • IMPORTANT safety prefix (broke slash command positioning)
  • Outdated test files (json-output.test.js, max-turns.test.js)
  • TTY detection (now shows progress unless CCS_QUIET=1)

[3.5.0] - 2025-11-15

Added

  • Shell auto-completion (bash, zsh, PowerShell, Fish)
  • --shell-completion command (auto-installs for detected shell with proper comment markers, cross-platform)
  • Error codes (E101-E901) with documentation at docs/errors/
  • Fuzzy matching "Did you mean?" suggestions (Levenshtein distance)
  • Progress indicators (doctor command: [n/9] counter, GLMT proxy startup spinner)
  • Interactive confirmation prompts for destructive operations
  • --yes/-y flag for automation (skips confirmations)
  • --json flag for auth commands (list, show)
  • Impact display (session count, paths) before profile deletion
  • Comprehensive test suite (15 tests, 100% pass rate)

Changed

  • Error boxes: Unicode (╔═╗) → ASCII (===) for cross-platform compatibility
  • JSON output uses CCS version (3.5.0) instead of separate schema version
  • Help text includes EXAMPLES section across all platforms
  • Test suite properly counts test cases (not assertions)

Fixed

  • Standalone installer dependency handling (now downloads error-codes, progress-indicator, prompt files)
  • --yes flag bug (returned false instead of true, preventing auto-confirmation)
  • Help text consistency between Node.js and bash versions (added Uninstall section to bash)
  • Test pass rate calculation (now excludes skipped tests from denominator)
  • Help section comparison (locale-specific sort order)

[3.4.6] - 2025-11-12

Added

  • GLMT ReasoningEnforcer: Prompt injection + API params hybrid (4 effort levels, always enabled)

Changed

  • Added GLMT production warnings (NOT PRODUCTION READY)
  • Streamlined CLAUDE.md (-337 lines)
  • Simplified GLMT controls: 4 mechanisms → 3 automatic
  • Locale + reasoning enforcement now always enabled

Removed

  • GLMT Budget Calculator mechanism (consolidated into automatic controls)
  • Deprecated GLMT environment variables (CCS_GLMT_FORCE_ENGLISH, CCS_GLMT_THINKING_BUDGET, CCS_GLMT_STREAMING)
  • Outdated test scenarios for removed environment variables

[3.4.5] - 2025-11-11

Fixed

  • Thinking block signature timing race (blocks appeared blank in Claude CLI UI)
  • Content verification guard in _createSignatureDeltaEvent() returns null if empty

Changed

  • Consolidated debug flags: CCS_DEBUG_LOG, CCS_GLMT_DEBUGCCS_DEBUG only

Added

  • 6 regression tests for thinking signature race (test-thinking-signature-race.js)

[3.4.4] - 2025-11-11

Fixed

  • Postinstall symlink creation (fixed require path to shared-manager.js)

[3.4.3] - 2025-11-11

Added

  • Keyword thinking control: think < think hard < think harder < ultrathink
  • Streaming auto-fallback on error

Changed

  • YAGNI/KISS: Removed budget-calculator.js, task-classifier.js (-272 LOC)
  • CCS_DEBUG_LOGCCS_DEBUG (backward compatible)

Removed

  • CCS_GLMT_THINKING_BUDGET, CCS_GLMT_STREAMING, CCS_GLMT_FORCE_ENGLISH env vars

Fixed

  • GLMT proxy path (glmt/glmt-proxy.js)
  • ultrathink effort: highmax

[3.4.2] - 2025-11-11

Changed

  • Version bump for npm CI workaround

[3.4.1] - 2025-11-11

Added

  • GLMT loop prevention (locale enforcer, budget calculator, task classifier, loop detector)
  • Env vars: CCS_GLMT_FORCE_ENGLISH, CCS_GLMT_THINKING_BUDGET
  • 110 GLMT tests (all passing)

Changed

  • Directory structure: bin/{glmt,auth,management,utils}, tests/{unit,integration}
  • Token savings: 50-80% for execution tasks

Fixed

  • Thinking parameter processing from Claude CLI
  • GLMT tool support (MCP tools, function calling)
  • Unbounded planning loops (20+ min → <2 min)
  • Chinese output issues

[3.4.0] - 2025-11-11

Added

  • GLMT streaming (5-20x faster TTFB: <500ms vs 2-10s)
  • SSEParser, DeltaAccumulator classes
  • Security limits (1MB SSE, 10MB content, 100 blocks)

[3.3.0] - 2025-11-11

Added

  • Debug mode: CCS_DEBUG_LOG=1
  • Verbose flag: ccs glmt --verbose
  • GLMT config defaults

[3.2.0] - 2025-11-10

Changed

  • BREAKING: Symlink-based shared data (was copy-based)
  • ~/.ccs/shared/ → ~/.claude/ symlinks
  • 60% faster installs

[3.1.1] - 2025-11-10

Fixed

  • Migration now runs during install (not on first ccs execution)

[3.1.0] - 2025-11-10

Added

  • Shared data architecture (commands/skills/agents shared across profiles)

[3.0.2] - 2025-11-10

Fixed

  • Profile creation no longer auto-sets as default
  • Help text simplified (40% shorter)

[3.0.1] - 2025-11-10

Added

  • Auto-recovery system for missing/corrupted configs
  • ccs doctor health check command
  • ErrorManager class

[3.0.0] - 2025-11-09

Added

  • Multi-account switching: Run multiple Claude accounts concurrently
  • Auth commands: create, list, show, remove, default
  • Profile isolation (sessions, todos, logs per profile)

BREAKING

  • Removed v2.x vault encryption
  • Login-per-profile model

[2.5.1] - 2025-11-07

Added

  • Kimi ANTHROPIC_SMALL_FAST_MODEL support

[2.5.0] - 2025-11-07

Added

  • Kimi integration

[2.4.9] - 2025-11-05

Fixed

  • Node.js DEP0190 warning

[2.4.8] - 2025-11-05

Fixed

  • Deprecation warning (platform-specific shell)

[2.4.7] - 2025-11-05

Fixed

  • Windows spawn EINVAL error

[2.4.6] - 2025-11-05

Fixed

  • Color detection, TTY handling

[2.4.5] - 2025-11-05

Added

  • Performance benchmarks (npm vs shell)

[2.4.3] - 2025-11-04

Fixed

  • CRITICAL: DEP0190 command injection vulnerability

[2.4.2] - 2025-11-04

Changed

  • Version bump for republish

[2.4.1] - 2025-11-04

Fixed

  • CRITICAL: Windows PATH detection
  • PowerShell terminal termination

[2.4.0] - 2025-11-04

Added

  • npm package support

BREAKING

  • Executables moved to lib/

[2.3.1] - 2025-11-04

Fixed

  • PowerShell syntax errors

[2.3.0] - 2025-11-04

Added

  • Custom Claude CLI path: CCS_CLAUDE_PATH

[2.2.3] - 2025-11-03

Added

  • ccs --uninstall command

[2.2.2] - 2025-11-03

Fixed

  • ccs --install via symlinks

[2.2.1] - 2025-11-03

Changed

  • Hardcoded versions (no VERSION file)

[2.2.0] - 2025-11-03

Added

  • Auto PATH configuration
  • Terminal colors (NO_COLOR support)

Changed

  • Unified install: ~/.local/bin (Unix)

Fixed

  • CRITICAL: Shell injection vulnerability

[2.1.0] - 2025-11-02

Changed

  • Windows uses --settings flag (27% code reduction)

[2.0.0] - 2025-11-02

BREAKING

  • Removed ccs son profile

Added

  • Config templates, installers/ folder

Fixed

  • CRITICAL: PowerShell env var crash

[1.1.0] - 2025-11-01

Added

  • Git worktrees support

[1.0.0] - 2025-10-31

Added

  • Initial release