5.1 配置文件说明
CC Switch 数据存储
存储目录
默认位置:~/.cc-switch/
可在设置中自定义位置(用于云同步)。
目录结构
~/.cc-switch/
├── cc-switch.db # SQLite 数据库(SSOT)
├── settings.json # 设备级设置
├── skills/ # 技能 SSOT 目录
├── skill-backups/ # 技能备份(卸载时创建)
└── backups/ # 数据库备份
数据库内容
cc-switch.db 是 SQLite 数据库,存储:
| 表 | 内容 |
|---|---|
| providers | 供应商配置 |
| provider_endpoints | 供应商端点候选列表 |
| mcp_servers | MCP 服务器配置 |
| prompts | 提示词预设 |
| skills | 技能安装状态 |
| skill_repos | 技能仓库配置 |
| proxy_config | 代理配置 |
| proxy_request_logs | 代理请求日志 |
| provider_health | 供应商健康状态 |
| model_pricing | 模型定价 |
| settings | 应用设置 |
设备设置
settings.json 存储设备级设置:
{
"language": "zh",
"theme": "system",
"windowBehavior": "minimize",
"autoStart": false,
"claudeConfigDir": null,
"codexConfigDir": null,
"geminiConfigDir": null,
"opencodeConfigDir": null,
"openclawConfigDir": null,
"hermesConfigDir": null
}
这些设置不会跨设备同步。
自动备份
backups/ 目录存储自动备份:
- 每次导入配置前自动创建
- 保留最近 10 个备份
- 文件名包含时间戳
Claude Code 配置
配置目录
默认:~/.claude/
主要文件
~/.claude/
├── settings.json # 主配置文件
├── CLAUDE.md # 系统提示词
└── skills/ # 技能目录
└── ...
settings.json
{
"env": {
"ANTHROPIC_API_KEY": "sk-xxx",
"ANTHROPIC_BASE_URL": "https://api.anthropic.com"
},
"permissions": {
"allow_file_access": true
}
}
| 字段 | 说明 |
|---|---|
env.ANTHROPIC_API_KEY | API 密钥 |
env.ANTHROPIC_BASE_URL | API 端点(可选) |
env.ANTHROPIC_AUTH_TOKEN | 替代认证方式 |
MCP 配置
MCP 服务器配置在 ~/.claude.json:
{
"mcpServers": {
"mcp-fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}
Codex 配置
配置目录
默认:~/.codex/
主要文件
~/.codex/
├── auth.json # 认证配置
├── config.toml # 主配置 + MCP
└── AGENTS.md # 系统提示词
auth.json
{
"OPENAI_API_KEY": "sk-xxx"
}
config.toml
# 基础配置
base_url = "https://api.openai.com/v1"
model = "gpt-4"
# MCP 服务器
[mcp_servers.mcp-fetch]
command = "uvx"
args = ["mcp-server-fetch"]
Gemini CLI 配置
配置目录
默认:~/.gemini/
主要文件
~/.gemini/
├── .env # 环境变量(API Key)
├── settings.json # 主配置 + MCP
└── GEMINI.md # 系统提示词
.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"]
}
}
}
| 字段 | 说明 |
|---|---|
mcpServers | MCP 服务器配置 |
OpenCode 配置
配置目录
默认:~/.config/opencode/
主要文件
~/.config/opencode/
├── opencode.json # 主配置文件
├── AGENTS.md # 系统提示词
└── skills/ # 技能目录
└── ...
Hermes 配置
配置目录
默认:~/.hermes/
主要文件
~/.hermes/
├── config.yaml # 主设置、供应商与 MCP 配置
├── .env # API keys 与 secrets
├── SOUL.md # Profile 身份/人格
├── memories/
│ ├── MEMORY.md # Agent 记忆
│ └── USER.md # 用户画像记忆
├── skills/ # 活跃技能目录
├── state.db # SQLite 会话数据库
└── sessions/ # Gateway 转录与可选 JSON 快照
config.yaml
Hermes 使用 YAML 配置。CC Switch 将 MCP 服务器写入 mcp_servers,将可编辑的供应商条目写入 custom_providers,读取 Hermes providers 字典中的只读条目,并在切换供应商时更新 model.provider / model.default。
OpenClaw 配置
配置目录
默认:~/.openclaw/
主要文件
~/.openclaw/
├── openclaw.json # 主配置文件(JSON5 格式)
└── skills/ # 技能目录
└── ...
openclaw.json
OpenClaw 使用 JSON5 格式配置文件,主要包含以下部分:
{
// 模型供应商配置
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" }]
}
}
},
// 环境变量
env: {
ANTHROPIC_API_KEY: "sk-..."
},
// Agent 默认配置
agents: {
defaults: {
model: {
primary: "provider/model"
},
workspace: "~/.openclaw/workspace"
}
},
// 工具配置
tools: {}
}
| 字段 | 说明 |
|---|---|
models.providers | 供应商配置(映射为 CC Switch 的"供应商") |
env | 环境变量配置 |
agents.defaults | Agent 默认模型设置 |
tools | 工具配置 |
agents.defaults.workspace | 工作区目录路径 |
配置优先级
CC Switch 修改配置时的优先级:
- CC Switch 数据库 - 单一事实源 (SSOT)
- Live 配置文件 - 切换供应商时写入
- 回填机制 - 编辑当前供应商时从 Live 文件读取
手动编辑配置
可以手动编辑
- CLI 工具的配置文件(会被 CC Switch 回填)
- CC Switch 的
settings.json
不建议手动编辑
cc-switch.db数据库文件- 备份文件
编辑后同步
如果手动编辑了 CLI 工具的配置:
- 打开 CC Switch
- 编辑对应的供应商
- 会看到手动修改的内容已回填
- 保存以同步到数据库
配置迁移
从旧版本迁移
CC Switch v3.7.0 从 JSON 文件迁移到 SQLite:
- 首次启动自动迁移
- 迁移成功后显示提示
- 旧配置文件保留作为备份
跨设备迁移
- 在源设备导出配置
- 在目标设备导入配置
- 或使用云同步功能
配置备份建议
定期备份
建议定期导出配置:
- 设置 → 高级 → 数据管理
- 点击「导出」
- 保存到安全位置
备份内容
导出文件包含:
- 所有供应商配置
- MCP 服务器配置
- Prompts 预设
- 应用设置
不包含的内容
- 用量日志(数据量大)
- 设备级设置(不适合跨设备)