kaitranntt
d04bcc117f
feat(config): add kiro and ghcp to unified config and auth routes
...
- extend CLIProxyVariantConfig provider type
- update createEmptyUnifiedConfig providers array
- add kiro and ghcp to validProviders in auth routes
2025-12-22 00:45:38 -05:00
kaitranntt
49bc0a44cc
feat(cliproxy): add kiro and ghcp to OAuth diagnostics and account manager
...
- add OAUTH_CALLBACK_PORTS: kiro=9876, ghcp=null (device code)
- add OAUTH_FLOW_TYPES for both providers
- update getAllAccountsSummary providers array
2025-12-22 00:45:13 -05:00
kaitranntt
fae1ee2b31
feat(cliproxy): add ghcp settings and update variant adapter
...
- rename base-copilot.settings.json to base-ghcp.settings.json
- add kiro and ghcp to variant adapter providers list
- update provider display names in config generator
2025-12-22 00:44:52 -05:00
kaitranntt
a01abe181b
feat(cliproxy): add kiro and ghcp OAuth configurations
...
- add OAUTH_CONFIGS entries for kiro (authorization_code) and ghcp (device_code)
- update getAllAuthStatus providers array
2025-12-22 00:44:26 -05:00
kaitranntt
036714c774
feat(cliproxy): add kiro and ghcp providers to CLIProxyProvider type
...
- extend CLIProxyProvider union with 'kiro' and 'ghcp'
- add both to CLIPROXY_PROFILES array
2025-12-22 00:44:03 -05:00
kaitranntt
af92bc30bf
refactor: complete CLIProxy Plus branding across CLI and UI
...
CLI changes:
- platform-commands.ts: Update taskkill/pkill to use cli-proxy-api-plus binary name
- help-command.ts: Fix binary path display to show cli-proxy-api-plus
- oauth-process.ts: Update auth error message
- binary-manager.ts: Update removal message
- cliproxy-executor.ts: Update startup failure messages
- cliproxy-command.ts: Update variant creation messages
- service-manager.ts: Update startup error message
- cliproxy-stats-routes.ts: Update all API error messages
UI changes:
- proxy/index.tsx: Update connection mode descriptions
- cliproxy-stats-overview.tsx: Update metrics description
- model-preferences-grid.tsx: Update models description
2025-12-21 23:17:04 -05:00
kaitranntt
4829902826
fix: update download URLs and binary names for CLIProxyAPIPlus
...
- Change binaryName from CLIProxyAPI_ to CLIProxyAPIPlus_ prefix
- Update download URL to use CLIProxyAPIPlus repository
- Update checksums URL to use CLIProxyAPIPlus repository
- Change executable name from cli-proxy-api to cli-proxy-api-plus
- Update User-Agent header to CCS-CLIProxyPlus-Updater
- Update status messages to say "CLIProxy Plus"
Fixes HTTP 404 error when running `ccs cliproxy --latest`
2025-12-21 23:09:41 -05:00
kaitranntt
670993d364
refactor: rename CLIProxyAPI to CLIProxy Plus across UI and CLI
...
- Update cliproxy-command.ts status output and install messages
- Update help-command.ts with Plus branding and new kiro/copilot providers
- Update doctor.ts header to show CLIPROXY PLUS
- Update cliproxy-check.ts binary check output
- Update proxy-status-widget.tsx label to CLIProxy Plus
- Point release URLs to CLIProxyAPIPlus repository
2025-12-21 22:57:03 -05:00
kaitranntt
743d34a881
docs: add CLIProxyAPIPlus attribution for Kiro and Copilot
...
- Credit CLIProxyAPIPlus contributors for new OAuth providers
- Add @em4go (Copilot), @fuko2935, @Ravens2121 (Kiro)
2025-12-21 22:28:13 -05:00
kaitranntt
0f029f960a
feat(ui): integrate Kiro and Copilot providers, rename to CLIProxy Plus
...
- Rename sidebar/header from CLIProxy to CLIProxy Plus
- Add Kiro and Copilot to all provider lists and type unions
- Add provider logos and color configs
- Add model catalogs with upstream CLIProxyAPIPlus models
- Update Quick Setup Wizard with new providers
2025-12-21 22:27:36 -05:00
kaitranntt
9ca20e70de
feat(ui): add Kiro and Copilot provider icons
...
- Add kiro.png icon for Kiro (AWS) provider
- Add copilot.svg icon for GitHub Copilot provider
2025-12-21 22:26:53 -05:00
kaitranntt
b15ff7f235
feat(config): add base settings for Kiro and Copilot providers
...
- Add base-kiro.settings.json with default Kiro models
- Add base-copilot.settings.json with default Copilot models
- Update config-generator for new provider sections
- Extend CLIProxyProvider type with kiro and copilot
2025-12-21 22:26:32 -05:00
kaitranntt
2b441f6498
feat(auth): add Kiro and GitHub Copilot OAuth providers
...
- Add kiro (port 8329) and copilot (port 8330) to auth-types
- Implement OAuth flows in oauth-handler
- Update token-manager to include new providers
- Add new providers to CLIPROXY_PROFILES
- Update diagnostics and API routes for new providers
2025-12-21 22:26:11 -05:00
kaitranntt
6f8587db68
feat(cliproxy): migrate from CLIProxyAPI to CLIProxyAPIPlus
...
- Update GitHub repo URL to router-for-me/CLIProxyAPIPlus
- Handle new release naming pattern (v6.6.X-0 suffix)
- Add version comparison support for Plus releases
2025-12-21 22:25:48 -05:00
semantic-release-bot
5f2092bc7f
chore(release): 7.2.0 [skip ci]
...
## [7.2.0](https://github.com/kaitranntt/ccs/compare/v7.1.1...v7.2.0 ) (2025-12-22)
### Features
* **cliproxy:** add localhost URL rewriting for remote proxy mode ([d0599e8 ](https://github.com/kaitranntt/ccs/commit/d0599e8d2c990ad02b270b8ada700db2d1d2e510 ))
* **cliproxy:** add proxy target resolver for remote/local routing ([9e2fd09 ](https://github.com/kaitranntt/ccs/commit/9e2fd096e4a30c29a9c909284234d129a577b853 ))
* **cliproxy:** add remote routing for stats and auth endpoints ([17bb6f9 ](https://github.com/kaitranntt/ccs/commit/17bb6f9836a56eddcb5e683e9d8f3d262f48d0cd ))
* **ui:** add remote mode indicator to provider editor header ([3bf9ebe ](https://github.com/kaitranntt/ccs/commit/3bf9ebe32a8cebe2bcf5f405bb2c04611b30f997 ))
* **ui:** dynamic control panel embed for remote CLIProxy ([bfa55e0 ](https://github.com/kaitranntt/ccs/commit/bfa55e041cb33b689d95b492abd637a98eab5b42 ))
* **ui:** show remote server info in ProxyStatusWidget ([d86dfab ](https://github.com/kaitranntt/ccs/commit/d86dfab2e76416ea0e662f0702c854f2e11ac541 ))
### Bug Fixes
* **api:** add try-catch error handling to route handlers ([85b0f17 ](https://github.com/kaitranntt/ccs/commit/85b0f171105ecd2e12839718a80ae91e427f9b5a ))
* **api:** complete error handling and add missing endpoints ([3ed961f ](https://github.com/kaitranntt/ccs/commit/3ed961fce9ee7793b714abcbb6eef3346bd9098b ))
* **api:** resolve route path mismatches ([557926f ](https://github.com/kaitranntt/ccs/commit/557926ffe3f72e601758fc1c98279591c660440c ))
* **cliproxy:** add gemini-cli provider mapping for remote auth ([068d577 ](https://github.com/kaitranntt/ccs/commit/068d5772f24510f61ed96fd632e06a08532f2615 ))
* **cliproxy:** address code review findings for remote routing ([cdb4653 ](https://github.com/kaitranntt/ccs/commit/cdb465342e6461cd7ff36f59f2d3873e50092210 ))
* **cliproxy:** load remote config from config.yaml for proxy resolution ([a2d01bc ](https://github.com/kaitranntt/ccs/commit/a2d01bcc8a15e75c598854c7ddd314f5f17015f6 ))
* **cliproxy:** merge dev with proper remote mode integration ([28c6262 ](https://github.com/kaitranntt/ccs/commit/28c62625b36e74db7b5b07f475cf4df0072c9a27 ))
* **cliproxy:** respect user model settings in remote proxy mode ([4ee3100 ](https://github.com/kaitranntt/ccs/commit/4ee31006225ccec03ba6cf46a2257e122e1af79a ))
* **ui:** correct cliproxy account API paths ([e84df00 ](https://github.com/kaitranntt/ccs/commit/e84df007409b21680bb2b10bfed841e3f5173c38 ))
* **ui:** hide local paths in remote CLIProxy mode ([883d9fa ](https://github.com/kaitranntt/ccs/commit/883d9fa585f9df3f99c303555115fc53c03724ac ))
### Documentation
* update documentation for v7.1 remote CLIProxy feature ([ec7781b ](https://github.com/kaitranntt/ccs/commit/ec7781bbc85437e9c9ea3be84c01dff54129c99c )), closes [#142 ](https://github.com/kaitranntt/ccs/issues/142 )
### CI
* improve issue tagging and label management in release workflows ([3638620 ](https://github.com/kaitranntt/ccs/commit/36386209bea64794bbbc0c3c2770d512fcc6fe83 ))
2025-12-22 01:26:04 +00:00
Kai (Tam Nhu) Tran and GitHub
71008b3796
Merge pull request #175 from kaitranntt/dev
...
feat(cliproxy): add remote CLIProxy routing support
2025-12-21 20:25:04 -05:00
github-actions[bot]
ec3ac7cd26
chore(release): 7.1.1-dev.4 [skip ci]
2025-12-22 01:17:27 +00:00
kaitranntt
ec7781bbc8
docs: update documentation for v7.1 remote CLIProxy feature
...
- README: add remote CLIProxy section with CLI flags and quick setup
- code-standards: add Config Priority Pattern (CLI > ENV > config.yaml)
- codebase-summary: add new remote proxy files, update test counts (638)
- project-overview-pdr: add FR-008 requirement, v7.1 release section
- project-roadmap: add Phase 10 (Remote CLIProxy), mark #142 complete
- system-architecture: add Remote CLIProxy Flow diagram
2025-12-21 20:09:46 -05:00
github-actions[bot]
326e7592f2
chore(release): 7.1.1-dev.3 [skip ci]
2025-12-22 00:40:33 +00:00
Kai (Tam Nhu) Tran and GitHub
54eb696c44
Merge pull request #167 from kaitranntt/kai/fix/cliproxy-server-debug
...
feat(cliproxy): add remote CLIProxy routing with dev merge
2025-12-21 19:39:25 -05:00
kaitranntt
28c62625b3
fix(cliproxy): merge dev with proper remote mode integration
...
Resolve conflicts in cliproxy-auth-routes.ts by combining:
- Dev's improved error handling with try-catch patterns
- Branch's remote mode routing logic
All 638 tests pass.
2025-12-21 19:21:29 -05:00
github-actions[bot]
01c761e664
chore(release): 7.1.1-dev.2 [skip ci]
2025-12-21 23:58:55 +00:00
kaitranntt
36386209be
ci: improve issue tagging and label management in release workflows
2025-12-21 18:57:46 -05:00
github-actions[bot]
b8c9966e9d
chore(release): 7.1.1-dev.1 [skip ci]
2025-12-21 23:26:18 +00:00
Kai (Tam Nhu) Tran and GitHub
8b2fceb743
Merge pull request #174 from kaitranntt/kai/fix/add-cliproxy-account
...
fix(api): resolve CLIProxy account management errors
2025-12-21 18:25:20 -05:00
kaitranntt
3ed961fce9
fix(api): complete error handling and add missing endpoints
...
- Add try-catch to all route handlers in settings, variant, config routes
- Implement 5 missing endpoints in cliproxy-stats-routes:
- GET/PUT /config.yaml for YAML config management
- GET /auth-files to list auth directory files
- GET /auth-files/download for file download
- PUT /models/:provider to update model settings
- All handlers now return proper error messages on failure
2025-12-21 18:18:46 -05:00
kaitranntt
85b0f17110
fix(api): add try-catch error handling to route handlers
...
- Add try-catch to cliproxy-auth-routes GET /
- Add try-catch to health-routes GET / and POST /fix/:checkId
- Add try-catch to config-routes GET /format and POST /migrate
- Improve error messages with specific context
- All handlers now return 500 with error message on failure
2025-12-21 18:03:37 -05:00
kaitranntt
557926ffe3
fix(api): resolve route path mismatches
...
- Add /usage alias for /cliproxy/stats (frontend compatibility)
- Create account-routes.ts to fix /accounts/accounts double path
- Update index.ts to mount accountRoutes at /accounts
- Remove account code from profile-routes.ts
- Clean up unused imports in profile-routes.ts
2025-12-21 18:03:15 -05:00
kaitranntt
e84df00740
fix(ui): correct cliproxy account API paths
...
- Change /cliproxy/accounts/* to /cliproxy/auth/accounts/*
- Fix 404 errors when managing CLIProxy accounts from dashboard
- Root cause: frontend called wrong endpoints for account management
2025-12-21 18:02:38 -05:00
kaitranntt
3bf9ebe32a
feat(ui): add remote mode indicator to provider editor header
...
Shows "Remote" badge with Globe icon and "Traffic auto-routed to
remote server" message when remote CLIProxy mode is active.
2025-12-21 04:34:29 -05:00
semantic-release-bot
a8bda073fb
chore(release): 7.1.1 [skip ci]
...
## [7.1.1](https://github.com/kaitranntt/ccs/compare/v7.1.0...v7.1.1 ) (2025-12-21)
### Bug Fixes
* **hooks:** memoize return objects to prevent infinite render loops ([f15b989 ](https://github.com/kaitranntt/ccs/commit/f15b98950865c01ec6d8d846e3a197bb04e6cf6e ))
* **settings:** memoize useSettingsActions to prevent infinite render loop ([4f75e10 ](https://github.com/kaitranntt/ccs/commit/4f75e105a9ab0c498fb1748829396d695836be65 ))
### Documentation
* update documentation for modularization phases 6-9 ([e45b46d ](https://github.com/kaitranntt/ccs/commit/e45b46d20708e29e770307dbfcce33d84465f137 ))
### Code Refactoring
* **ui:** modularize analytics page into directory structure ([03d9bf7 ](https://github.com/kaitranntt/ccs/commit/03d9bf76c474f93f12fcc5dbdaa55c1f215b1e39 ))
* **ui:** modularize auth-monitor into directory structure ([8ead6fa ](https://github.com/kaitranntt/ccs/commit/8ead6fa0bf05fc8d37563a618c473d7eae808920 ))
* **ui:** modularize settings page into directory structure ([104a404 ](https://github.com/kaitranntt/ccs/commit/104a40414437a4f32492e4bcc33fdfbbec386e2f ))
### Tests
* **ui:** add vitest testing infrastructure with 99 unit tests ([3fca933 ](https://github.com/kaitranntt/ccs/commit/3fca9338f9a77ac202dde6095bf70b5094199888 ))
2025-12-21 09:30:01 +00:00
kaitranntt
4ee3100622
fix(cliproxy): respect user model settings in remote proxy mode
...
getRemoteEnvVars was ignoring user settings and always loading
models from base config. Now follows same priority as local mode:
1. Custom settings path (variant configs)
2. User settings file (~/.ccs/{provider}.settings.json)
3. Base config defaults
This fixes the issue where selecting Opus 4.5 in UI resulted in
Gemini 3 preview being loaded when using remote proxy mode.
2025-12-21 04:29:49 -05:00
Kai (Tam Nhu) Tran and GitHub
8482aba6b1
Merge pull request #173 from kaitranntt/dev
...
feat(ui): modularize settings, analytics, auth-monitor pages with test infrastructure
2025-12-21 04:28:52 -05:00
github-actions[bot]
8340c3b0f2
chore(release): 7.1.0-dev.3 [skip ci]
2025-12-21 09:18:58 +00:00
kaitranntt
f15b989508
fix(hooks): memoize return objects to prevent infinite render loops
...
Apply useMemo to hook returns that create new object references on each
render. This prevents downstream useEffect/useCallback dependencies from
detecting false changes and triggering re-execution.
Fixed hooks:
- PrivacyProvider: memoize context value and toggle callback
- useCopilot: wrap large return object with all dependencies
- useWebSocket: memoize status/connect/disconnect object
- useProjectSelection: memoize state and handlers object
- useCliproxyAuthFlow: memoize spread state with auth functions
- useAnalyticsPage: memoize apiOptions to stabilize query params
2025-12-21 04:17:32 -05:00
kaitranntt
d86dfab2e7
feat(ui): show remote server info in ProxyStatusWidget
...
- Add remote mode detection via cliproxy-server-config query
- Display blue-themed "Remote Proxy" widget when remote enabled
- Show remote host and "Traffic auto-routed" message
- Hide local start/stop/restart controls in remote mode
2025-12-21 04:14:55 -05:00
github-actions[bot]
b9e69965e2
chore(release): 7.1.0-dev.2 [skip ci]
2025-12-21 09:13:59 +00:00
kaitranntt
a2d01bcc8a
fix(cliproxy): load remote config from config.yaml for proxy resolution
...
- Import loadOrCreateUnifiedConfig to access cliproxy_server settings
- Pass remote/local config to resolveProxyConfig() function
- Enables CLI to detect remote mode from user's config.yaml
2025-12-21 04:13:57 -05:00
kaitranntt
d0599e8d2c
feat(cliproxy): add localhost URL rewriting for remote proxy mode
...
- Add rewriteLocalhostUrls() to detect and rewrite localhost URLs
- Support 127.0.0.1, localhost, 0.0.0.0 patterns
- Update getEffectiveEnvVars() to accept remoteRewriteConfig param
- Auto-rewrite saved settings URLs to remote server at runtime
2025-12-21 04:13:36 -05:00
kaitranntt
4f75e105a9
fix(settings): memoize useSettingsActions to prevent infinite render loop
...
- wrap return object in useMemo with all action callbacks as deps
- prevents new object reference on every render
- fixes Maximum update depth exceeded error on settings page
2025-12-21 04:09:13 -05:00
github-actions[bot]
b8b9101466
chore(release): 7.1.0-dev.1 [skip ci]
2025-12-21 08:46:23 +00:00
kaitranntt
e45b46d207
docs: update documentation for modularization phases 6-9
...
- mark settings, analytics, auth-monitor splits as complete
- add test infrastructure (99 tests, 90% threshold) to roadmap
- update codebase-summary.md with new modular structure
- add github issues backlog (13 issues categorized by priority)
- add future roadmap: multiple cliproxyapi, git worktree support
- update project-overview-pdr.md with v7.0 release items
- update system-architecture.md with new ui module structure
2025-12-21 03:45:02 -05:00
kaitranntt
c3f72e6693
chore: add bunfig.toml and update gitignore for test config
...
- add bunfig.toml to scope bun test to ./tests/ only
- add ui test output directory to gitignore
- separates main (bun test) and UI (vitest) test runners
2025-12-21 03:29:12 -05:00
kaitranntt
3fca9338f9
test(ui): add vitest testing infrastructure with 99 unit tests
...
- add vitest, jsdom, testing-library, msw dependencies
- create test setup: vitest-setup.ts, test-utils.tsx, msw-handlers.ts
- add 99 unit tests covering settings, analytics, auth-monitor utils
- configure 90% coverage thresholds on pure-logic files
- add test scripts: test, test:run, test:coverage, test:ui
2025-12-21 03:28:34 -05:00
kaitranntt
8ead6fa0bf
refactor(ui): modularize auth-monitor into directory structure
...
- split auth-monitor.tsx (465 lines) into modular components
- extract provider-card, summary-card, live-pulse, inline-stats-badge
- separate hooks, types, and utils for better maintainability
- export types from monitoring barrel
2025-12-21 03:27:53 -05:00
kaitranntt
03d9bf76c4
refactor(ui): modularize analytics page into directory structure
...
- split analytics.tsx (420 lines) into modular components
- extract analytics-header, charts-grid, cost-by-model-card
- add analytics-skeleton for loading states
- separate hooks, types, and utils
2025-12-21 03:27:15 -05:00
kaitranntt
104a404144
refactor(ui): modularize settings page into directory structure
...
- split settings.tsx (1,781 lines) into modular components
- extract hooks into separate files (context-hooks, use-*-config)
- create sections: websearch, proxy, globalenv with subcomponents
- add tab-navigation and section-skeleton components
- add settings-context.ts for state management
2025-12-21 03:26:40 -05:00
kaitranntt
883d9fa585
fix(ui): hide local paths in remote CLIProxy mode
2025-12-21 02:56:24 -05:00
kaitranntt
068d5772f2
fix(cliproxy): add gemini-cli provider mapping for remote auth
2025-12-21 02:37:36 -05:00
semantic-release-bot
e8cb273ecb
chore(release): 7.1.0 [skip ci]
...
## [7.1.0](https://github.com/kaitranntt/ccs/compare/v7.0.0...v7.1.0 ) (2025-12-21)
### Features
* **ui:** add visual feedback for WebSearch model auto-save ([eaf566b ](https://github.com/kaitranntt/ccs/commit/eaf566beac65284d0809ca8a29f6ce2d03b79af8 )), closes [#164 ](https://github.com/kaitranntt/ccs/issues/164 )
### Bug Fixes
* **ci:** use commit-based changelog for dev release Discord notifications ([1129ec6 ](https://github.com/kaitranntt/ccs/commit/1129ec6ef570e7b922d2831c53bad83a68311b88 ))
* **ui:** add unsaved changes confirmation when switching profiles ([b790005 ](https://github.com/kaitranntt/ccs/commit/b790005c85e9f25fd14a14ac01b79e7562f1a1ea )), closes [#163 ](https://github.com/kaitranntt/ccs/issues/163 )
* **ui:** fix profile switching and improve UX ([86d992f ](https://github.com/kaitranntt/ccs/commit/86d992fce623a8378d5f53b1aff7b53d2f80e3c4 ))
### Documentation
* **readme:** add OpenRouter to built-in providers ([676929f ](https://github.com/kaitranntt/ccs/commit/676929fc87c4cc450e3dc6e3f05ff60dfcead255 ))
* **standards:** add input state persistence patterns ([53a7ba8 ](https://github.com/kaitranntt/ccs/commit/53a7ba8d3ffe81f87306e84357fce4f6ec9d7135 )), closes [#165 ](https://github.com/kaitranntt/ccs/issues/165 )
2025-12-21 07:11:07 +00:00