Skip to content
/ ccs Public

Claude Code Switch (CCS) - Instant switch between Claude Subscription profile and GLM Coding Plan profile with one command

License

Notifications You must be signed in to change notification settings

kaitranntt/ccs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

74 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CCS - Claude Code Switch

CCS Logo

One command, zero downtime, right model for each task

Switch between Claude Sonnet 4.5, GLM 4.6, and Kimi for Coding instantly. Stop hitting rate limits. Start optimizing costs.

License Platform npm PoweredBy

Languages: English | TiαΊΏng Việt


πŸš€ Quick Start

πŸ”‘ Prerequisites

Before installing CCS, make sure you're logged into Claude CLI with your subscription account:

claude /login

Primary Installation Methods

Option 1: npm Package (Recommended)

macOS / Linux / Windows

npm install -g @kaitranntt/ccs

Compatible with npm, yarn, pnpm, and bun package managers.

Option 2: Direct Install (Traditional)

macOS / Linux

curl -fsSL ccs.kaitran.ca/install | bash

Windows PowerShell

irm ccs.kaitran.ca/install | iex

Your First Switch

# Use Claude subscription (default)
ccs "Review this architecture design"

# Switch to GLM for cost-optimized tasks
ccs glm "Create a simple REST API"

# Switch to Kimi for alternative option
ccs kimi "Write integration tests"

# Use GLM for all subsequent commands until switched back
ccs glm
ccs "Debug this issue"
ccs "Write unit tests"

Package Manager Options

All major package managers are supported:

# npm (default)
npm install -g @kaitranntt/ccs

# yarn
yarn global add @kaitranntt/ccs

# pnpm (70% less disk space)
pnpm add -g @kaitranntt/ccs

# bun (30x faster)
bun add -g @kaitranntt/ccs

Configuration (Auto-created)

CCS automatically creates configuration during installation (via npm postinstall script).

~/.ccs/config.json:

{
  "profiles": {
    "glm": "~/.ccs/glm.settings.json",
    "kimi": "~/.ccs/kimi.settings.json",
    "default": "~/.claude/settings.json"
  }
}

Custom Claude CLI Path

If Claude CLI is installed in a non-standard location (D drive, custom directory), set CCS_CLAUDE_PATH:

export CCS_CLAUDE_PATH="/path/to/claude"              # Unix
$env:CCS_CLAUDE_PATH = "D:\Tools\Claude\claude.exe"   # Windows

See Troubleshooting Guide for detailed setup instructions.


The Daily Developer Pain Point

You have Claude subscription, GLM Coding Plan, and Kimi for Coding. Three scenarios happen every day:

  1. Rate Limits Hit: Claude stops mid-project β†’ you manually edit ~/.claude/settings.json
  2. Cost Waste: Simple tasks use expensive Claude β†’ GLM or Kimi would work fine
  3. Model Choice: Different tasks benefit from different model strengths β†’ manual switching

Manual switching breaks your flow. CCS fixes it instantly.

Why CCS Instead of Manual Switching?

Feature Benefit Emotional Value
Instant Switching One command, no file editing Confidence, control
Zero Downtime Never interrupt your workflow Reliability, consistency
Smart Delegation Right model for each task automatically Simplicity, ease
Cost Control Use expensive models only when needed Efficiency, savings
Cross-Platform Works on macOS, Linux, Windows Flexibility, portability
Reliable Pure bash/PowerShell, zero dependencies Trust, peace of mind

The Solution:

ccs           # Use Claude subscription (default)
ccs glm       # Switch to GLM fallback
ccs kimi      # Switch to Kimi for Coding
# Hit rate limit? Switch instantly:
ccs glm       # Continue working with GLM
# Or switch to Kimi:
ccs kimi      # Continue working with Kimi

One command. Zero downtime. No file editing. Right model, right task.


πŸ—οΈ Architecture Overview

graph LR
    subgraph "User Command"
        CMD[ccs glm]
    end

    subgraph "CCS Processing"
        CONFIG[Read ~/.ccs/config.json]
        LOOKUP[Lookup profile β†’ settings file]
        VALIDATE[Validate file exists]
    end

    subgraph "Claude CLI"
        EXEC[claude --settings file_path]
    end

    subgraph "API Response"
        API[Claude Sub or GLM API]
    end

    CMD --> CONFIG
    CONFIG --> LOOKUP
    LOOKUP --> VALIDATE
    VALIDATE --> EXEC
    EXEC --> API
Loading

⚑ Features

Instant Profile Switching

  • One Command: ccs glm to switch to GLM, ccs to use Claude subscription - no config file editing
  • Smart Detection: Automatically uses right model for each task
  • Persistent: Switch stays active until changed again

Zero Workflow Interruption

  • No Downtime: Switching happens instantly between commands
  • Context Preservation: Your workflow remains uninterrupted
  • Seamless Integration: Works exactly like native Claude CLI

πŸ’» Usage Examples

ccs              # Use Claude subscription (default)
ccs glm          # Use GLM fallback
ccs kimi         # Use Kimi for Coding
ccs --version    # Show CCS version and install location

πŸ—‘οΈ Official Uninstall

The recommended way to completely remove CCS:

macOS / Linux:

curl -fsSL ccs.kaitran.ca/uninstall | bash

Windows PowerShell:

irm ccs.kaitran.ca/uninstall | iex

πŸ’‘ Why use the official uninstaller?

  • Removes all CCS files and configurations
  • Cleans up PATH modifications
  • Removes Claude CLI commands/skills
  • Handles edge cases we've tested

Alternative methods (if official uninstaller fails):


🎯 Philosophy

  • YAGNI: No features "just in case"
  • KISS: Simple bash, no complexity
  • DRY: One source of truth (config)

πŸ“– Documentation

Complete documentation in docs/:


🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details.


πŸ“„ License

CCS is licensed under the MIT License.


Made with ❀️ for developers who hit rate limits too often

⭐ Star this repo | πŸ› Report issues | πŸ“– Read docs