Files
CC-Switch/docs/user-manual/en/5-faq/5.1-config-files.md
T
Jason d9c0e4c452 docs: update user manual to v3.12.3 with new features coverage (en/zh/ja)
Add documentation for features introduced since v3.12.0:

New docs:
- 3.4 Session Manager: browse, search, resume, delete sessions
- 3.5 Workspace & Daily Memory: OpenClaw workspace file editing

Updated docs:
- Add Lightweight Mode to interface overview and FAQ
- Add tray submenu structure (providers grouped by app)
- Add API Format selection (Anthropic/OpenAI Chat/OpenAI Responses)
- Add Auto-Fetch Models button documentation
- Add Claude Common Config quick toggles
- Add Codex 1M Context Window toggle
- Add Skill backup/restore lifecycle
- Expand Backup Management panel documentation
- Update WebDAV sync to v2 protocol with dual-layer versioning
- Add OpenCode/OpenClaw to quickstart activation table
- Update README version to v3.12.3

All changes synced across en, zh, and ja locales.
2026-04-04 22:53:20 +08:00

6.7 KiB

5.1 Configuration Files

CC Switch Data Storage

Storage Directory

Default location: ~/.cc-switch/

Customizable location in settings (for cloud sync).

Directory Structure

~/.cc-switch/
├── cc-switch.db      # SQLite database (SSOT)
├── settings.json     # Device-level settings
├── skills/           # Skill SSOT directory
├── skill-backups/    # Skill backups (created on uninstall)
└── db_backup_*.db    # Database backups

Database Contents

cc-switch.db is a SQLite database that stores:

Table Contents
providers Provider configurations
provider_endpoints Provider endpoint candidate list
mcp_servers MCP server configurations
prompts Prompt presets
skills Skill installation status
skill_repos Skill repository configurations
proxy_config Proxy configuration
proxy_request_logs Proxy request logs
provider_health Provider health status
model_pricing Model pricing
settings App settings

Device Settings

settings.json stores device-level settings:

{
  "language": "zh",
  "theme": "system",
  "windowBehavior": "minimize",
  "autoStart": false,
  "claudeConfigDir": null,
  "codexConfigDir": null,
  "geminiConfigDir": null,
  "opencodeConfigDir": null,
  "openclawConfigDir": null
}

These settings are not synced across devices.

Automatic Backups

The backups/ directory stores automatic backups:

  • Automatically created before each configuration import
  • Retains the most recent 10 backups
  • File names include timestamps

Claude Code Configuration

Configuration Directory

Default: ~/.claude/

Key Files

~/.claude/
├── settings.json     # Main configuration file
├── CLAUDE.md         # System prompt
└── skills/           # Skills directory
    └── ...

settings.json

{
  "env": {
    "ANTHROPIC_API_KEY": "sk-xxx",
    "ANTHROPIC_BASE_URL": "https://api.anthropic.com"
  },
  "permissions": {
    "allow_file_access": true
  }
}
Field Description
env.ANTHROPIC_API_KEY API key
env.ANTHROPIC_BASE_URL API endpoint (optional)
env.ANTHROPIC_AUTH_TOKEN Alternative authentication method

MCP Configuration

MCP server configuration is in ~/.claude.json:

{
  "mcpServers": {
    "mcp-fetch": {
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    }
  }
}

Codex Configuration

Configuration Directory

Default: ~/.codex/

Key Files

~/.codex/
├── auth.json         # Authentication configuration
├── config.toml       # Main configuration + MCP
└── AGENTS.md         # System prompt

auth.json

{
  "OPENAI_API_KEY": "sk-xxx"
}

config.toml

# Basic configuration
base_url = "https://api.openai.com/v1"
model = "gpt-4"

# MCP servers
[mcp_servers.mcp-fetch]
command = "uvx"
args = ["mcp-server-fetch"]

Gemini CLI Configuration

Configuration Directory

Default: ~/.gemini/

Key Files

~/.gemini/
├── .env              # Environment variables (API Key)
├── settings.json     # Main configuration + MCP
└── GEMINI.md         # System prompt

.env

GEMINI_API_KEY=xxx
GOOGLE_GEMINI_BASE_URL=https://generativelanguage.googleapis.com
GEMINI_MODEL=gemini-pro

settings.json

{
  "mcpServers": {
    "mcp-fetch": {
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    }
  }
}
Field Description
mcpServers MCP server configuration

OpenCode Configuration

Configuration Directory

Default: ~/.opencode/

Key Files

~/.opencode/
├── config.json       # Main configuration file
├── AGENTS.md         # System prompt
└── skills/           # Skills directory
    └── ...

OpenClaw Configuration

Configuration Directory

Default: ~/.openclaw/

Key Files

~/.openclaw/
├── openclaw.json     # Main configuration file (JSON5 format)
├── AGENTS.md         # System prompt
└── skills/           # Skills directory
    └── ...

openclaw.json

OpenClaw uses a JSON5 format configuration file with the following main sections:

{
  // Model provider configuration
  models: {
    mode: "merge",
    providers: {
      "custom-provider": {
        baseUrl: "https://api.example.com/v1",
        apiKey: "your-api-key",
        api: "openai-completions",
        models: [{ id: "model-id", name: "Model Name" }]
      }
    }
  },
  // Environment variables
  env: {
    ANTHROPIC_API_KEY: "sk-..."
  },
  // Agent default model configuration
  agents: {
    defaults: {
      model: {
        primary: "provider/model"
      }
    }
  },
  // Tool configuration
  tools: {},
  // Workspace file configuration
  workspace: {}
}
Field Description
models.providers Provider configuration (mapped to CC Switch's "providers")
env Environment variable configuration
agents.defaults Agent default model settings
tools Tool configuration
workspace Workspace file management

Configuration Priority

CC Switch's priority when modifying configurations:

  1. CC Switch Database - Single source of truth (SSOT)
  2. Live Configuration Files - Written when switching providers
  3. Backfill Mechanism - Reads from live files when editing the current provider

Manual Configuration Editing

Safe to Edit Manually

  • CLI tool configuration files (will be backfilled by CC Switch)
  • CC Switch's settings.json
  • cc-switch.db database file
  • Backup files

Sync After Editing

If you manually edit CLI tool configurations:

  1. Open CC Switch
  2. Edit the corresponding provider
  3. You will see the manual changes have been backfilled
  4. Save to sync to the database

Configuration Migration

Migrating from Older Versions

CC Switch v3.7.0 migrated from JSON files to SQLite:

  • Automatic migration on first launch
  • Displays a notification upon successful migration
  • Old configuration files are retained as backups

Cross-device Migration

  1. Export configuration on the source device
  2. Import configuration on the target device
  3. Or use the cloud sync feature

Configuration Backup Recommendations

Regular Backups

It is recommended to regularly export configurations:

  1. Settings > Advanced > Data Management
  2. Click "Export"
  3. Save to a secure location

Backup Contents

The export file includes:

  • All provider configurations
  • MCP server configurations
  • Prompt presets
  • App settings

Not Included

  • Usage logs (large data volume)
  • Device-level settings (not suitable for cross-device)