- Auto shell detection (bash/zsh/fish) with PATH setup - Unified ~/.local/bin install (no sudo required) - ANSI colors with TTY detection, NO_COLOR support - Security: fix shell injection, error handling - Replace emojis with ASCII symbols - Update 16 files: core(6), en-docs(6), vi-docs(4)
3.1 KiB
CCS Configuration Guide
Automatic Configuration
The installer auto-creates config and profile templates during installation:
macOS / Linux: ~/.ccs/config.json
Windows: %USERPROFILE%\.ccs\config.json
Configuration Format
Basic Setup
{
"profiles": {
"glm": "~/.ccs/glm.settings.json",
"default": "~/.claude/settings.json"
}
}
Advanced Setup (Multiple Profiles)
{
"profiles": {
"glm": "~/.ccs/glm.settings.json",
"haiku": "~/.ccs/haiku.settings.json",
"custom": "~/.ccs/custom.settings.json",
"default": "~/.claude/settings.json"
}
}
Profile Configuration
GLM Profile Example
Location: ~/.ccs/glm.settings.json
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.z.ai/api/anthropic",
"ANTHROPIC_AUTH_TOKEN": "your_glm_api_key",
"ANTHROPIC_MODEL": "glm-4.6",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "glm-4.6",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "glm-4.6",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "glm-4.6"
}
}
Claude (Default) Profile
- Uses
~/.claude/settings.json(your existing Claude CLI config) - CCS never modifies this file (non-invasive approach)
How Configuration Works
- CCS reads profile name from command line (defaults to "default")
- Looks up settings file path in
~/.ccs/config.json - Executes
claude --settings <file> [remaining-args]
No magic. No file modification. Pure delegation. Works identically across all platforms.
Environment Variables
CCS_CONFIG
Override default config location:
export CCS_CONFIG=~/my-custom-config.json
ccs glm
NO_COLOR
Disable colored terminal output:
export NO_COLOR=1
ccs glm
Use Cases:
- CI/CD pipelines
- Log files
- Terminals without color support
- Accessibility preferences
When NO_COLOR is set, CCS uses plain ASCII output without ANSI color codes.
Platform-Specific Notes
Windows Configuration
Windows uses the same file structure and approach as Linux/macOS.
Config format (~/.ccs/config.json):
{
"profiles": {
"glm": "~/.ccs/glm.settings.json",
"default": "~/.claude/settings.json"
}
}
macOS / Linux Configuration
Uses settings file paths with ~ expansion:
{
"profiles": {
"glm": "~/.ccs/glm.settings.json",
"default": "~/.claude/settings.json"
}
}
Each profile points to a Claude settings JSON file. Create settings files per Claude CLI docs.
Configuration Issues
Profile not found
Error: Profile 'foo' not found in ~/.ccs/config.json
Fix: Add profile to ~/.ccs/config.json:
{
"profiles": {
"foo": "~/.ccs/foo.settings.json"
}
}
Settings file missing
Error: Settings file not found: ~/.ccs/foo.settings.json
Fix: Create settings file or fix path in config.
Default profile missing
Error: Profile 'default' not found in ~/.ccs/config.json
Fix: Add "default" profile or always specify profile name:
{
"profiles": {
"default": "~/.claude/settings.json"
}
}