mirror of
https://github.com/tiennm99/ccs.git
synced 2026-07-15 22:21:20 +00:00
- Replace before()/after() with beforeAll()/afterAll() - Remove this.timeout() calls (unsupported by bun) - Update package.json scripts to use bun test - Fix error message regex for cross-runtime compatibility - Skip integration tests requiring network/child process mocking - Format source files with prettier
35 KiB
35 KiB
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
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
- profile,shell-completion,prompt: add profile commands and improve input handling (#34) (7ec8cc8), closes #24 #30 #26 #31 #29 #29
5.3.0-beta.4 (2025-12-01)
Bug Fixes
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
5.3.0-beta.2 (2025-12-01)
Bug Fixes
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
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 binaryplatform-detector.ts- OS/arch detection for 6 platformscliproxy-executor.ts- Spawn/kill proxy patternconfig-generator.ts- Generate config.yaml per providerauth-handler.ts- OAuth token managementtypes.ts- TypeScript type definitionsindex.ts- Central exports
Changed
- Profile Detection: New priority order
- CLIProxy profiles (gemini, codex, agy)
- Settings-based profiles (glm, glmt, kimi)
- Account-based profiles (work, personal)
- Default Claude CLI
- Help Text: Updated with new OAuth profiles (alphabetically sorted)
- Profile Detector: Added
cliproxyprofile 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
- Binary:
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 functionalityhelp-command.ts(4.9KB) - Comprehensive help systeminstall-command.ts(957B) - Installation/uninstallation workflowsdoctor-command.ts(415B) - System diagnosticssync-command.ts(1.0KB) - Configuration synchronizationshell-completion-command.ts(2.1KB) - Shell completion management
-
New Utility Modules (
src/utils/):shell-executor.ts(1.5KB) - Cross-platform shell command executionpackage-manager-detector.ts(3.8KB) - Package manager detection (npm, yarn, pnpm, bun)
-
TypeScript Type System:
src/types/directory with comprehensive type definitions- Standardized
CommandHandlerinterface 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
anytypes - Interface Consistency: All commands follow standardized
CommandHandlerinterface
[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 updateserving 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
- npm:
- Bash (lib/ccs): Added
npm cache clean --forcebefore npm update - PowerShell (lib/ccs.ps1): Added
npm cache clean --forcebefore 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 --forcebeforeccs 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 doctorand 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
.defaultproperty 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 doctorcommand and postinstall scripts now work correctly with latest ora version
[4.3.7] - 2025-11-23
Fixed
- Postinstall Script: Fixed missing
~/.ccs/.claude/directory duringnpm install - Made
oradependency optional inClaudeDirInstallerandClaudeSymlinkManager - Postinstall script now gracefully handles missing
oramodule during installation - Ensures
.claude/directory and symlinks are properly created even whenorais unavailable
Technical Details
- Root cause:
oramodule not available duringnpm installpostinstall execution - Solution: Optional require with fallback to
console.logwhenorais 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.mdagent file from installations - Enhanced installation process to automatically clean up obsolete files
- Improved
ccs synccommand with migration logic for deprecated components
Removed
- ccs-delegator.md: Agent file deprecated in favor of
ccs-delegationskill (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 syncto 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 postinstallscript for automatic cleanup on package updates - Added to
ccs synccommand 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 updateto 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"
- Old:
Changed
- Updated
--helptext 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
-scfor--shell-completioncommand - 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 doctorincorrectly checking for delegation commands in~/.ccs/shared/commands/ccs/instead of~/.ccs/.claude/commands/ccs/ - Removed check for non-existent
create.mdfile - 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
- Fixed
[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_MODELfrom 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.jsontemplate - Users experiencing 401 errors will be automatically fixed on next install/update
- Removed
Changed
- Kimi settings now minimal: only
ANTHROPIC_BASE_URLandANTHROPIC_AUTH_TOKENrequired
[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.jsutility to copy.claude/from package - Updated
scripts/postinstall.jsto copy.claude/before creating symlinks - Updated
ccs updatecommand to re-install.claude/directory - Supports Node.js 14+ with fallback for versions < 16.7.0
Added
ClaudeDirInstallerutility 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.jsutility for managing symlinks with Windows fallback- Enhanced
ccs doctorcommand 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-turnsflag (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 -pprocesses after parent termination - Slash commands broken by IMPORTANT safety prefix
- Slash commands detected as file paths (/home vs /cook)
- Stream-json requires
--verboseflag 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-completioncommand (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/-yflag for automation (skips confirmations)--jsonflag 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)
--yesflag 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_DEBUG→CCS_DEBUGonly
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_LOG→CCS_DEBUG(backward compatible)
Removed
CCS_GLMT_THINKING_BUDGET,CCS_GLMT_STREAMING,CCS_GLMT_FORCE_ENGLISHenv vars
Fixed
- GLMT proxy path (glmt/glmt-proxy.js)
ultrathinkeffort:high→max
[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
ccsexecution)
[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 doctorhealth 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_MODELsupport
[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 --uninstallcommand
[2.2.2] - 2025-11-03
Fixed
ccs --installvia 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 sonprofile
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