Claude Code Switcher
一个用于管理 Claude Code 设置快照和模板的 CLI 工具,让你轻松在不同的 AI 提供商之间切换。
🎯 为什么需要这个工具?
Claude Code 支持多个 AI 提供商,但切换模型和配置比较麻烦。这个工具让你可以:
- 🔄 轻松切换:在不同 AI 提供商之间一键切换
- 📦 模板管理:内置多个热门 AI 提供商的预设模板
- 💾 快照功能:保存和恢复你自己的配置组合
- 🌍 环境隔离:项目级和全局配置分离
- 🔐 安全存储:加密保存 API 密钥,支持多凭证管理
🚀 快速开始
安装
方法一:从源码安装
方法二:从 crates.io 安装
安装完成后,你就可以使用 ccs 命令了。
基本使用
1. 应用预设模板(推荐)
# 智谱 GLM(强烈推荐)
# 或使用别名
# MiniMax(推荐)
# DeepSeek
# 或使用别名
# Kimi For Coding
# Moonshot K2
# 或使用别名
# Moonshot K2 Thinking(高性能)
# 万擎 KAT-Coder Pro
# 或使用别名
# 万擎 KAT-Coder Air
# 或使用别名
# 向后兼容 - 旧的命令仍然有效
# Longcat
关于凭证存储:当使用模板时,如果环境变量未设置,工具会提示你输入 API 密钥。你可以选择将凭证保存到加密的本地存储中,下次使用时会自动提示你是否使用已保存的凭证。
2. 管理保存的凭证
# 列出所有保存的凭证
# 或使用简写
# 删除某个凭证(使用 ID)
# 清除所有凭证(用于解决加密格式不兼容问题)
保存的凭证使用 AES-256-GCM 加密存储在本地,每个凭证包含:
- API 密钥(加密存储)
- Endpoint ID(仅 KAT-Coder 需要)
- 创建时间和最后使用时间
- 可选的凭证名称
3. 创建自己的快照
# 创建当前设置的快照
# 应用快照
4. 管理快照
# 查看所有快照
# 删除快照
🔑 API 密钥配置
在使用模板之前,需要先设置对应的环境变量:
# 智谱 GLM(强烈推荐)
# MiniMax
# DeepSeek
# Kimi For Coding
# Moonshot K2
# Longcat
# 万擎 KAT-Coder
# 格式: ep-xxx-xxx
💡 提示:如果没有设置环境变量,工具会交互式地提示你输入 API 密钥。
🎯 支持的 AI 提供商
| 提供商 | 模板名称 | 别名 | 特点 | 推荐度 |
|---|---|---|---|---|
| 🌟 智谱 GLM | zai |
glm, zhipu |
高性价比,256K上下文,思考能力 | ⭐⭐⭐⭐⭐ |
| 🔥 MiniMax | minimax |
minimax-anthropic |
高性能,Anthropic兼容,功能丰富 | ⭐⭐⭐⭐⭐ |
| 🚀 DeepSeek | deepseek |
ds |
价格便宜,响应快速 | ⭐⭐⭐⭐ |
| 🌙 Kimi | kimi |
kimi-for-coding |
专注编程,响应速度快 | ⭐⭐⭐⭐ |
| 🌈 K2 | k2 |
moonshot |
大上下文,平衡性能 | ⭐⭐⭐ |
| 🧠 K2 Thinking | k2-thinking |
k2thinking |
高速推理,256K上下文 | ⭐⭐⭐⭐ |
| 🔧 KAT-Coder Pro | kat-coder-pro |
katpro |
专业编程AI,高级功能 | ⭐⭐⭐⭐ |
| 💨 KAT-Coder Air | kat-coder-air |
katair |
轻量级,快速响应 | ⭐⭐⭐ |
| 🐱 Longcat | longcat |
- | 快速高效对话AI | ⭐⭐⭐ |
🌟 智谱 GLM(强烈推荐)
为什么推荐智谱 GLM?
- 💰 性价比极高:提供编程专用套餐,价格合理
- 🚀 性能优秀:响应速度快,代码生成质量高
- 📊 超大上下文:支持 32000 思考令牌,256K 总上下文
- 🧠 思考能力:支持深度推理,适合复杂问题
- 📝 丰富功能:支持流式输出、工具调用等
🔥 MiniMax(推荐)
MiniMax 的优势:
- 💰 价格合理:有竞争力的定价策略
- 🚀 性能出色:支持流式输出和函数调用
- 🔄 API 兼容:同时支持 Anthropic 和 OpenAI 格式
- 🔧 功能完整:支持工具调用、并发处理等高级特性
🔧 万擎 KAT-Coder
万擎提供两个不同的模型版本:
KAT-Coder Pro(推荐)
- 🎯 专业级:针对复杂编程任务优化
- 💰 按需计费:基于实际使用量,适合专业开发
- ⚡ 完整功能:支持所有 Claude Code 高级功能
KAT-Coder Air
- 🚀 高性价比:经济型选择,适合日常编程
- ⚡ 快速响应:轻量级模型,响应速度更快
- 🎯 核心功能:支持基础的代码生成和编辑
配置说明:
# 设置 API 密钥
# 设置端点 ID(格式:ep-xxx-xxx)
# 应用不同版本
📁 作用域说明
模板支持三种配置作用域:
# 环境变量(仅环境变量)
# 常用设置(默认:提供者、模型、端点等)
# 完整设置(环境变量 + 常用设置)
默认情况下,所有配置都应用到项目级别(.claude/settings.json):
# 默认应用到项目目录
# 应用到全局配置(需要手动指定路径)
🔧 高级用法
自定义模型
# 使用指定模型
备份当前设置
# 应用前先备份
快照管理
# 创建不同范围的快照
# 从自定义文件创建快照
# 带描述的快照
跳过确认提示
# 自动应用,不询问确认
📋 可用命令
| 命令 | 别名 | 说明 |
|---|---|---|
ccs ls |
ccs list |
列出所有快照 |
ccs snap <name> |
ccs s |
创建快照 |
ccs apply <target> |
ccs a |
应用快照或模板 |
ccs delete <name> |
ccs rm, del |
删除快照 |
ccs credentials <cmd> |
ccs creds <cmd> |
管理保存的凭证 |
凭证管理子命令:
ccs credentials list- 列出所有保存的凭证ccs credentials delete <id> [--yes]- 删除指定凭证ccs credentials clear [--yes]- 清除所有凭证
🏗️ 架构特点
模块化模板系统 🧩
本项目采用全新的模块化架构:
src/templates/
├── mod.rs # 主模块和 trait 定义
├── deepseek.rs # DeepSeek 模板实现
├── zai.rs # 智谱 GLM 模板实现
├── k2.rs # K2 和 K2Thinking 实现
├── kat_coder.rs # KatCoder Pro 和 Air 实现
├── kimi.rs # Kimi 模板实现
├── longcat.rs # Longcat 模板实现
└── minimax.rs # MiniMax 模板实现
🎯 Trait-based 设计
每个模板都实现了 Template trait:
✨ 优势
- 🧩 模块化:每个提供商独立模块,易于维护
- 🔧 可扩展:新增提供商只需实现 trait,无需修改现有代码
- 🎯 类型安全:编译时保证,防止运行时错误
- 🔄 一致性:统一接口,标准化配置
- 📝 丰富元数据:内置显示名称、描述和配置提示
- ⚙️ 灵活性:支持复杂配置需求和额外配置
- 🔙 向后兼容:保留所有原有功能和别名
🛠️ 开发
# 构建
# 运行
# 测试
# 运行模板系统演示
# 发布构建
📚 文档
- TEMPLATE_SYSTEM.md - 详细的模板系统架构文档
- examples/template_system.rs - 模板系统使用示例
🧪 测试
运行模板系统测试:
运行所有测试:
📝 许可证
MIT License
🤝 贡献
欢迎提交 Issue 和 Pull Request!
添加新的 AI 提供商
要添加新的 AI 提供商:
- 在
src/templates/创建新模块 - 实现
Templatetrait - 更新
TemplateType枚举 - 更新
FromStr和Display实现 - 在
mod.rs中注册新模板
详细步骤请参考 TEMPLATE_SYSTEM.md。
💡 小贴士:
- 建议把常用的 API 密钥添加到 shell 配置文件中(如
.bashrc、.zshrc)- 使用
ccs credentials list查看已保存的凭证- 使用
--backup选项在应用新配置前备份当前设置- 智谱 GLM 是目前性价比最高的选择,推荐优先使用
🔧 故障排除:
- 如果遇到凭证解密错误,运行
ccs credentials clear --yes清除并重新保存- 确保网络连接正常,某些模板需要访问 API 端点
- 检查环境变量设置是否正确