Kai (Tam Nhu) Tran and GitHub
e1b39c2abe
Merge pull request #355 from kaitranntt/dev
...
feat(thinking): add extended thinking mode with budget controls
2026-01-22 13:52:17 -05:00
github-actions[bot]
70142df6a2
chore(release): 7.24.2-dev.3 [skip ci]
2026-01-22 15:21:22 +00:00
Kai (Tam Nhu) Tran and GitHub
9f2d5de459
Merge pull request #351 from kaitranntt/feat/thinking-flag
...
feat(cliproxy): add extended thinking support with model-specific caps
2026-01-22 10:20:17 -05:00
kaitranntt
ca490a9f4e
fix(cliproxy): handle edge cases in thinking validation
...
- model-catalog: add null guard and trim for modelId lookup
- thinking-validator: add 100 char length limit, accept "8192.0" format
- cliproxy-executor: error on empty --thinking= value
- use-thinking-config: handle HTML error pages, return cleanup fn
2026-01-21 17:52:16 -05:00
kaitranntt
299d96c011
fix(api): add type guard for tier_defaults and extract tiers constant
...
- Add defensive type guard in misc-routes.ts to prevent runtime crash
if malformed tier_defaults object is passed to PUT /api/thinking
- Extract VALID_THINKING_TIERS constant to thinking-validator.ts
to eliminate duplication across validation code
- Export constant from cliproxy barrel file
Addresses P2/P3 items from PR #351 review
2026-01-21 17:39:54 -05:00
kaitranntt
3df6587e8d
chore(ui): regenerate lockfile after dependency removal
2026-01-21 17:30:25 -05:00
kaitranntt
4491d9f3d3
chore(deps): remove unused auth dependencies from ui
...
- Remove bcrypt, express-rate-limit, express-session
- Remove @types/bcrypt, @types/express-session
- Clean up unused server-side auth packages
2026-01-21 17:26:07 -05:00
kaitranntt
fbb71a228e
test: update tests for codex catalog inclusion
...
- Fix config-generator test assertion for parseUserApiKeys
- Update model-catalog tests to expect codex provider
- Remove outdated codex unsupported test from model-config
2026-01-21 17:25:56 -05:00
kaitranntt
19b7a49eee
feat(thinking): improve config validation and codex support
...
- Add shouldShowWarnings() helper for cleaner warning control
- Improve applyThinkingSuffix() regex for accurate suffix detection
- Fix provider_overrides validation for nested tier structure
- Add thinking section to YAML config export with documentation
- Update UI to clarify codex uses reasoning effort levels
- Remove unused setManualOverride hook
2026-01-21 17:25:33 -05:00
kaitranntt
eec44d54e2
feat(cliproxy): add model-specific reasoning effort caps
...
Add maxLevel field to ThinkingSupport interface to cap reasoning
effort at model's maximum supported level. This fixes Issue #344
where gpt-5-mini fails with xhigh reasoning (only supports high).
- Add Codex provider to model catalog with gpt-5.2-codex and gpt-5-mini
- Add capLevelAtMax() and capEffortAtModelMax() for runtime capping
- Update UI presets with new Codex models and tier mappings
2026-01-21 14:27:46 -05:00
kaitranntt
2f584802bd
chore(deps): add bcrypt, express-session, express-rate-limit for dashboard auth
2026-01-20 20:20:23 -05:00
kaitranntt
99d164901e
Merge remote-tracking branch 'origin/dev' into feat/thinking-flag
...
Resolve merge conflicts keeping both features:
- thinking: extended thinking/reasoning budget control
- dashboard_auth: dashboard authentication
- backups: config backups section
2026-01-20 20:19:51 -05:00
github-actions[bot]
85c4786cf0
chore(release): 7.24.2-dev.2 [skip ci]
2026-01-18 20:49:35 +00:00
Kai (Tam Nhu) Tran and GitHub
d036368119
Merge pull request #349 from kaitranntt/kai/fix/port-label-spacing
...
fix(ui): add spacing between Port label and input field
2026-01-18 15:48:36 -05:00
github-actions[bot]
95dd9b14aa
chore(release): 7.24.2-dev.1 [skip ci]
2026-01-18 20:47:30 +00:00
kaitranntt
1eeb8f922d
fix(ui): add spacing between Port label and input field
...
Changed layout from vertical stack (space-y-1) to horizontal flex
with gap (flex items-center gap-2) to properly space the Port label
and input field in the local proxy settings card.
2026-01-18 15:45:28 -05:00
kaitranntt
d8f81b817e
revert(ci): restore detailed AI review prompt structure
...
Reverts to the original guided output format with:
- Visual hierarchy with emojis and separators
- Priority tags (High/Medium/Low)
- Security and code quality checklists
- Ultrathink directive
- Reaction comments for /review triggers
- Model signature in review footer
2026-01-18 15:45:11 -05:00
semantic-release-bot
f286c1bb6a
chore(release): 7.24.2 [skip ci]
...
## [7.24.2](https://github.com/kaitranntt/ccs/compare/v7.24.1...v7.24.2 ) (2026-01-18)
### Bug Fixes
* **ci:** disable track_progress for workflow_dispatch events ([65c325d ](https://github.com/kaitranntt/ccs/commit/65c325d33e3e55f7214f2d4b786f4204751722b6 ))
2026-01-18 20:34:07 +00:00
kaitranntt
65c325d33e
fix(ci): disable track_progress for workflow_dispatch events
...
track_progress is only supported for PR/issue events, not workflow_dispatch.
Made the setting conditional on event type.
2026-01-18 15:33:00 -05:00
semantic-release-bot
c9f7cc1b7f
chore(release): 7.24.1 [skip ci]
...
## [7.24.1](https://github.com/kaitranntt/ccs/compare/v7.24.0...v7.24.1 ) (2026-01-18)
### Bug Fixes
* **ci:** use placeholder API key to pass claude-code-action validation ([a83a87b ](https://github.com/kaitranntt/ccs/commit/a83a87bbc2f7542d793edff910dc833bda40f9c8 ))
2026-01-18 20:32:12 +00:00
kaitranntt
a83a87bbc2
fix(ci): use placeholder API key to pass claude-code-action validation
...
claude-code-action validates that anthropic_api_key is non-empty before
running. CLIProxy ignores this value and uses ANTHROPIC_AUTH_TOKEN for
actual authentication.
2026-01-18 15:30:55 -05:00
github-actions[bot]
4ac5235884
chore(sync): merge main into dev after release [skip ci]
...
# Conflicts:
# package.json
2026-01-18 20:20:04 +00:00
semantic-release-bot
29c8f499cd
chore(release): 7.24.0 [skip ci]
...
## [7.24.0](https://github.com/kaitranntt/ccs/compare/v7.23.0...v7.24.0 ) (2026-01-18)
### Features
* **cliproxy:** add backend selection for CLIProxyAPI vs CLIProxyAPIPlus ([8ade4a6 ](https://github.com/kaitranntt/ccs/commit/8ade4a6b26a7870b730094ca47085cf4dc1bc411 ))
### Bug Fixes
* **cliproxy:** address PR review issues for backend selection ([a019ed2 ](https://github.com/kaitranntt/ccs/commit/a019ed2cf88a0e458d220fa0e9117c1490e9e6a6 ))
### Documentation
* add Docker support documentation ([90bced9 ](https://github.com/kaitranntt/ccs/commit/90bced95a42178c5bafae259285413552740cb54 ))
### Code Refactoring
* **ci:** simplify ai-review to use claude-code-action directly ([5e22547 ](https://github.com/kaitranntt/ccs/commit/5e22547f3fc19202039dc855a4516e12253960c6 ))
* **ci:** simplify ai-review to vanilla claude-code-action ([bdfc409 ](https://github.com/kaitranntt/ccs/commit/bdfc40966a316b36b3689c8cdc3e6326ba789399 ))
2026-01-18 20:19:40 +00:00
github-actions[bot]
ca5551f61a
chore(release): 7.23.0-dev.3 [skip ci]
2026-01-18 20:19:27 +00:00
kaitranntt
bdfc40966a
refactor(ci): simplify ai-review to vanilla claude-code-action
...
- Use anthropics/claude-code-action@v1 directly
- Remove ccs-reviewer wrapper dependency
- Match pr-review-comprehensive.yml pattern
- Keep CLIProxy env vars for model routing
- Restore comprehensive allowedTools for posting
2026-01-18 15:18:17 -05:00
kaitranntt
5e22547f3f
refactor(ci): simplify ai-review to use claude-code-action directly
...
- Remove ccs-reviewer wrapper dependency
- Set ANTHROPIC_BASE_URL directly in env block
- Remove use_cliproxy input (no longer needed)
2026-01-18 14:58:36 -05:00
github-actions[bot]
a2f1c85bc3
chore(release): 7.23.0-dev.2 [skip ci]
2026-01-18 15:28:58 +00:00
Kai (Tam Nhu) Tran and GitHub
b8664c43fe
Merge pull request #347 from kaitranntt/feat/cliproxy-backend-selection
...
feat(cliproxy): add backend selection for CLIProxyAPI vs CLIProxyAPIPlus
2026-01-18 10:28:01 -05:00
kaitranntt
a019ed2cf8
fix(cliproxy): address PR review issues for backend selection
...
- Remove duplicate CLIProxyBackend type from platform-detector.ts (import from types.ts)
- Add warning for invalid --backend CLI value (was silently ignored)
- Show toast notification when backend change blocked by running proxy
- Migrate from deprecated CLIPROXY_FALLBACK_VERSION to getFallbackVersion()
- Add comprehensive JSDoc for backend API endpoints
2026-01-18 10:24:53 -05:00
kaitranntt
8ade4a6b26
feat(cliproxy): add backend selection for CLIProxyAPI vs CLIProxyAPIPlus
...
Add cliproxy.backend config field to choose between CLIProxyAPI (original)
and CLIProxyAPIPlus backends. Includes CLI --backend flag, Dashboard toggle,
and provider validation to block Kiro/ghcp on original backend.
2026-01-18 10:10:01 -05:00
github-actions[bot]
c2016c2f18
chore(release): 7.23.0-dev.1 [skip ci]
2026-01-18 13:59:36 +00:00
kaitranntt
90bced95a4
docs: add Docker support documentation
2026-01-18 08:58:31 -05:00
semantic-release-bot
3a44899516
chore(release): 7.23.0 [skip ci]
...
## [7.23.0](https://github.com/kaitranntt/ccs/compare/v7.22.0...v7.23.0 ) (2026-01-18)
### Features
* **docker:** add Docker/Compose setup for CCS dashboard ([a14c7f3 ](https://github.com/kaitranntt/ccs/commit/a14c7f3f6ba0d694dda622a59c9f878f648976b4 ))
### Bug Fixes
* **docker:** address security and reproducibility issues ([b386410 ](https://github.com/kaitranntt/ccs/commit/b38641002fadc8732c81aa9c7bd01bee826095a5 ))
* **docker:** use bun 1.2.21 ([1dee718 ](https://github.com/kaitranntt/ccs/commit/1dee71897e89cc20bc1e78a57e29176ddacdb321 ))
2026-01-18 13:21:06 +00:00
Kai (Tam Nhu) Tran and GitHub
8a89bc97aa
Merge pull request #345 from opastorello/main
...
feat(docker): add Docker/Compose setup for CCS dashboard
2026-01-18 08:20:00 -05:00
kaitranntt
1dee71897e
fix(docker): use bun 1.2.21
2026-01-18 08:11:54 -05:00
kaitranntt and opastorello
b38641002f
fix(docker): address security and reproducibility issues
...
Fixes from maintainer review:
.dockerignore:
- Add .env* files to prevent secret leakage (CRITICAL)
- Add tests/, docs/, IDE files to reduce build context
- Add organized comments for maintainability
Dockerfile:
- Pin bun version (ARG BUN_VERSION=1.2.2) for reproducible builds
- Add build artifact validation step
- Add npm cache clean to reduce image size
- Add section comments for readability
docker-compose.yml:
- Add grok_home volume for grok-cli persistence
- Add start_period to healthcheck for slow starts
- Add resource limits (1G RAM, 2 CPUs) with reservations
- Add documentation comments
entrypoint.sh:
- Improve chown error handling with warning message
- Add usage help when no command provided
README.md:
- Add Resource Limits section with examples
- Add Graceful Shutdown documentation
- Add Troubleshooting section (permissions, ports, restart loops)
- Add Security Notes section
- Update persistence docs to include grok-cli
Co-authored-by: opastorello <nicolas@pastorello-lab.com.br >
2026-01-18 08:10:44 -05:00
opastorello
a14c7f3f6b
feat(docker): add Docker/Compose setup for CCS dashboard
2026-01-17 00:19:53 -03:00
semantic-release-bot
ca86772208
chore(release): 7.22.0 [skip ci]
...
## [7.22.0](https://github.com/kaitranntt/ccs/compare/v7.21.0...v7.22.0 ) (2026-01-15)
### Features
* **cliproxy:** add HTTPS tunnel for remote proxy mode ([#1 ](https://github.com/kaitranntt/ccs/issues/1 )) ([9e9cbd4 ](https://github.com/kaitranntt/ccs/commit/9e9cbd48585200c890fe6bb83539fe3a99b25cdc ))
* **dashboard:** add project_id display for Antigravity accounts ([ed2ce13 ](https://github.com/kaitranntt/ccs/commit/ed2ce138e41f07997eb6fa7e650cb4f16849b3df ))
* **dashboard:** show projectId warning in Live Account Monitor ([28b0faa ](https://github.com/kaitranntt/ccs/commit/28b0faa0cb842737c9a2b0409822b1339078cf0d ))
### Bug Fixes
* address PR [#4 ](https://github.com/kaitranntt/ccs/issues/4 ) review - HTTPS tests and timeout handling ([e055890 ](https://github.com/kaitranntt/ccs/commit/e055890e16fa6d79411faae5f04794807db39c87 ))
* address PR [#4 ](https://github.com/kaitranntt/ccs/issues/4 ) review suggestions ([c3bfa34 ](https://github.com/kaitranntt/ccs/commit/c3bfa34703a501b502508dbf41cff75d2cd84dbe ))
* **cliproxy:** add try-catch for file operations in pause/resume ([d87a653 ](https://github.com/kaitranntt/ccs/commit/d87a6531952313b1e3795feb67ab152f2bfbb1e9 ))
* **cliproxy:** move token files when pausing/resuming accounts ([9d2442f ](https://github.com/kaitranntt/ccs/commit/9d2442f9fa772e1048b8153b8a2d586a4ec032ce )), closes [#337 ](https://github.com/kaitranntt/ccs/issues/337 )
* **cliproxy:** show clear message for paused accounts in Live Monitor ([a931bc9 ](https://github.com/kaitranntt/ccs/commit/a931bc9745572c0b5ddb488f568f1bec62d69a25 ))
* **cliproxy:** use sibling auth-paused/ dir to prevent token refresh loops ([4d31128 ](https://github.com/kaitranntt/ccs/commit/4d31128b63ad3996dcb783cd08d956d53ff7face ))
* **dashboard:** harden projectId handling with edge case fixes ([bc02ecc ](https://github.com/kaitranntt/ccs/commit/bc02ecc94c5120bb0a4491fd9f88c71fb9f26b7f ))
* **dashboard:** update projectId for existing accounts during discovery ([36367d4 ](https://github.com/kaitranntt/ccs/commit/36367d49f0f51f4ecba9a32adf54308af153bdb2 ))
* increase timeout in connection tracking test for CI ([e7e95e6 ](https://github.com/kaitranntt/ccs/commit/e7e95e69700ed4c94c89d88bdf7d674a55053961 ))
* make connection tracking test deterministic ([b735234 ](https://github.com/kaitranntt/ccs/commit/b735234beb6c9559c2798ab48d8b876cf5e6c495 ))
* resolve CI test timing and merge conflict with dev ([504b1b3 ](https://github.com/kaitranntt/ccs/commit/504b1b3974c2538a692a54a7d83b1dea7e500433 ))
* **ui:** improve paused account display in Live Account Monitor ([502b30a ](https://github.com/kaitranntt/ccs/commit/502b30a589c8aef948e8d58ffc543fcb4e0248ad ))
2026-01-15 19:32:08 +00:00
Kai (Tam Nhu) Tran and GitHub
3c4e74955b
Merge pull request #343 from kaitranntt/dev
...
feat(release): promote dev to main
2026-01-15 14:31:00 -05:00
github-actions[bot]
02d05e23ed
chore(release): 7.21.0-dev.3 [skip ci]
2026-01-15 19:07:40 +00:00
Kai (Tam Nhu) Tran and GitHub
1e45e955a4
Merge pull request #332 from sgaluza/feat/cliproxy-https-remote
...
feat(cliproxy): add HTTPS tunnel for remote proxy mode
2026-01-15 14:06:27 -05:00
kaitranntt
b735234beb
fix: make connection tracking test deterministic
...
The previous test relied on client socket receiving close event from
server-side destroy, which is timing-dependent and flaky in CI.
New approach:
- Verify stop() behavior directly via getPort() returning null
- Test what we control (server state) not what we observe (client state)
- Remove timing-dependent assertions
- Faster and more reliable (83ms vs 1000ms+ timeout)
2026-01-15 14:00:36 -05:00
kaitranntt
504b1b3974
fix: resolve CI test timing and merge conflict with dev
...
- Fix connection tracking test: wait for 'close' event instead of only
checking socket.destroyed (more reliable in CI environments)
- Increase timeout from 500ms to 1000ms for CI latency
- Add proper socket cleanup after test
- Merge dev changes: add projectId parameter to registerAccount()
2026-01-15 13:39:16 -05:00
github-actions[bot]
9e233d8bc9
chore(release): 7.21.0-dev.2 [skip ci]
2026-01-15 18:07:52 +00:00
Kai (Tam Nhu) Tran and GitHub
126b244b36
Merge pull request #338 from kaitranntt/kai/fix/pause-account-cliproxy-usage
...
fix(cliproxy): move token files when pausing/resuming accounts
2026-01-15 13:06:50 -05:00
kaitranntt
502b30a589
fix(ui): improve paused account display in Live Account Monitor
...
- Add Pause icon with amber color for paused accounts
- Show styled "PAUSED" badge instead of plain error text
- Distinguish paused state from other errors visually
2026-01-15 13:04:17 -05:00
kaitranntt
a931bc9745
fix(cliproxy): show clear message for paused accounts in Live Monitor
...
- Check isAccountPaused() before readAuthData() in fetchAccountQuota()
- Return "Account is paused" instead of confusing "Auth file not found"
- Improves UX by explaining why quota fetch fails for paused accounts
2026-01-15 12:57:37 -05:00
kaitranntt
4d31128b63
fix(cliproxy): use sibling auth-paused/ dir to prevent token refresh loops
...
CLIProxyAPI's watcher uses filepath.Walk() which recursively scans
all subdirectories of auth/. Moving paused tokens to auth/paused/
subdirectory didn't hide them from CLIProxyAPI, causing token refresh
loops where paused tokens were immediately recreated.
Solution: Use auth-paused/ as a sibling directory instead of auth/paused/
subdirectory. This places paused tokens completely outside CLIProxyAPI's
scan path, preventing token discovery and refresh.
Path change:
- Before: ~/.ccs/cliproxy/auth/paused/
- After: ~/.ccs/cliproxy/auth-paused/
2026-01-15 12:41:44 -05:00
github-actions[bot]
936d706e4b
chore(release): 7.21.0-dev.1 [skip ci]
2026-01-15 17:14:24 +00:00
Kai (Tam Nhu) Tran and GitHub
14196ee19b
Merge pull request #340 from kaitranntt/feat/agy-project-id-display
...
feat(dashboard): add project_id display for Antigravity accounts
2026-01-15 12:13:21 -05:00