保姆级教程:将 Claude Code 的底层模型替换为 DeepSeek
随着AI大模型技术的飞速发展,越来越多的开发者希望在强大的编程助手Claude Code中使用性价比更高的国产模型。由于DeepSeek原生支持Anthropic API格式,我们无需任何中间件或代理,只需简单配置即可实现无缝接入。本文将为你提供一份超详细的保姆级教程,助你轻松完成配置。
一、 前期准备工作
在开始配置之前,请确保你已经完成了以下两项基础准备:
- 安装Claude Code:确保你的电脑已安装Node.js 18+版本(Node.js — 下载 Node.js®)。
随后在终端执行
安装完成之后,输入npm install -g @anthropic-ai/claude-codeclaude --version显示版本号即代表安装成功。

- 获取DeepSeek API Key:前往DeepSeek开放平台注册账号并充值少量余额(如10元即可满足长期测试)。进入控制台点击“创建API key”,复制生成的密钥备用。格式:
sk-xxx

二、 核心配置方法(记得替换一下api key)
方法1:修改配置文件永久生效(强烈推荐)
windows版
setx 是 Windows 自带的命令,可以将环境变量写入注册表,使其对所有新打开的终端窗口永久生效。
请在你的 PowerShell 中复制并执行以下代码块:
# 将变量永久写入用户环境变量
setx ANTHROPIC_BASE_URL "https://api.deepseek.com/anthropic"
setx ANTHROPIC_AUTH_TOKEN "<你的 DeepSeek API Key>"
setx ANTHROPIC_MODEL "deepseek-v4-pro[1m]"
setx ANTHROPIC_DEFAULT_OPUS_MODEL "deepseek-v4-pro[1m]"
setx ANTHROPIC_DEFAULT_SONNET_MODEL "deepseek-v4-pro[1m]"
setx ANTHROPIC_DEFAULT_HAIKU_MODEL "deepseek-v4-flash"
setx CLAUDE_CODE_SUBAGENT_MODEL "deepseek-v4-flash"
setx CLAUDE_CODE_EFFORT_LEVEL "max"
注意:
- 执行成功后会提示“成功: 指定的值已经被保存”。
- 重要:
setx修改后,当前已经打开的 PowerShell 窗口不会立即生效。你必须关闭当前窗口,重新打开一个新的 PowerShell,配置才会被读取。 - 请将
<你的 DeepSeek API Key>替换为你真实的密钥。
方法2:修改配置文件(一次性的)
Linux / Mac 用户,直接在终端中执行:
export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic
export ANTHROPIC_AUTH_TOKEN=<你的 DeepSeek API Key>
export ANTHROPIC_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_OPUS_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_SONNET_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-v4-flash
export CLAUDE_CODE_SUBAGENT_MODEL=deepseek-v4-flash
export CLAUDE_CODE_EFFORT_LEVEL=max
Windows 用户,在 Powershell 中执行(还要安装git:Git - Install for Windows):

$env:ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic"
$env:ANTHROPIC_AUTH_TOKEN="<你的 DeepSeek API Key>"
$env:ANTHROPIC_MODEL="deepseek-v4-pro[1m]"
$env:ANTHROPIC_DEFAULT_OPUS_MODEL="deepseek-v4-pro[1m]"
$env:ANTHROPIC_DEFAULT_SONNET_MODEL="deepseek-v4-pro[1m]"
$env:ANTHROPIC_DEFAULT_HAIKU_MODEL="deepseek-v4-flash"
$env:CLAUDE_CODE_SUBAGENT_MODEL="deepseek-v4-flash"
$env:CLAUDE_CODE_EFFORT_LEVEL="max"
各变量作用解析
ANTHROPIC_BASE_URL:指向 DeepSeek 提供的 Anthropic 格式 API 端点,这是实现协议兼容的关键。ANTHROPIC_AUTH_TOKEN:你的 DeepSeek API Key,用于身份验证。ANTHROPIC_MODEL、ANTHROPIC_DEFAULT_OPUS_MODEL、ANTHROPIC_DEFAULT_SONNET_MODEL:这三个变量都设为deepseek-v4-pro[1m],表示主 Agent(负责核心推理和代码生成)使用 DeepSeek V4-Pro 模型,并开启 1M 上下文窗口,确保长项目理解能力。ANTHROPIC_DEFAULT_HAIKU_MODEL和CLAUDE_CODE_SUBAGENT_MODEL:设为deepseek-v4-flash,用于子 Agent 或轻量级任务(如文件读取、简单查询),节省成本。CLAUDE_CODE_EFFORT_LEVEL="max":强制启用最高努力模式,提升复杂任务的完成质量。
配置完成后,执行(其中 /path/to/my-project 替换为你的项目路径):
cd /path/to/my-project
claude
方法3:图形化工具CC Switch(小白首选)
对于不熟悉命令行操作的开发者,可以下载 CC Switch 图形化客户端(macOS可通过 brew install --cask cc-switch 安装,Windows直接下载.msi安装包)。打开软件后,点点鼠标选择对应的模型和填入API Key即可完成切换,极其丝滑。
安装cc switch:ccSwitch 是一个跨平台桌面工具,项目地址是:
https://github.com/farion1231/cc-switch
它主要解决几个问题:
- 集中管理 Claude Code、Codex、OpenCode、Gemini CLI 等工具的 provider。
- 支持一键切换模型配置。
- 提供 MCP、Prompts、Skills 等统一管理入口。
- 支持系统托盘快速切换。
- 可以查看部分 provider 的用量和成本信息。
下载好后直接打开就行:


选中deepseek之后,往下翻下面的页面就会显示这样,把api填入,并且修改一下api格式

点开设置--路由,打开路由

启用claude,日志记录可启用可不启用,使用上没什么区别

三、安装后的使用
第一次运行会出现的界面
成功进来之后,第一次会出现如图所示的页面

这只是界面显示风格(主题)的选择,不影响 AI 的功能或模型调用。你可以根据自己终端的背景颜色和个人喜好来选:
推荐选择
- 2. Dark mode (深色模式):这是最经典、最常用的选择。如果你平时习惯用黑色背景的终端(如 VS Code 默认主题、PowerShell 默认黑底),选这个最护眼,代码高亮也最清晰。目前截图里已经默认选中了这个(有个紫色对勾)。
其他选项说明
- 1. Auto:让软件自动检测你的系统是深色还是浅色。如果你不确定,选这个最省心。
- 3. Light mode:适合白底黑字的终端环境。
- 4/5. Colorblind-friendly:专为色弱/色盲用户设计,调整了红绿对比度。如果你看代码觉得颜色分辨吃力,可以试试这个。
- 6/7. ANSI colors only:极简模式,只使用终端最基础的几种颜色。如果你觉得上面的颜色太花哨或者终端渲染有问题,选这个最稳妥。

这张图片是 Claude Code 启动时的安全提示界面,核心信息是提醒用户注意 AI 生成内容的风险和使用规范。
关键内容解析
- 版本信息:顶部显示
Welcome to Claude Code v2.1.145,表明你当前使用的是 Claude Code 的 2.1.145 版本。 - 安全警告:
- 第一条:“Claude can make mistakes”——强调 AI 会犯错,尤其是执行代码时,必须人工复核结果。
- 第二条:“Due to prompt injection risks...”——警告“提示词注入”风险,建议只在可信代码环境中使用,避免恶意输入诱导 AI 执行危险操作。
- 操作指引:底部蓝色文字
Press Enter to continue...提示你按回车键进入主交互界面。
下一步操作
直接按下键盘上的 Enter(回车)键,即可跳过此安全提示,进入 Claude Code 的主对话界面,开始输入你的编程需求或问题。

你当前遇到的这个界面是 Claude Code 的安全信任确认,它默认检测到你位于 C:\Users\(用户主目录),并询问你是否信任该文件夹。(我是已经修改过目录了,所以在e盘)
如何切换到 E 盘工作
-
退出当前会话
按Esc键或选择2. No, exit退出当前安全确认流程。 -
手动切换目录到 E 盘
在终端中输入以下命令:cd /d E:\你的项目路径例如,如果你想在
E:\my-project下工作,就输入cd /d E:\my-project⚠️ 注意:Windows PowerShell 中切换盘符必须加
/d参数,否则不会生效。 -
重新启动 Claude Code
进入目标目录后,再次输入claude此时它会检测到你在
E:\...目录下,弹出新的安全确认提示,你可以放心选择1. Yes, I trust this folder继续。
为什么不能直接在 C 盘改?
- Claude Code 的设计原则是“最小权限”,它只允许在你明确信任的目录下读写文件。
- 用户主目录(如
C:\Users\用户名)通常包含敏感配置文件、浏览器缓存等,AI 若误操作可能带来风险。 - 因此,系统强制要求你主动选择一个“安全工作区”。
建议操作
- 在 E 盘创建一个专用项目文件夹,例如
E:\claude_projects,以后所有 AI 生成的代码都放在这里。 - 每次启动前先用
cd /d E:\claude_projects切换过去,再运行claude。
这样既能保证安全,又能避免污染系统盘。

这张截图显示你已经完美配置并成功启动了 Claude Code。一切准备就绪,你现在可以开始让 AI 帮你写代码了。
关键信息解读
- 模型已切换成功:左下角显示
deepseek-v4-pro。这说明你之前设置的环境变量生效了,现在 Claude Code 的“大脑”已经换成了 DeepSeek V4-Pro,而不是昂贵的原版 Claude。 - 工作目录正确:路径显示为
E:\desktop\claude项目。这意味着 AI 接下来生成的所有文件、修改的所有代码,都会保存在你的 E 盘这个文件夹里,不会弄乱 C 盘。 - 权限已授权:顶部的
Security guide和Yes, I trust this folder说明你已经通过了安全检查,AI 获得了在这个文件夹里读写文件的权限。 - 努力程度:右下角的
high表示当前处于高努力模式(对应你设置的max),AI 会尽力给出最好的结果。
接下来怎么玩?
在底部的 > 光标处,你可以直接输入自然语言指令。以下是一些测试指令供你尝试:
1. 让它创建一个简单网页
"帮我用 HTML 和 CSS 写一个个人简介网页,要有头像、名字和一段自我介绍,风格要现代简约。"
2. 让它写个 Python 小工具
"写一个 Python 脚本,用来批量重命名当前文件夹里的图片文件,按日期排序命名。"
3. 解释代码
如果你把现有的代码文件拖进终端,或者告诉它文件名:
"阅读一下 index.html,帮我优化一下它的移动端适配。"
现在的状态非常完美,直接开始你的第一个指令吧!
Claude Code 的内置命令列表
简单来说,这些是你在与 AI 对话时,用来控制程序行为、管理项目文件和调整设置的“控制台指令”。它们不是发给 AI 让它回答问题的,而是直接告诉 Claude Code 这个软件该做什么。

1. 核心控制类(最重要)
/clear:清空当前对话上下文。当你觉得现在的对话太乱、AI 开始胡言乱语,或者你想开启一个全新的任务但不想退出程序时使用。它会保留之前的记录在磁盘上(可以通过/resume找回),但当前窗口会变干净。/compact:压缩上下文。当你的对话非常长,导致 Token 消耗过快或 AI 变笨时,用这个命令让 AI 把前面的长篇大论总结成一段简短的摘要,从而腾出空间继续聊。/doctor:系统体检。用来检查你的安装环境是否正常,API Key 是否有效,网络连接是否有问题。如果你遇到报错(比如刚才的更新失败),先跑一下这个看看。
2. 文件与项目管理类
/add-dir [路径]:添加工作目录。默认情况下,Claude Code 只能操作你启动它时所在的那个文件夹。如果你想让它帮你修改另一个文件夹里的代码,必须用这个命令把那个文件夹“授权”给它。/cd [路径]:切换目录。类似于终端里的cd命令,用来改变当前的工作目录。/diff:查看差异。这是程序员的神器。它能显示 AI 到底对你的代码做了哪些修改(对比修改前和修改后)。在确认 AI 的修改之前,建议先看一眼这个。
3. 高级功能类
/agents:管理智能体。你可以配置不同的“角色”或“子代理”,比如专门负责写测试的 Agent,或者专门负责写文档的 Agent。/branch:创建分支。这就像 Git 的分支一样。如果你觉得现在的对话方向可能走偏了,可以创建一个分支尝试新想法。如果失败了,可以随时切回主分支,不会污染主线进度。/config:打开设置。可以在这里调整一些偏好,比如是否允许 AI 自动执行某些危险命令,或者调整主题颜色等。
💡 使用小贴士
你不需要背诵这些命令。
- 在输入框里输入
/,就会弹出这个菜单。 - 继续输入字母(比如输入
/c),菜单会自动过滤,你只需要按上下键选择并回车即可。
退出 Claude Code
方法一:使用内置命令(推荐)
在 Claude Code 的对话界面中,直接输入以下命令并回车即可安全退出:
/exit
这是官方提供的标准退出指令,会优雅地结束当前会话并返回到系统终端。
方法二:快捷键退出
如果你不想打字,可以使用键盘快捷键快速退出:
- Windows / Linux:按
Ctrl + C - macOS:按
Cmd + C
这个操作会向程序发送中断信号,Claude Code 会立即终止运行并返回终端提示符。
方法三:关闭终端窗口
最简单粗暴的方式就是直接点击终端窗口的“X”按钮关闭整个窗口。Claude Code 会自动保存你的会话历史到本地磁盘,下次进入同一个项目目录时,可以通过 claude --resume 或 /resume 命令恢复之前的对话上下文。
补充说明
无论你用哪种方式退出,Claude Code 都不会丢失你的聊天记录。它会将所有对话内容持久化存储在本地文件系统中(通常位于项目根目录下的 .claude 文件夹内),确保你可以随时回溯和继续工作。
把.claude文件夹改到e盘
因为.claude文件是默认生成到C:\user\用户名 文件夹里的,会占c盘内存,拖慢系统运行
要将 .claude 文件夹从默认位置迁移到D盘或者 E 盘,不能直接移动文件夹,因为 Claude Code 会硬编码读取用户目录下的配置。正确做法是通过设置环境变量 CLAUDE_CONFIG_DIR 来重定向配置路径。
第一步:创建目标目录
在 E 盘新建一个文件夹,例如:
New-Item -Path "E:\ClaudeCode" -ItemType Directory -Force

第二步:复制原有配置(可选但推荐)
如果你之前已经使用过 Claude Code 并保存了项目历史、API Key 等配置,建议先备份原文件夹:
Copy-Item -Path "$env:USERPROFILE\.claude" -Destination "E:\ClaudeCode" -Recurse -Force

⚠️ 注意:不要删除 C 盘的
.claude.json文件!它存储了你的首次引导状态和项目启动计数,删除后会重新触发初始化流程。
第三步:设置环境变量(关键步骤)
你需要将 CLAUDE_CONFIG_DIR 设置为新路径。推荐使用 setx 命令使其永久生效:
setx CLAUDE_CONFIG_DIR "E:\ClaudeCode"

第四步:重启终端并验证
关闭当前所有 PowerShell 窗口,重新打开一个新窗口,然后运行:
echo $env:CLAUDE_CONFIG_DIR

如果输出 E:\ClaudeCode,说明环境变量已生效。接着运行 claude 启动程序,它会在新目录下读写配置文件。
补充说明
- 为什么不能直接移动? Claude Code 在启动时会优先读取
%USERPROFILE%\.claude,即使你设置了环境变量,部分内部逻辑仍可能回退到默认路径。通过setx设置环境变量是官方推荐的唯一可靠方式。 - npm 缓存问题:你之前遇到的
ENOSPC错误是因为 npm 全局安装包时写入 C 盘失败。迁移.claude文件夹本身不会解决磁盘空间问题,但你可以通过npm config set cache "E:\npm-cache"将 npm 缓存也迁移到 E 盘,避免未来再次出现空间不足。 - WSL 用户注意:如果你在 WSL 中使用 Claude Code,需在 WSL 的
.bashrc或.zshrc中添加export CLAUDE_CONFIG_DIR="/mnt/e/ClaudeCode",而不是在 Windows PowerShell 中设置。
完成以上步骤后,Claude Code 的所有会话记录、项目配置和 API Key 都会存储在 E 盘,C 盘空间压力将得到缓解。
c盘原来的文件建议先不要删除,保留一段时间作为“安全备份”是最稳妥的做法。
虽然你已经通过设置环境变量 CLAUDE_CONFIG_DIR 将配置指向了 E 盘,但直接删除 C 盘的旧文件仍存在一定风险。以下是详细的分析和操作建议:
为什么不能立即删除?
- 程序缓存与回退机制:某些软件在启动时,如果无法读取到新的配置路径(例如环境变量未生效、路径拼写错误),可能会尝试回退读取默认路径(C 盘)。如果此时 C 盘文件已被删除,可能导致程序报错或重置为初始状态。
- 隐藏文件遗漏:
.claude文件夹通常包含会话历史、插件配置等,但用户目录下可能还存在.claude.json或.claude/settings.json等分散的配置文件。如果只迁移了文件夹而漏掉了这些散落的文件,可能会导致部分功能失效。 - 验证新环境稳定性:你需要确认在新路径下,Claude Code 的所有功能(如登录状态、历史记录加载、插件调用)都能正常运行。
推荐的安全操作流程
为了确保万无一失,请按照以下步骤操作:
第一阶段:观察期(建议 3-7 天)
- 重命名而非删除:将 C 盘原来的
.claude文件夹重命名为.claude_backup。这样做既能防止 Claude Code 误读旧配置,又能随时恢复数据。Rename-Item -Path "$env:USERPROFILE\.claude" -NewName ".claude_backup" - 全面测试:在这几天内,正常使用 Claude Code。重点检查:
- 是否能正常启动并识别 API Key。
- 之前的对话历史是否能在 E 盘的新位置正确加载。
- 安装的插件或自定义技能是否依然有效。
第二阶段:清理期
当你确认 E 盘的新配置完全稳定,且不再需要旧数据后,再执行删除操作:
Remove-Item -Path "$env:USERPROFILE\.claude_backup" -Recurse -Force

特别提醒
在执行任何删除操作前,请务必再次确认你的 E 盘新目录(如 E:\ClaudeCode)中已经包含了完整的 sessions、plugins、skills 等子文件夹。如果新目录是空的或者不完整的,千万不要删除 C 盘的原文件,否则会导致所有历史数据和配置丢失。
四、可能出现的问题详解
问题1:
上面讲的内容都是终端命令行显示,那要是想用可视化的如下页面怎么办

这个界面是 Claude 官方桌面客户端,它默认不支持直接调用 DeepSeek API。但你可以通过特定配置实现“用 Claude 的界面 + DeepSeek 的模型”这一组合。
为什么默认不行?
- 封闭生态:Claude 桌面版是为 Anthropic 自家模型(如 Sonnet、Opus)设计的,其内部 API 调用逻辑是硬编码的,没有提供“更换模型提供商”的官方选项。
- 协议差异:虽然 DeepSeek 提供了兼容 Anthropic 格式的 API,但 Claude 桌面版并未内置对第三方端点的适配层。
如何实现“Claude 界面 + DeepSeek 模型”?
你需要借助一个“中间人”工具来拦截并转发请求。目前最成熟、最简单的方案是使用 CC Switch。
1. 下载 CC Switch
这是一个开源小工具,专门用于管理 Claude Code/Claude Desktop 的 API 配置。
- 前往 GitHub 搜索
cc-switch或farion1231/cc-switch下载对应系统的安装包(Windows 用 .msi,Mac 用 .dmg)。
2. 配置 DeepSeek 提供商
打开 CC Switch,在界面中找到“Add Provider”或类似按钮,填入以下信息:
- Name: DeepSeek (自定义)
- Base URL:
https://api.deepseek.com/v1(或你使用的代理地址) - API Key: 你的 DeepSeek API Key
- Model Name:
deepseek-chat或deepseek-reasoner
3. 启动 Claude 桌面版
配置完成后,通过 CC Switch 启动 Claude 桌面版。此时,你在界面上看到的所有对话,实际上都是由 DeepSeek 模型在后台处理的。
注意事项
- 功能限制:虽然能聊天,但 Claude 桌面版的一些高级功能(如 Artifacts 预览、Cowork 模式)可能因模型能力差异而无法完美运行。
- 稳定性:这种“劫持”方式依赖于第三方工具,如果 Claude 更新或 DeepSeek API 变动,可能需要重新配置。
- 替代方案:如果你主要目的是写代码,建议继续使用你之前配置好的 Claude Code (终端版),它对 DeepSeek 的支持更原生、更稳定,且完全免费(只需付 DeepSeek 的 API 费)。
问题2:(软件混乱)
测试了一下发现,为什么好像不会自动在桌面上生成文件

这主要是因为你当前使用的“Claude 桌面版客户端”和之前提到的“Claude Code 终端工具”是两个完全不同的软件,它们的能力机制不同。
简单来说:现在的这个界面(Xenia/Claude Desktop)只是一个“聊天窗口”,它没有权限直接操作你的电脑文件系统。
以下是详细原因分析和解决方案:
为什么不能自动创建?
- 安全沙箱机制
- 你截图中的软件(看起来是 Xenia 或 Claude 官方桌面版)被设计为一个安全的对话环境。为了防止 AI 误删文件或植入病毒,它默认处于“沙箱”中,只能生成文本给你看,不能在你的硬盘上执行
write file(写入文件)的操作。
- 你截图中的软件(看起来是 Xenia 或 Claude 官方桌面版)被设计为一个安全的对话环境。为了防止 AI 误删文件或植入病毒,它默认处于“沙箱”中,只能生成文本给你看,不能在你的硬盘上执行
- 功能限制
- 注意看你截图底部的那个提示条:“Upgrade to let Claude edit files, run commands...”(升级以允许 Claude 编辑文件、运行命令...)。这说明你当前的免费版或基础版模式,只支持“对话”,不支持“代理操作”。
- 模型能力的区别
- 虽然 DeepSeek V4 很强,但在这个客户端里,它只是作为一个“大脑”在回答问题。真正能帮你“动手”写文件的,是之前那个黑底白字的命令行工具(Claude Code CLI)。
怎么解决?
你有两个选择,取决于你想用什么方式工作:
方案 A:继续使用这个好看的图形界面(手动复制)
如果你更喜欢这个有按钮、有预览的界面:
- 让 AI 生成代码(就像你现在做的这样)。
- 点击代码块右上角的 Copy 按钮。
- 自己打开记事本或 VS Code,粘贴进去,保存为
.py文件。 - 注:有些第三方客户端(如 Chatbox、Cherry Studio)如果配置了正确的 API Key,可能支持简单的文件保存功能,但通常不如命令行强大。
方案 B:使用真正的“全自动”工具(推荐)
如果你想实现“我说一句话,它自动帮我建好文件并运行”,你需要回到我们最开始讨论的那个工具——Claude Code (CLI)。
- 关闭现在的这个图形界面窗口。
- 打开你的 CMD 或 PowerShell(黑色窗口)。
- 输入命令进入 E 盘目录:
cd /d E:\desktop\claude项目
- 启动 Claude Code:
claude - 在那个黑底白字的界面里输入同样的指令:“给我创建一个 hello world 的 py 代码”。
- 奇迹就会发生:它会直接在 E 盘生成文件,甚至可以直接帮你运行它,不需要你手动复制粘贴。
总结: 刚才那个漂亮的界面是用来“聊天的”,那个黑底白字的命令行才是用来“干活的”。
如果你想在图形界面中实现“自动创建文件”
目前官方 Claude Desktop 不支持此功能,但你可以通过以下方式间接实现:
使用第三方客户端 + 自定义插件
部分第三方客户端(如 Chatbox、Cherry Studio)支持“代码块一键保存”功能,虽然不是全自动,但可以一键复制并保存到指定目录。
编写脚本桥接
你可以写一个简单的 Python 或 Node.js 脚本,监听剪贴板或接收 API 请求,当 Claude Desktop 输出代码时,自动将其保存为文件。但这需要一定的编程基础。
总结
| 工具类型 | 是否能自动创建文件 | 原因 |
|---|---|---|
| Claude Code CLI | ✅ 是 | 有文件系统权限 + 工具调用能力 |
| Claude Desktop | ❌ 否 | 沙箱环境,仅用于对话展示 |
建议你继续使用 Claude Code CLI 来获得完整的自动化体验。如果你更喜欢图形界面,可以考虑搭配 VS Code + Terminal 插件,这样既能享受可视化编辑,又能保留命令行的高效操作。
问题3:

问题3:

从截图来看,你正在使用 Claude Code 命令行工具,当前遇到的核心问题是 API 认证失败(401 Authentication Fails),提示你的 API Key ****255 无效。这通常意味着你配置的密钥已过期、被撤销、或输入错误,导致程序无法连接到后端服务。
一、问题定位:为什么会出现 401 错误?
- API Key 无效:这是最直接的原因。可能是你复制粘贴时多了空格、少了一位字符,或者该 Key 已被平台封禁/重置。
- 环境变量未正确设置:如果你是通过环境变量(如
ANTHROPIC_API_KEY)配置密钥,可能该变量未被终端识别,或被其他配置覆盖。 - 使用了错误的 Base URL:如果你接入的是第三方中转服务(如 DeepSeek、TokenFty),但 Base URL 仍指向 Anthropic 官方地址,也会导致认证失败。
- 账户权限问题:部分中转服务商要求用户完成实名认证或充值后才能调用 API,若未完成,即使 Key 正确也会返回 401。
二、解决方案:分步排查与修复
第一步:验证并更新 API Key
- 登录你使用的 API 服务商控制台(如 Anthropic、DeepSeek、TokenFty 等)。
- 找到“API Keys”或“令牌管理”页面,确认当前 Key 的状态是否为“有效”。
- 如果 Key 已失效,点击“重新生成”或“创建新 Key”,并复制完整字符串(注意不要包含前后空格)。
- 在终端中运行以下命令,手动设置新 Key:
setx ANTHROPIC_API_KEY "你的新API_Key"⚠️ 注意:
setx是 Windows 永久设置环境变量的命令,执行后需重启终端才能生效。
第二步:检查 Base URL 是否正确
如果你使用的是第三方中转服务(如 DeepSeek V4),必须确保 Base URL 与服务商提供的一致。例如:
- DeepSeek V4 的 Base URL 应为:
https://api.deepseek.com/anthropic - TokenFty 的 Base URL 应为:
https://api.tokenfty.net
你可以在终端中运行以下命令查看当前配置:
echo $ANTHROPIC_BASE_URL
如果输出为空或指向错误地址,请重新设置:
setx ANTHROPIC_BASE_URL "正确的Base_URL"
第三步:清除旧配置并重新启动
有时旧的缓存或配置文件会干扰新设置。建议:
- 删除 C 盘用户目录下的
.claude文件夹(或重命名为.claude_backup作为备份)。 - 重启终端,再次运行
claude命令,系统会引导你重新登录或输入新 Key。
第四步:测试连接是否成功
在终端中输入一个简单指令,例如:
你好,请回复“连接成功”
如果 Claude Code 正常响应,说明认证问题已解决;如果仍报 401,请重复上述步骤,重点检查 Key 和 Base URL 是否完全匹配。
三、进阶建议:避免未来再次出现 401 错误
- 使用环境变量管理器:推荐使用
dotenv或direnv工具,将 API Key 和 Base URL 写入项目根目录的.env文件,避免每次手动设置。 - 定期轮换 Key:部分服务商支持自动轮换 Key,开启后可降低因 Key 泄露导致的封禁风险。
- 监控 API 用量:登录服务商控制台,查看 API 调用次数和余额,避免因欠费或超量导致服务中断。
问题4:
如果按问题3修改了还是显示错误,怎么办

仔细看报错提醒,尾部是255,但是实际上,我已经修改成了尾部为17c的,再看上面大的红色框

这就说明:
你遇到的 401 错误,根本原因不是 API Key 无效,而是认证冲突——你的环境中同时设置了 ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY 两个环境变量,导致 Claude Code 无法确定使用哪一个进行身份验证,从而触发认证失败。
这是非常典型的配置冲突问题,尤其在从官方 Anthropic 切换到第三方中转服务(如 DeepSeek、TokenFty)时容易发生。以下是具体解决方案:
第一步:清除冲突的环境变量
你需要选择其中一种凭据,并清除另一种。推荐做法是保留 ANTHROPIC_API_KEY,清除 ANTHROPIC_AUTH_TOKEN。
在 PowerShell 中执行以下命令:
# 清除 ANTHROPIC_AUTH_TOKEN
[System.Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", $null, "User")
# 确认 ANTHROPIC_API_KEY 已正确设置(替换为你的实际 Key)
[System.Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", "sk-你的完整API_Key", "User")
⚠️ 注意:
[System.Environment]::SetEnvironmentVariable(..., "User")是永久删除用户级环境变量,比setx更可靠。执行后需重启终端或重新打开 PowerShell 才能生效。
第二步:验证 Base URL 是否正确
如果你使用的是 DeepSeek V4-Pro,必须确保 ANTHROPIC_BASE_URL 设置为正确的中转地址:
[System.Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://api.deepseek.com/anthropic", "User")
第三步:重启终端并测试
关闭当前所有 PowerShell 窗口,重新打开一个新的终端,然后运行:
claude --version
确认版本正常后,再输入:
你好,请回复“连接成功”
正常情况下,3-5秒内应收到回复。
为什么会出现这个冲突?
- 你可能之前通过
claude /login登录过官方 Anthropic 账户,系统自动保存了ANTHROPIC_AUTH_TOKEN。 - 后来你又手动设置了
ANTHROPIC_API_KEY用于接入 DeepSeek,但未清除旧的 Token。 - Claude Code 启动时会优先检查
ANTHROPIC_AUTH_TOKEN,如果它存在且无效(比如指向已注销的官方账户),就会直接返回 401,而不会尝试使用ANTHROPIC_API_KEY。
额外提醒
- 不要同时使用
claude /login和环境变量配置。如果你决定用环境变量方式接入第三方服务,就不要再执行/login。 - 如果你未来想切换回官方 Anthropic,只需删除
ANTHROPIC_API_KEY和ANTHROPIC_BASE_URL,然后重新执行claude /login即可。
完成以上步骤后,你的 Claude Code 应该就能正常连接并响应了。

五、 进阶与避坑指南
在实际使用中,为了获得更流畅的体验,你还需要注意以下几个细节:
- 跳过官方登录限制:如果不打算注册Anthropic账号,可以在
~/.claude.json文件中加入"hasCompletedOnboarding": true,重启终端后即可免登录使用第三方模型。 - 网络代理配置:若遇到网络无法连接的问题,需在
settings.json的env节点下补充本地代理地址,例如"HTTP_PROXY": "http:/xxx.x.x.x:xxxx"和"HTTPS_PROXY": "http://xxx.x.x.x:xxxx"。 - Base URL格式警告:配置接口地址时,务必使用
https://api.deepseek.com/anthropic,千万不要在末尾加上/v1,否则会导致请求返回404错误。 - 功能边界认知:虽然DeepSeek V4在代码补全和逻辑推理上表现优异,但目前不支持图片输入。如果你的工作流高度依赖上传UI设计稿或日志截图进行分析,建议保留官方Claude作为备用。
完成以上配置后,你可以在Claude Code中输入 /status 确认当前运行的模型状态。祝你在新组合的开发工作流中效率翻倍!

核心状态解读
- Version:
2.1.170- 这是你当前安装的 Claude Code 客户端版本号。
- Session name:
Test session connection- 当前对话会话的名称。
- Model:
deepseek-v4-pro[1m]- 关键点:这确认了你当前实际调用的模型是 DeepSeek V4 Pro。这说明你的 Base URL 配置正确,成功将请求转发到了 DeepSeek 的接口,而不是 Anthropic 官方。
- Auth token:
none- 表示你没有使用官方的 OAuth 登录令牌(这是正常的,因为你用的是 API Key 模式)。
- API key:
ANTHROPIC_API_KEY- 表示系统正在读取名为
ANTHROPIC_API_KEY的环境变量作为身份凭证。之前报错是因为这个变量没设置好或冲突,现在它已经被正确识别了。
- 表示系统正在读取名为
- Anthropic base URL:
https://api.deepseek.com/anthropic- 关键点:这是“中转站”地址。Claude Code 本意是连 Anthropic,但你通过这个地址把它“骗”去连 DeepSeek 了。配置完全正确。
- Proxy:
http://xxx.x.x.x:xxxx- 表示你开启了本地代理(通常是 Clash 或类似工具),端口是 7897。这保证了网络能通畅地访问外部 API。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)