随着AI大模型技术的飞速发展,越来越多的开发者希望在强大的编程助手Claude Code中使用性价比更高的国产模型。由于DeepSeek原生支持Anthropic API格式,我们无需任何中间件或代理,只需简单配置即可实现无缝接入。本文将为你提供一份超详细的保姆级教程,助你轻松完成配置。

一、 前期准备工作

在开始配置之前,请确保你已经完成了以下两项基础准备:

  1. 安装Claude Code:确保你的电脑已安装Node.js 18+版本(Node.js — 下载 Node.js®)。随后在终端执行 
    npm install -g @anthropic-ai/claude-code
    安装完成之后,输入 claude --version 显示版本号即代表安装成功。
  2. 获取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_MODELANTHROPIC_DEFAULT_OPUS_MODELANTHROPIC_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 盘工作

  1. 退出当前会话
    按 Esc 键或选择 2. No, exit 退出当前安全确认流程。

  2. 手动切换目录到 E 盘
    在终端中输入以下命令:

    cd /d E:\你的项目路径

    例如,如果你想在 E:\my-project 下工作,就输入

    cd /d E:\my-project

    ⚠️ 注意:Windows PowerShell 中切换盘符必须加 /d 参数,否则不会生效。

  3. 重新启动 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 帮你写代码了。

关键信息解读

  1. 模型已切换成功:左下角显示 deepseek-v4-pro。这说明你之前设置的环境变量生效了,现在 Claude Code 的“大脑”已经换成了 DeepSeek V4-Pro,而不是昂贵的原版 Claude。
  2. 工作目录正确:路径显示为 E:\desktop\claude项目。这意味着 AI 接下来生成的所有文件、修改的所有代码,都会保存在你的 E 盘这个文件夹里,不会弄乱 C 盘。
  3. 权限已授权:顶部的 Security guide 和 Yes, I trust this folder 说明你已经通过了安全检查,AI 获得了在这个文件夹里读写文件的权限。
  4. 努力程度:右下角的 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 盘的旧文件仍存在一定风险。以下是详细的分析和操作建议:

为什么不能立即删除?

  1. 程序缓存与回退机制:某些软件在启动时,如果无法读取到新的配置路径(例如环境变量未生效、路径拼写错误),可能会尝试回退读取默认路径(C 盘)。如果此时 C 盘文件已被删除,可能导致程序报错或重置为初始状态。
  2. 隐藏文件遗漏.claude 文件夹通常包含会话历史、插件配置等,但用户目录下可能还存在 .claude.json 或 .claude/settings.json 等分散的配置文件。如果只迁移了文件夹而漏掉了这些散落的文件,可能会导致部分功能失效。
  3. 验证新环境稳定性:你需要确认在新路径下,Claude Code 的所有功能(如登录状态、历史记录加载、插件调用)都能正常运行。
推荐的安全操作流程

为了确保万无一失,请按照以下步骤操作:

第一阶段:观察期(建议 3-7 天)

  1. 重命名而非删除:将 C 盘原来的 .claude 文件夹重命名为 .claude_backup。这样做既能防止 Claude Code 误读旧配置,又能随时恢复数据。
    Rename-Item -Path "$env:USERPROFILE\.claude" -NewName ".claude_backup"

  2. 全面测试:在这几天内,正常使用 Claude Code。重点检查:
    • 是否能正常启动并识别 API Key。
    • 之前的对话历史是否能在 E 盘的新位置正确加载。
    • 安装的插件或自定义技能是否依然有效。

第二阶段:清理期

当你确认 E 盘的新配置完全稳定,且不再需要旧数据后,再执行删除操作:

Remove-Item -Path "$env:USERPROFILE\.claude_backup" -Recurse -Force

特别提醒

在执行任何删除操作前,请务必再次确认你的 E 盘新目录(如 E:\ClaudeCode)中已经包含了完整的 sessionspluginsskills 等子文件夹。如果新目录是空的或者不完整的,千万不要删除 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 URLhttps://api.deepseek.com/v1 (或你使用的代理地址)
  • API Key: 你的 DeepSeek API Key
  • Model Namedeepseek-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)只是一个“聊天窗口”,它没有权限直接操作你的电脑文件系统。

以下是详细原因分析和解决方案:

为什么不能自动创建?

  1. 安全沙箱机制
    • 你截图中的软件(看起来是 Xenia 或 Claude 官方桌面版)被设计为一个安全的对话环境。为了防止 AI 误删文件或植入病毒,它默认处于“沙箱”中,只能生成文本给你看,不能在你的硬盘上执行 write file(写入文件)的操作。
  2. 功能限制
    • 注意看你截图底部的那个提示条:“Upgrade to let Claude edit files, run commands...”(升级以允许 Claude 编辑文件、运行命令...)。这说明你当前的免费版或基础版模式,只支持“对话”,不支持“代理操作”。
  3. 模型能力的区别
    • 虽然 DeepSeek V4 很强,但在这个客户端里,它只是作为一个“大脑”在回答问题。真正能帮你“动手”写文件的,是之前那个黑底白字的命令行工具(Claude Code CLI)。

怎么解决?

你有两个选择,取决于你想用什么方式工作:

方案 A:继续使用这个好看的图形界面(手动复制)

如果你更喜欢这个有按钮、有预览的界面:

  1. 让 AI 生成代码(就像你现在做的这样)。
  2. 点击代码块右上角的 Copy 按钮。
  3. 自己打开记事本或 VS Code,粘贴进去,保存为 .py 文件。
  4. 注:有些第三方客户端(如 Chatbox、Cherry Studio)如果配置了正确的 API Key,可能支持简单的文件保存功能,但通常不如命令行强大。

方案 B:使用真正的“全自动”工具(推荐)

如果你想实现“我说一句话,它自动帮我建好文件并运行”,你需要回到我们最开始讨论的那个工具——Claude Code (CLI)

  1. 关闭现在的这个图形界面窗口。
  2. 打开你的 CMD 或 PowerShell(黑色窗口)。
  3. 输入命令进入 E 盘目录:
    cd /d E:\desktop\claude项目

  1. 启动 Claude Code:
    claude
  2. 在那个黑底白字的界面里输入同样的指令:“给我创建一个 hello world 的 py 代码”。
  3. 奇迹就会发生:它会直接在 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
  1. 登录你使用的 API 服务商控制台(如 Anthropic、DeepSeek、TokenFty 等)。
  2. 找到“API Keys”或“令牌管理”页面,确认当前 Key 的状态是否为“有效”。
  3. 如果 Key 已失效,点击“重新生成”或“创建新 Key”,并复制完整字符串(注意不要包含前后空格)。
  4. 在终端中运行以下命令,手动设置新 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"
第三步:清除旧配置并重新启动

有时旧的缓存或配置文件会干扰新设置。建议:

  1. 删除 C 盘用户目录下的 .claude 文件夹(或重命名为 .claude_backup 作为备份)。
  2. 重启终端,再次运行 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 应该就能正常连接并响应了。 

五、 进阶与避坑指南

在实际使用中,为了获得更流畅的体验,你还需要注意以下几个细节:

  1. 跳过官方登录限制:如果不打算注册Anthropic账号,可以在 ~/.claude.json 文件中加入 "hasCompletedOnboarding": true,重启终端后即可免登录使用第三方模型。
  2. 网络代理配置:若遇到网络无法连接的问题,需在 settings.json 的 env 节点下补充本地代理地址,例如 "HTTP_PROXY": "http:/xxx.x.x.x:xxxx" 和 "HTTPS_PROXY": "http://xxx.x.x.x:xxxx"
  3. Base URL格式警告:配置接口地址时,务必使用 https://api.deepseek.com/anthropic千万不要在末尾加上 /v1,否则会导致请求返回404错误。
  4. 功能边界认知:虽然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。
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐