在使用 Claude Code 开发项目时我们可能会遇到这样的需求一个终端使用速度更快、成本更低的模型处理日常代码修改另一个终端使用推理能力更强的模型处理复杂问题。比如一个终端用deepseek-v4-pro[1m]另一个终端用glm-5.1或者一个终端用sonnet另一个终端用opus。其实实现方式很简单每个终端单独设置环境变量或启动参数即可。不同终端之间的环境变量是相互独立的。一、核心思路Claude Code 选择模型通常有几种方式claude --model 模型名或者设置环境变量ANTHROPIC_MODEL模型名如果你同时打开两个终端只要在不同终端里设置不同的模型再分别启动 Claude Code就可以实现多个 Claude Code 会话同时使用不同模型。二、Windows PowerShell 的正确写法很多人在 Windows 里会直接复制 Linux / macOS 的写法例如ANTHROPIC_MODELdeepseek-v4-pro[1m] \ claude但这在 PowerShell 里会报错。因为这是 Bash 语法不是 PowerShell 语法。在 PowerShell 中环境变量要这样写$env:ANTHROPIC_MODEL deepseek-v4-pro[1m] claude如果你还需要设置第三方接口地址和 API Key可以这样写$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key $env:ANTHROPIC_MODEL deepseek-v4-pro[1m] claude三、在两个终端里使用不同模型假设我们要在两个 PowerShell 终端中分别使用两个模型。终端 A使用 DeepSeek 模型$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key $env:ANTHROPIC_MODEL deepseek-v4-pro[1m] claude终端 B使用 GLM 模型$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key $env:ANTHROPIC_MODEL glm-5.1 claude这样两个终端就会分别使用不同模型。终端 A 的 Claude Code 会话使用deepseek-v4-pro[1m]终端 B 的 Claude Code 会话使用glm-5.1两个终端互不影响。四、推荐使用--model强制指定模型有时候你明明设置了$env:ANTHROPIC_MODEL deepseek-v4-pro[1m]但启动 Claude Code 后顶部显示的还是之前的模型比如glm-5.1 · API Usage Billing这通常说明模型被更高优先级的配置覆盖了。这种情况下建议直接使用--model参数claude --model deepseek-v4-pro[1m]完整写法如下$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key claude --model deepseek-v4-pro[1m]另一个终端可以这样$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key claude --model glm-5.1这种方式更直观也更适合临时切换模型。五、为什么设置了环境变量却没有生效如果你发现 Claude Code 仍然使用旧模型可以检查下面几个地方。1. 是否被/model覆盖Claude Code 内部可以使用/model来切换模型。如果你之前在 Claude Code 中选择过某个模型它可能会被保存下来下次启动时继续生效。可以在 Claude Code 里输入/model deepseek-v4-pro[1m]或者退出后用启动参数强制指定claude --model deepseek-v4-pro[1m]2. 是否被项目配置覆盖Claude Code 项目目录下可能存在配置文件.claude/settings.json .claude/settings.local.json可以在 PowerShell 中查看Get-Content .\.claude\settings.json -ErrorAction SilentlyContinue Get-Content .\.claude\settings.local.json -ErrorAction SilentlyContinue如果里面有类似配置{ model: glm-5.1 }那么 Claude Code 可能会继续使用这个模型。可以删除这个model配置或者改成你想使用的模型。六、如果使用的是第三方模型使用第三方模型时一般需要配置三个变量$env:ANTHROPIC_BASE_URL 第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 第三方 API Key $env:ANTHROPIC_MODEL 第三方模型名需要注意的是模型名必须是第三方平台支持的模型 ID。例如$env:ANTHROPIC_BASE_URL https://你的中转平台地址 $env:ANTHROPIC_AUTH_TOKEN sk-xxxx $env:ANTHROPIC_MODEL deepseek-v4-pro[1m] claude如果你使用的是某个中转平台提供的模型名例如deepseek-v4-pro[1m]那么ANTHROPIC_BASE_URL也必须填写这个中转平台提供的 Anthropic 兼容接口地址而不是随便填写其他平台的地址。否则可能会出现模型不存在、请求失败或者实际使用的不是你想要的模型。七、做成快捷命令每次手动输入环境变量比较麻烦可以在 PowerShell 里写成函数。例如function cc-deepseek { $env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key claude --model deepseek-v4-pro[1m] } function cc-glm { $env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key claude --model glm-5.1 }之后就可以直接运行cc-deepseek或者cc-glm这样在不同终端中启动不同模型会方便很多。
如何在不同终端里面使用claude code并使用不同模型
发布时间:2026/5/16 12:03:07
在使用 Claude Code 开发项目时我们可能会遇到这样的需求一个终端使用速度更快、成本更低的模型处理日常代码修改另一个终端使用推理能力更强的模型处理复杂问题。比如一个终端用deepseek-v4-pro[1m]另一个终端用glm-5.1或者一个终端用sonnet另一个终端用opus。其实实现方式很简单每个终端单独设置环境变量或启动参数即可。不同终端之间的环境变量是相互独立的。一、核心思路Claude Code 选择模型通常有几种方式claude --model 模型名或者设置环境变量ANTHROPIC_MODEL模型名如果你同时打开两个终端只要在不同终端里设置不同的模型再分别启动 Claude Code就可以实现多个 Claude Code 会话同时使用不同模型。二、Windows PowerShell 的正确写法很多人在 Windows 里会直接复制 Linux / macOS 的写法例如ANTHROPIC_MODELdeepseek-v4-pro[1m] \ claude但这在 PowerShell 里会报错。因为这是 Bash 语法不是 PowerShell 语法。在 PowerShell 中环境变量要这样写$env:ANTHROPIC_MODEL deepseek-v4-pro[1m] claude如果你还需要设置第三方接口地址和 API Key可以这样写$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key $env:ANTHROPIC_MODEL deepseek-v4-pro[1m] claude三、在两个终端里使用不同模型假设我们要在两个 PowerShell 终端中分别使用两个模型。终端 A使用 DeepSeek 模型$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key $env:ANTHROPIC_MODEL deepseek-v4-pro[1m] claude终端 B使用 GLM 模型$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key $env:ANTHROPIC_MODEL glm-5.1 claude这样两个终端就会分别使用不同模型。终端 A 的 Claude Code 会话使用deepseek-v4-pro[1m]终端 B 的 Claude Code 会话使用glm-5.1两个终端互不影响。四、推荐使用--model强制指定模型有时候你明明设置了$env:ANTHROPIC_MODEL deepseek-v4-pro[1m]但启动 Claude Code 后顶部显示的还是之前的模型比如glm-5.1 · API Usage Billing这通常说明模型被更高优先级的配置覆盖了。这种情况下建议直接使用--model参数claude --model deepseek-v4-pro[1m]完整写法如下$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key claude --model deepseek-v4-pro[1m]另一个终端可以这样$env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key claude --model glm-5.1这种方式更直观也更适合临时切换模型。五、为什么设置了环境变量却没有生效如果你发现 Claude Code 仍然使用旧模型可以检查下面几个地方。1. 是否被/model覆盖Claude Code 内部可以使用/model来切换模型。如果你之前在 Claude Code 中选择过某个模型它可能会被保存下来下次启动时继续生效。可以在 Claude Code 里输入/model deepseek-v4-pro[1m]或者退出后用启动参数强制指定claude --model deepseek-v4-pro[1m]2. 是否被项目配置覆盖Claude Code 项目目录下可能存在配置文件.claude/settings.json .claude/settings.local.json可以在 PowerShell 中查看Get-Content .\.claude\settings.json -ErrorAction SilentlyContinue Get-Content .\.claude\settings.local.json -ErrorAction SilentlyContinue如果里面有类似配置{ model: glm-5.1 }那么 Claude Code 可能会继续使用这个模型。可以删除这个model配置或者改成你想使用的模型。六、如果使用的是第三方模型使用第三方模型时一般需要配置三个变量$env:ANTHROPIC_BASE_URL 第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 第三方 API Key $env:ANTHROPIC_MODEL 第三方模型名需要注意的是模型名必须是第三方平台支持的模型 ID。例如$env:ANTHROPIC_BASE_URL https://你的中转平台地址 $env:ANTHROPIC_AUTH_TOKEN sk-xxxx $env:ANTHROPIC_MODEL deepseek-v4-pro[1m] claude如果你使用的是某个中转平台提供的模型名例如deepseek-v4-pro[1m]那么ANTHROPIC_BASE_URL也必须填写这个中转平台提供的 Anthropic 兼容接口地址而不是随便填写其他平台的地址。否则可能会出现模型不存在、请求失败或者实际使用的不是你想要的模型。七、做成快捷命令每次手动输入环境变量比较麻烦可以在 PowerShell 里写成函数。例如function cc-deepseek { $env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key claude --model deepseek-v4-pro[1m] } function cc-glm { $env:ANTHROPIC_BASE_URL https://你的第三方接口地址 $env:ANTHROPIC_AUTH_TOKEN 你的API Key claude --model glm-5.1 }之后就可以直接运行cc-deepseek或者cc-glm这样在不同终端中启动不同模型会方便很多。