目录
[一、先说结论:为什么值得把 DeepSeek V4 接入 Claude Code](#一、先说结论:为什么值得把 DeepSeek V4 接入 Claude Code)
[二、安装准备:先把 Claude Code 跑起来](#二、安装准备:先把 Claude Code 跑起来)
[1. 先准备 Node.js 和 Git](#1. 先准备 Node.js 和 Git)
[2. 使用 npm 安装 Claude Code](#2. 使用 npm 安装 Claude Code)
[3. 找到 Claude Code 的配置文件目录](#3. 找到 Claude Code 的配置文件目录)
[三、核心原理:Claude Code 是怎么接入第三方模型的](#三、核心原理:Claude Code 是怎么接入第三方模型的)
[四、最关键的一步:settings.json 怎么写](#四、最关键的一步:settings.json 怎么写)
[1. ANTHROPIC_BASE_URL](#1. ANTHROPIC_BASE_URL)
[2. ANTHROPIC_AUTH_TOKEN](#2. ANTHROPIC_AUTH_TOKEN)
[3. ANTHROPIC_MODEL](#3. ANTHROPIC_MODEL)
[4. alwaysThinkingEnabled](#4. alwaysThinkingEnabled)
[5. effortLevel](#5. effortLevel)
[五、先别急着开 Claude Code:先用 Python 验证接口通不通](#五、先别急着开 Claude Code:先用 Python 验证接口通不通)
[第一步:确认 Node.js、Git、Claude Code 都已安装](#第一步:确认 Node.js、Git、Claude Code 都已安装)
[第二步:确认 settings.json 路径正确](#第二步:确认 settings.json 路径正确)
[第四步:先跑 Python 验证脚本](#第四步:先跑 Python 验证脚本)
[第五步:重启 Claude Code](#第五步:重启 Claude Code)
[1. 配置文件路径写错](#1. 配置文件路径写错)
[2. API Key 填写错误,或者 Key 没权限](#2. API Key 填写错误,或者 Key 没权限)
[3. 模型名不匹配](#3. 模型名不匹配)
[4. 改完配置忘记重启 Claude Code](#4. 改完配置忘记重启 Claude Code)
[5. 不是所有模型都适合同样的思考强度](#5. 不是所有模型都适合同样的思考强度)
[6. Windows 下隐藏文件夹、权限和终端差异也会影响结果](#6. Windows 下隐藏文件夹、权限和终端差异也会影响结果)
摘要
很多人开始用 Claude Code 之后,会很快喜欢上它的工作方式:不是简单地问答,而是直接进项目目录、读代码、改文件、协助调试。可一旦进入真实开发场景,新的问题也会出现:如果我想保留 Claude Code 这套命令行工作流,但底层模型不想只用默认方案,能不能接入 DeepSeek V4?
答案是可以,但要明确一点:这不是 Claude Code 的"默认官方模型切换功能",而是通过 Anthropic 兼容 API 的方式,把 Claude Code 的请求路由到 DeepSeek。
这篇文章就按照 CSDN 读者更熟悉的方式,从安装准备、配置原理、settings.json 写法、Python 接口验证,到最后的踩坑总结,一步一步讲清楚。
一、先说结论:为什么值得把 DeepSeek V4 接入 Claude Code
先不谈参数,也不先上代码,先回答一个更实际的问题:为什么要折腾这件事?
原因很简单,Claude Code 的价值并不只在于"它会回答问题",而在于它是一个面向工程工作的命令行助手。你可以让它进入项目目录,理解代码结构,修改多个文件,协助你完成调试、重构、排查和项目级协作。对于已经习惯 CLI 工作流的开发者来说,这种交互方式本身就很有吸引力。
但很多人不满足于只使用默认模型。有人是出于成本考虑,有人是出于响应风格偏好,也有人只是单纯想把自己更熟悉的模型体系接进既有工具链。在这种情况下,第三方 API 兼容层就成了一种现实可行的方案。
而 DeepSeek 的意义就在这里:它提供了 Anthropic API 兼容接口,也就是说,Claude Code 这类原本面向 Anthropic 接口生态的工具,在完成必要配置之后,可以把请求发往 DeepSeek 的兼容地址,从而走通一条新的调用链路。
换句话说,这件事的本质不是"把 Claude 换成 DeepSeek",而是:
- Claude Code 继续负责命令行交互和工程工作流
- DeepSeek V4 负责模型推理
- 两者之间通过 Anthropic 兼容接口衔接
这个理解非常重要。只有把这个关系理清楚,后面你才不会在配置时把工具层、接口层和模型层混在一起。
二、安装准备:先把 Claude Code 跑起来
这一部分我会尽量按 Windows 用户最常见的实际流程来写,同时保留一定通用性。
1. 先准备 Node.js 和 Git
如果你是在 Windows 环境下操作,建议先确保以下两个基础环境已经装好:
a.Node.js
Node.js 是一个 JavaScript 运行环境,安装它会自动附带 npm(Node 的包管理器,用于下载第三方代码库)。
Windows 和 macOS 通用步骤:
- 访问官网 :打开 Node.js 官方网站:https://nodejs.org/。

-
选择版本 :首页通常会显示两个版本。强烈建议点击下载 LTS (Long Term Support,长期支持版),因为这个版本经过了充分测试,最稳定。
-
运行安装程序:
- Windows :双击下载的
.msi文件。
- Windows :双击下载的

-
- macOS :双击下载的
.pkg文件。
- macOS :双击下载的
-
按步骤安装:一直点击"Next(下一步)",接受许可协议。
- 关键提醒 :在选择安装组件的步骤时,保持默认设置即可。务必确保 "Add to PATH"(添加到环境变量)选项被选中(通常默认已勾选),这允许你在终端中直接运行 Node 命令。
-
验证安装:
-
打开命令行工具(Windows 用户搜索打开
cmd或PowerShell,macOS 用户打开Terminal终端)。 -
输入以下命令检查 Node.js 版本(注意
-v前面有一个空格):node -v -
输入以下命令检查 npm 版本:
npm -v -
如果两行命令都成功返回了版本号(例如
v20.x.x),说明 Node.js 安装成功!
-

b.Git
Git 是目前世界上最先进的分布式版本控制系统,用于管理代码版本。
在 Windows 上安装:
- 访问官网 :打开 Git 官方网站:https://git-scm.com/。

- 下载安装包 :点击页面上的"Download for Windows",下载最新的
64-bit Git for Windows Setup(独立安装程序)。


-
运行安装程序 :双击下载的
.exe文件。 -
选择设置(一路 Next 即可) :Git 的安装过程会弹出十几个配置页面。对于绝大多数用户,强烈建议一路点击"Next"保持默认设置。
- 进阶提示:其中有一步"Choosing the default editor used by Git"会让你选择 Git 的默认编辑器。默认是 Vim,如果你对命令行编辑器不熟悉,可以在下拉菜单中将其修改为 Visual Studio Code 或 Notepad++。
-
验证安装:安装完成后,打开命令行(CMD 或 PowerShell),输入:
git -v如果屏幕显示类似
git version x.x.x.windows.x,说明安装成功。此外,你的鼠标右键菜单中也会多出Git Bash Here(推荐使用的 Git 命令行工具)选项。

2. 使用 npm 安装 Claude Code
这一步很直接:
npm install -g @anthropic-ai/claude-code
安装完成后,用下面这条命令检查是否安装成功:
claude --version

如果能正常输出版本号,说明 Claude Code 已经可用了。
3. 找到 Claude Code 的配置文件目录
这一步是后面接入第三方模型的关键前提。
通常情况下,Claude Code 的配置文件位于:
- macOS / Linux:
~/.claude/settings.json- Windows:
%userprofile%\.claude\settings.json

在 Windows 下,你可以直接在资源管理器地址栏输入:
%userprofile%\.claude
如果 .claude 目录还没有出现,或者里面没有 settings.json,那就手动创建一个。
这里有一个很典型的 Windows 小坑:.claude 很容易因为隐藏文件夹显示问题被忽略。
如果你找不到它,记得先打开"显示隐藏的项目"。
三、核心原理:Claude Code 是怎么接入第三方模型的
这一部分建议认真看,因为后面所有配置其实都围绕这个原理展开。
Claude Code 接入第三方模型,不是通过一个"模型切换菜单"实现的,而是通过环境变量告诉它:
- 请求应该发往哪个接口地址
- 认证 Token 是什么
- 目标模型名是什么
也就是说,Claude Code 并不关心你背后是不是 Anthropic 官方接口,它更关心的是:
你给它的地址,是否能按 Anthropic 兼容格式正确响应。
具体可以参考官方网址:Anthropic API | DeepSeek API Docs
对 DeepSeek 来说,兼容接口地址是:
https://api.deepseek.com/anthropic
所以只要你把 Claude Code 的请求入口改到这个地址,并且提供正确的 Token 和模型名,Claude Code 就能把请求发到 DeepSeek 那边。

整个链路可以这样理解:
Claude Code -> Anthropic 兼容接口地址 -> DeepSeek V4 模型
这里最核心的几个配置项就是:
ANTHROPIC_BASE_URLANTHROPIC_AUTH_TOKENANTHROPIC_MODEL
另外还有一个容易忽略的点:
配置修改后,通常需要重启 Claude Code 才能生效。
这也是很多人明明写对了配置,但仍然感觉"怎么没反应"的原因之一。
四、最关键的一步:settings.json 怎么写
这一段建议你直接收藏,因为这是整篇文章里最实用的部分之一。
下面是一份适合直接写进 settings.json 的示例配置:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
"ANTHROPIC_AUTH_TOKEN": "sk-your-key",
"ANTHROPIC_MODEL": "deepseek-v4-pro"
},
"alwaysThinkingEnabled": true,
"effortLevel": "medium"
}
这几个字段分别是什么意思?
1. ANTHROPIC_BASE_URL
这个字段用于指定 Claude Code 请求要发往哪里。
在这里,它指向的不是 Anthropic 官方接口,而是 DeepSeek 提供的 Anthropic 兼容地址:
https://api.deepseek.com/anthropic
这一项如果写错,后面所有配置都不会生效。
2. ANTHROPIC_AUTH_TOKEN
这个字段就是认证用的 Token。
你需要把它替换成你自己的 DeepSeek API Key,例如:
"ANTHROPIC_AUTH_TOKEN": "sk-xxxxxxxxxxxxxxxx"
这里不要直接照抄示例。真正写文章发布时,也一定要提醒读者替换成自己的 Key,不要把真实密钥提交进仓库或截图暴露出去。
3. ANTHROPIC_MODEL
这个字段用于指定目标模型。
如果你想接 DeepSeek V4 Pro,可以写成:
"ANTHROPIC_MODEL": "deepseek-v4-pro"
如果后面你想尝试别的兼容模型,改的也主要是这一项。
这里需要特别提醒:模型名一定要和接口侧实际支持的名称匹配。
写错模型名,并不一定会报出你期待中的"模型不存在"错误,排查起来反而会更绕。
4. alwaysThinkingEnabled
这是 Claude Code 侧的配置,表示是否默认启用更强的思考模式。
它不是 DeepSeek 专属参数,而是 Claude Code 的行为控制项。一般来说,开启它更适合复杂代码理解、推理和多步任务。
5. effortLevel
这个字段同样属于 Claude Code 侧的思考强度配置。
常见可选值一般包括:
lowmediumhigh
在实际使用里,我更建议从 medium 开始,不要一上来就拉满。原因很现实:并不是所有模型在兼容层下都对高强度思考配置表现一致。
所以更稳妥的策略是:
- 第一次接入先用
medium - 接口确认稳定后再尝试更高强度
- 如果遇到异常,再回退到较稳的档位
五、先别急着开 Claude Code:先用 Python 验证接口通不通
这一段非常重要,也是很多人容易跳过的一步。
为什么我建议先用 Python 验证?
因为这样可以把问题拆开:
- 如果 Python 调用都不通,问题大概率在接口、Key 或模型名
- 如果 Python 能通,但 Claude Code 不通,问题大概率在配置文件、路径或重启流程
也就是说,这一步是接口层确认,不是配置 Claude Code 本身。
下面这段代码可以直接用于验证 DeepSeek 的 Anthropic 兼容接口:
import anthropic
client = anthropic.Anthropic(
base_url="https://api.deepseek.com/anthropic",
api_key="sk-your-key"
)
message = client.messages.create(
model="deepseek-v4-pro",
max_tokens=1000,
system="You are a helpful assistant.",
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "请写一个 Python 快速排序示例"}
]
}
]
)
print(message.content)
这段代码的作用是什么?
这段代码的作用不是为了"配置 Claude Code",而是为了证明:
- DeepSeek 的 Anthropic 兼容接口确实可以访问
- 你的 API Key 是有效的
deepseek-v4-pro这个模型名至少在接口层可以被正确调用
如果这段代码能成功返回内容,你就已经完成了最核心的一步:
先确认接口层可用,再继续排查 Claude Code 的工具层配置。
这个顺序非常重要。
否则一旦 Claude Code 里报错,你很难判断究竟是 CLI 配置有问题,还是接口本身就没通。
六、实战配置流程:建议你按这个顺序来
为了减少排错时间,我建议你按下面这个顺序操作:
第一步:确认 Node.js、Git、Claude Code 都已安装
先执行:
node --version
npm --version
git --version
claude --version
第二步:确认 settings.json 路径正确
Windows 下优先检查:
%userprofile%\.claude\settings.json
不是 VS Code 工作区里的配置,不是项目根目录里的配置,也不是你随手新建到别的磁盘里的配置。
一定要确认是 当前用户的 .claude/settings.json。
第三步:写入配置
把下面这段配置写进去:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
"ANTHROPIC_AUTH_TOKEN": "sk-your-key",
"ANTHROPIC_MODEL": "deepseek-v4-pro"
},
"alwaysThinkingEnabled": true,
"effortLevel": "medium"
}
第四步:先跑 Python 验证脚本
确认接口层可用,再去测试 Claude Code。
第五步:重启 Claude Code
这一点不要省。
很多时候你明明已经改对了,但因为没有彻底退出再重新启动,结果一直在用旧配置。

七、真实踩坑总结:这些地方最容易出问题
这一部分我尽量按"真实踩坑复盘"的方式来写,而不是只列参数说明。
1. 配置文件路径写错
这是最常见的问题之一。
很多人以为自己改了 settings.json,但实际上改到的是:
- 错误目录下的新文件
- 项目目录里的同名文件
- 某个编辑器插件的配置文件
- 甚至是另一个用户目录下的
.claude
所以第一件事不是怀疑模型,而是先确认:
你改的是不是 %userprofile%\.claude\settings.json。
2. API Key 填写错误,或者 Key 没权限
这类问题的表现通常是:
- Claude Code 能启动
- 但真正请求模型时报认证错误
- 或者 Python 能跑别的接口,这里却报错
最稳妥的做法,是先把 Key 单独拿去跑 Python 验证脚本。
如果 Python 都不通,就别继续折腾 Claude Code 了,先把 Key 和接口问题解决掉。
3. 模型名不匹配
模型名写错,是另一类非常高频的问题。
很多时候大家会习惯性猜一个名字,或者从别的文档里复制一个类似的模型名,但兼容接口并不一定按你的想法解释。
所以最稳妥的方法是:
- 先用文档里明确给出的模型名
- 不要凭印象自己扩展命名
- 配通之后再做进一步尝试
4. 改完配置忘记重启 Claude Code
这个问题听起来很基础,但真的非常常见。
如果你在改完 settings.json 之后,直接在原来的 Claude Code 会话里继续试,结果很可能还是旧配置。
所以务必记住:
- 修改配置后先退出 Claude Code
- 再重新启动
- 然后再测试
5. 不是所有模型都适合同样的思考强度
这一点一定要有心理预期。
alwaysThinkingEnabled 和 effortLevel 虽然很有用,但它们是 Claude Code 侧的行为控制参数。不同模型在兼容层下对这些选项的响应,未必完全一致。
因此在第一次接入时,建议使用:
"alwaysThinkingEnabled": true,
"effortLevel": "medium"
这是一个相对稳妥的起点。
6. Windows 下隐藏文件夹、权限和终端差异也会影响结果
Windows 环境里的问题往往不是一个,而是多个小问题叠加:
.claude目录默认不明显- 权限不足导致文件写入失败
- PowerShell 和 CMD 的命令习惯不同
- 某些环境变量写法在两个终端里表现不一致
所以在 Windows 下,我更建议:
- 优先使用 PowerShell
- 以当前用户目录为准
- 必要时用管理员权限运行
- 配置后重新打开终端再测试
创作不易,请各地看官老爷,点个赞和收藏!!!