告别cc-switch配置混乱!一行命令让两个Claude实例同时使用不同API
【导语】
你是否遇到过这样的场景:手上有两个不同的Claude API密钥(比如公司发的官方密钥和自己买的中转站API),想同时开两个终端窗口跑不同的项目,结果发现无论怎么切,两个Claude实例用的都是同一个API?
这就是cc-switch的致命伤——它维护的是一套全局配置,只能切换,无法并行。
今天教你一个官方原生的方法,一条命令彻底解决这个问题。
【核心命令】
bash
claude --settings "配置文件路径.json" --resume "会话名称"
【配置文件】
准备两个JSON文件,分别写入不同的API信息:
work-config.json(工作API)
json
{ "env": { "ANTHROPIC_BASE_URL": "https://api.anthropic.com", "ANTHROPIC_AUTH_TOKEN": "sk-ant-work-xxx" } }personal-config.json(个人API)
json
{ "env": { "ANTHROPIC_BASE_URL": "https://api.personal.com", "ANTHROPIC_AUTH_TOKEN": "sk-ant-personal-xxx" } }【操作步骤】
终端1 - 跑工作项目
bash
claude --settings "D:/configs/work-config.json" --resume "work-session"
终端2 - 跑个人项目
bash
claude --settings "D:/configs/personal-config.json" --resume "personal-session"
完成!两个Claude实例各自使用独立的API配置,互不干扰。
【为什么cc-switch做不到?】
| 工具 | 配置方式 | 能否同时用两个API |
|---|---|---|
| cc-switch | 全局单文件 | ❌ 只能切换,不能并行 |
| JSON配置法 | 每个实例独立指定 | ✅ 完美支持 |
cc-switch的本质是切换器,不是并行管理器。无论CLI版还是桌面版,最终都是操作同一份配置文件或同一个代理端口,两个终端一启动就会互相覆盖。
【进阶技巧】
Windows路径处理
bash
# 推荐用正斜杠 claude --settings "C:/Users/你的用户名/configs/work.json" # 或用双反斜杠 claude --settings "C:\\Users\\你的用户名\\configs\\work.json"
设置别名(一劳永逸)
在~/.bashrc或~/.zshrc中添加:
bash
alias claude-work='claude --settings "D:/configs/work-config.json"' alias claude-personal='claude --settings "D:/configs/personal-config.json"'
之后直接使用:
bash
claude-work --resume "project-a" claude-personal --resume "project-b"
【总结】
| 需求 | 命令 |
|---|---|
| 指定配置启动 | claude --settings config.json |
| 恢复会话 | claude --resume session-name |
| 指定配置+恢复会话 | claude --settings config.json --resume session-name |
一句话:扔掉cc-switch,一个--settings参数解决所有问题。
