Commit Graph
336 Commits
Author SHA1 Message Date
kaitranntt befecf9fb1 ci: trigger dev release with ui build fix 2025-12-07 22:49:40 -05:00
kaitranntt 55197ee42e chore(project): update package.json metadata 2025-12-07 22:25:36 -05:00
kaitranntt 8bffd5fc17 ci(release): update release workflows 2025-12-07 22:25:01 -05:00
github-actions[bot] 2e8fe49e43 chore(release): 5.9.0-dev.4 [skip ci] 2025-12-08 03:02:25 +00:00
Kai (Tam Nhu) TranandGitHub 41e5575f9b Merge pull request #63 from kaitranntt/kai/feat/web-dashboard
feat(web): enhance dashboard with modern UI components and improved user experience
2025-12-07 22:01:06 -05:00
kaitranntt 4adb94b90c feat(ui): enhance settings dialog with tabbed interface and scrollable areas
- Add Radix UI scroll-area and tabs components
- Redesign settings dialog with tabbed layout for better organization
- Add Card components for structured content display
- Update accounts and profiles tables UI
- Add scrollable areas for better content management
- Improve overall dialog loading and styling
2025-12-07 21:41:17 -05:00
kaitranntt 1f215d8ecb refactor(ui): replace settings page with deprecation notice
- Remove complex settings editor (217 lines)
- Add simple deprecation redirect to API Profiles page
- Improve UX by consolidating settings functionality
2025-12-07 20:57:30 -05:00
kaitranntt 9b4a5d80c5 fix(ui): improve table column widths and spacing 2025-12-07 20:47:51 -05:00
kaitranntt db68cf06af style(cliproxy): fix formatting in cli command and ui page 2025-12-07 20:33:28 -05:00
kaitranntt a283f942a9 feat(cliproxy): add authentication status display to web dashboard
- Add auth status endpoint to show built-in profiles authentication state
- Display auth status in UI with visual indicators for authenticated state
- Show last authentication date and token file count
- Update CLI command to better differentiate between built-in profiles and custom variants
- Improve UI layout to separate built-in profiles from custom variants
2025-12-07 20:32:00 -05:00
kaitranntt bd1f5c610c style(ui): remove padding top from shared page card content 2025-12-07 20:10:48 -05:00
kaitranntt e078f15297 feat(web): update shared routes and home page for dashboard 2025-12-07 20:00:01 -05:00
kaitranntt 6e2da6458a feat(web): enhance dashboard functionality and ui components 2025-12-07 19:56:26 -05:00
kaitranntt 03059dbdcc feat(ui): add accounts and cliproxy management dashboard 2025-12-07 18:35:58 -05:00
kaitranntt d11071ad90 fix(ui): prettier formatting for documentation link 2025-12-07 17:59:10 -05:00
kaitranntt c65d9c9c34 feat(ui): enhance visual contrast and update project link
- Increase border and input opacity from 0.25 to 0.35 for better visibility
- Update GitHub repository link from claude-cli to ccs
- Maintain consistent theme styling across components
2025-12-07 17:57:43 -05:00
kaitranntt ad5859c157 fix(ui): adjust layout of localhost disclaimer
- Center the content and close button
- Position the close button next to the text
2025-12-07 17:45:23 -05:00
kaitranntt 481570f7b2 docs: update documentation to reflect v2.0 architecture
- Fix README.md dashboard command (ccs config) and port info
- Update all documentation to reflect React 19 dashboard
- Document new tooling: Bun, Vite, semantic release
- Add TypeScript strict mode and type coverage details
- Update architecture with WebSocket and modern stack
- Revise project roadmap with current implementation status
2025-12-07 17:41:18 -05:00
kaitranntt c8890f33c2 feat(ui): redesign sidebar and fix disclaimer
- Redesign AppSidebar with collapsible groups ("Identity & Access", "System")
- Nest "Shared Data" under "Accounts" in sidebar
- Add collapsible UI component for sidebar nesting
- Fix LocalhostDisclaimer by moving it inside SidebarProvider
- Add roadmap entry for sidebar redesign
2025-12-07 17:21:24 -05:00
kaitranntt cf072c03b2 fix(ui): suppress react compiler warning in profiles-table 2025-12-07 16:54:49 -05:00
kaitranntt 23a33820c0 feat(web-dashboard): add dev mode with hmr and optimize build 2025-12-07 16:44:34 -05:00
kaitranntt 235bd6b36a feat(ui): reorganize theme colors and add dev script
Move Crail from primary to accent color and promote neutral grey to primary.
Update all related color variables for both light and dark themes to maintain
visual consistency. Add new dev script to streamline development workflow.
2025-12-07 15:54:38 -05:00
kaitranntt b5f22e415b feat(ui): update theme colors to match brand palette 2025-12-07 15:36:18 -05:00
kaitranntt 1b163050f7 feat(ui): add ccs branding assets and logo component 2025-12-07 15:05:23 -05:00
kaitranntt 707af2f01a feat(ui): add comprehensive quality gates and fix linting issues
- Added ESLint, Prettier, TypeScript strict mode to ui/ directory
- Fixed 40+ lint/format issues across ui codebase
- Created extraction files for react-refresh compliance:
  - button-variants.ts for Button component styles
  - use-sidebar.ts, use-websocket-context.ts custom hooks
  - ws-context.ts WebSocket context provider
- Fixed React hooks issues (setState ordering, dependency arrays)
- Added ui:validate script to enforce quality checks
- Updated husky pre-commit to validate UI files on change
2025-12-07 14:51:29 -05:00
kaitranntt 59758024c9 feat(web-dashboard): complete settings, health, shared data and build integration
- Settings editor with API key masking and conflict detection
- Health dashboard with status cards and one-click fixes
- Home dashboard with stats and quick actions
- Shared data viewer for commands/skills/agents
- Build scripts for UI + server bundle
- Bundle size verification (<500KB gzipped)
- Pre-release checklist script
2025-12-07 14:23:56 -05:00
kaitranntt 56502ab6a8 feat(web-dashboard): add rest api and real-time sync
REST API & CRUD:
- Add REST API routes for profiles, cliproxy, accounts
- Integrate React Query with data fetching hooks
- Create API client wrapper with TypeScript types
- Add shadcn/ui components (dialog, input, label, table)
- Build profiles table with edit/delete actions
- Create profile form dialog with zod validation
- Mount QueryClientProvider in App

Real-time Sync & WebSocket:
- Implement file watcher with chokidar for config changes
- Create WebSocket server with broadcast capability
- Add client auto-reconnect with exponential backoff
- Integrate React Query cache invalidation on WS messages
- Add connection status indicator in header
- Implement heartbeat keepalive (30s interval)
- Add graceful cleanup on server shutdown
- Show toast notifications for external config changes

Dependencies:
- Add @tanstack/react-query, react-table, react-hook-form, zod
- Add chokidar for file watching
2025-12-07 12:00:56 -05:00
kaitranntt 6a6f2a2463 feat(web-dashboard): add express server and react ui scaffolding 2025-12-07 11:37:28 -05:00
github-actions[bot] e1cbee1074 chore(release): 5.9.0-dev.3 [skip ci] 2025-12-07 13:31:40 +00:00
kaitranntt 98fd1bedb9 feat(doctor): improve port detection with process identification
- Add port-utils.ts module to detect which process occupies CLIProxy port
- Enhance doctor command to show specific process (PID/name) using port
- Distinguish between CLIProxy process vs other conflicting processes
- Support cross-platform detection (Windows netstat, Unix lsof)
- Provide actionable guidance when port conflict detected

This helps users identify if CLIProxy is already running or if another
application needs to be terminated to free up the port.
2025-12-07 08:29:53 -05:00
github-actions[bot] d65dd63042 chore(release): 5.9.0-dev.2 [skip ci] 2025-12-06 13:45:47 +00:00
kaitranntt 63b3ca7760 feat(cliproxy): deprecate claude thinking models in agy provider
Deprecated 2 Claude thinking models:
- gemini-claude-opus-4-5-thinking
- gemini-claude-sonnet-4-5-thinking

These models have compatibility issues with Antigravity.
A new deprecation system was added with badges and warnings in the UI.
2025-12-06 08:44:09 -05:00
github-actions[bot] 95e98313b8 chore(release): 5.9.0-dev.1 [skip ci] 2025-12-06 07:30:12 +00:00
kaitranntt 59a2f2b717 feat(completions): enhance cliproxy help and update shell completion scripts
- Styled cliproxy help output with UI primitives and added status hint
- Added cliproxy --help reference to main help command
- Updated bash, zsh, fish, and PowerShell completions with:
  - Missing commands (api, cliproxy)
  - CLIProxy OAuth profiles (gemini, codex, agy, qwen)
  - Provider flags and update command flags
2025-12-06 02:28:34 -05:00
semantic-release-bot 244b441663 chore(release): 5.9.0 [skip ci]
# [5.9.0](https://github.com/kaitranntt/ccs/compare/v5.8.0...v5.9.0) (2025-12-06)

### Features

* **cliproxy:** add crud commands for variant profiles ([6427ecf](https://github.com/kaitranntt/ccs/commit/6427ecf5af4a9be40f39c2a64bf72ac4e861d349))
2025-12-06 02:45:41 +00:00
kaitranntt 6427ecf5af feat(cliproxy): add crud commands for variant profiles
- Add `ccs cliproxy create/list/remove` commands for variant management
- Interactive wizard with provider/model selection from catalog
- Settings file auto-generated with all 6 ANTHROPIC_* env fields
- Fix `ccs api create` to include all 4 model fields (was missing 3)
- Fix `--config` flag to save to correct variant settings file
- Remove paid tier badge from AGY models (all free via Antigravity)
- Add settings file format example to README for CLIProxy variants
- Add 22 unit tests for cliproxy command validation and config handling
2025-12-05 21:44:41 -05:00
semantic-release-bot e103f21dde chore(release): 5.8.0 [skip ci]
# [5.8.0](https://github.com/kaitranntt/ccs/compare/v5.7.0...v5.8.0) (2025-12-05)

### Bug Fixes

* **agy:** enable claude model thinking via antigravity profile ([6f19440](https://github.com/kaitranntt/ccs/commit/6f194404722e63990f64d250d08c5f5e33235e05))
* **agy:** preserve user settings during model switch ([f5c31da](https://github.com/kaitranntt/ccs/commit/f5c31dab55033cd8db99247ca9eab8a47fcb24fb))
* **agy:** remove max_thinking_tokens when switching to non-claude model ([6decd15](https://github.com/kaitranntt/ccs/commit/6decd157e5e7b4d19ed3dac2cfdcb0131ce9d782))
* **cliproxy:** consolidate download ui to single spinner ([ace5ba8](https://github.com/kaitranntt/ccs/commit/ace5ba87502c51a7e8fe35df5fe4a8f7aaacd173))
* **cliproxy:** only remove provider-specific auth files on logout ([4770047](https://github.com/kaitranntt/ccs/commit/47700474a40539fad85c58fc5c971b85ddab45c4))
* **skill:** use yaml block scalar for ccs-delegation description ([26154c3](https://github.com/kaitranntt/ccs/commit/26154c3e13b14d76fee87473b84365457139c553))

### Features

* **agy:** disable thinking toggle for claude models via antigravity ([f5a1b81](https://github.com/kaitranntt/ccs/commit/f5a1b81e553d2d057dc1f49fabac1945a83fc361)), closes [#415](https://github.com/kaitranntt/ccs/issues/415)
* **delegation:** add passthrough args for claude cli flags ([26d72cf](https://github.com/kaitranntt/ccs/commit/26d72cfa5bbd7ea5d4a42dc7d5c4010ae5247711))
2025-12-05 22:45:27 +00:00
Kai (Tam Nhu) TranandGitHub b8d98a6b55 Merge pull request #59 from kaitranntt/dev
feat(release): v5.7.0 - claude thinking support via antigravity
2025-12-05 17:44:46 -05:00
github-actions[bot] 165c43aa9e chore(release): 5.7.0-dev.8 [skip ci] 2025-12-05 22:42:45 +00:00
kaitranntt 6decd157e5 fix(agy): remove max_thinking_tokens when switching to non-claude model
Cleans up the thinking token limit setting when user switches from
a Claude model to a Gemini model via ccs agy --config.
2025-12-05 17:41:41 -05:00
github-actions[bot] b2941abdb3 chore(release): 5.7.0-dev.7 [skip ci] 2025-12-05 22:38:46 +00:00
kaitranntt 6f19440472 fix(agy): enable claude model thinking via antigravity profile
- Removed broken: true and issueUrl from Claude thinking models
- Added MAX_THINKING_TOKENS=8191 for Antigravity-proxied Claude models
- Removed alwaysThinkingEnabled:false requirement
- Updated info message explaining thinking token limit

Claude models now work with extended thinking when using Antigravity
proxy (MAX_THINKING_TOKENS < 8192 is required).
2025-12-05 17:37:19 -05:00
github-actions[bot] 30eb5d2553 chore(release): 5.7.0-dev.6 [skip ci] 2025-12-05 22:25:40 +00:00
kaitranntt ace5ba8750 fix(cliproxy): consolidate download ui to single spinner
Use single spinner with update() instead of multiple spinners.
Prevents UI jumping during download/verify/extract phases.
2025-12-05 17:24:12 -05:00
kaitranntt 47700474a4 fix(cliproxy): only remove provider-specific auth files on logout
Previously --logout cleared all files in shared auth directory.
Now filters by provider prefix or JSON type field to preserve other providers.
2025-12-05 17:23:28 -05:00
github-actions[bot] 9ddaa76c1b chore(release): 5.7.0-dev.5 [skip ci] 2025-12-05 22:03:42 +00:00
kaitranntt f5c31dab55 fix(agy): preserve user settings during model switch
Model configuration now uses selective merge instead of full replacement:
- Preserves all user customizations (includeCoAuthoredBy, MAX_TOKENS, etc.)
- Only updates CCS-controlled fields (model selection, base URL, auth token)
- Still enforces alwaysThinkingEnabled: false for Claude models
2025-12-05 17:02:19 -05:00
github-actions[bot] c71b1b9889 chore(release): 5.7.0-dev.4 [skip ci] 2025-12-05 21:45:57 +00:00
kaitranntt f5a1b81e55 feat(agy): disable thinking toggle for claude models via antigravity
Claude models routed through Google's Antigravity protocol don't support
the thinking toggle due to protocol conversion limitations.

Changes:
- Add alwaysThinkingEnabled: false when selecting Claude models
- Show warning about thinking toggle limitation after model selection
- Reference GitHub issue #415 for technical details
2025-12-05 16:44:33 -05:00
kaitranntt 26d72cfa5b feat(delegation): add passthrough args for claude cli flags
Support passing through additional CLI flags like --agent, --system-prompt-file
to the underlying Claude CLI when using delegation mode.
2025-12-05 16:43:08 -05:00