1. Windows 下 conda 装 Claude Code 到 D 盘并接 DeepSeek API 的完整配置Claude Code 是 Anthropic 推出的命令行编程助手能在终端里直接读写项目文件、跑命令、改代码。它默认走 Anthropic 官方账号或 Console 计费但通过环境变量把ANTHROPIC_BASE_URL指向兼容 Anthropic 协议的第三方端点就能换成 DeepSeek API 来驱动。这套玩法适合两类人一是 C 盘空间紧张、想把开发环境全塞到 D 盘的 Windows 用户二是想用 DeepSeek 的低价额度跑 Claude Code 的开发者。我这次的目标很明确——用 conda 在 D 盘建一个独立环境装 Node.js 20 和 Claude Code再把 API 切到 DeepSeek全程不碰 C 盘的用户目录。踩过的坑先摆出来conda 默认把新环境建在C:\Users\用户名\.conda\envs下直接conda create -n claude-code会占 C 盘而把环境塞进 Anaconda 安装目录的envs文件夹又会撞权限问题。所以正确姿势是用--prefix指定一个普通目录比如D:\conda-envs\claude-code这样环境完整落在 D 盘后续装包改包也不会被权限卡住。下面按「建环境 → 装 Claude Code → 配 DeepSeek → 验证 → 排障」的顺序走一遍命令都能直接复制。2. 前置准备conda 环境与 D 盘路径规划先确认你机器上 conda 的现状。打开 PowerShell执行conda env list输出大概长这样# conda environments: # base * D:\ProgramData\anaconda3 paper2slides C:\Users\用户名\.conda\envs\paper2slides py39-cpu-torch C:\Users\用户名\.conda\envs\py39-cpu-torch可以看到 base 在 D 盘但之前随手建的环境都跑 C 盘去了。这次我们不走默认路径单独规划一个目录D:\conda-envs来放 Claude Code 专用环境。注意不要把环境建到D:\ProgramData\anaconda3\envs\claude-code。这个目录属于 Anaconda 安装目录普通 PowerShell 往里创建环境经常报权限错误就算用管理员权限强装进去以后pip install、npm install改包时还会反复撞权限墙。如果你还没装 conda去 Anaconda 或 Miniconda 官网下 Windows 安装包安装时把路径选到 D 盘即可。装完在 PowerShell 里能跑conda --version就算就绪。另外确认 D 盘有至少 2GB 空闲Node.js 20 加 Claude Code 的依赖大概占几百 MB留点余量。3. 可复制配置建环境、装 Node.js 与 Claude Code3.1 用 --prefix 把环境建到 D 盘关键就是--prefix参数它让你直接指定环境的完整路径绕开 conda 默认的 envs 目录conda create --prefix D:\conda-envs\claude-code -c conda-forge nodejs20 -y这条命令做了三件事在D:\conda-envs\claude-code建环境、从 conda-forge 频道拉 Node.js 20、-y自动确认。跑完你会看到类似Preparing transaction: done的输出。激活这个环境conda activate D:\conda-envs\claude-code激活后提示符前面会出现(D:\conda-envs\claude-code)。如果你觉得这串完整路径太长后面第 5 节有办法改成短名字。3.2 验证 Node.js 与 npm环境激活状态下执行node -v npm -v正常输出类似v20.19.0和10.8.2。如果node -v报「无法识别」说明环境没激活成功回到上一步重新conda activate。3.3 确认 npm 全局目录落在环境内这一步很重要决定了 Claude Code 装到哪npm prefix -g如果输出是D:\conda-envs\claude-code说明 npm 的全局安装目录就在当前 conda 环境里完美。如果输出指向C:\Users\用户名\AppData\Roaming\npm那 Claude Code 会被装到 C 盘需要检查环境是否真的激活了。3.4 安装 Claude Codenpm install -g anthropic-ai/claude-code装完检查版本claude --version输出类似2.1.131 (Claude Code)就成功了。如果提示claude不是可识别命令多半是 npm 全局 bin 目录没进 PATH可以执行npm bin -g看路径再手动加进当前会话的 PATH。4. 接入 DeepSeek APIsettings.json 骨架与环境变量4.1 先退出默认登录流程直接敲claude会弹出登录方式选择Select login method: 1. Claude account with subscription 2. Anthropic Console account 3. 3rd-party platform这时候别选按Ctrl C退出。因为我们要用 DeepSeek 的端点得先把环境变量配好否则 Claude Code 找不到模型就会一直让你登录。4.2 在 PowerShell 里设置环境变量DeepSeek 提供了兼容 Anthropic 协议的端点把下面这组变量在当前 PowerShell 会话里设好记得换成你自己的 Key$env:ANTHROPIC_BASE_URLhttps://api.deepseek.com/anthropic $env:ANTHROPIC_AUTH_TOKEN你的DeepSeek API Key $env:ANTHROPIC_MODELdeepseek-v4-pro[1m] $env:ANTHROPIC_DEFAULT_OPUS_MODELdeepseek-v4-pro[1m] $env:ANTHROPIC_DEFAULT_SONNET_MODELdeepseek-v4-pro[1m] $env:ANTHROPIC_DEFAULT_HAIKU_MODELdeepseek-v4-flash $env:CLAUDE_CODE_SUBAGENT_MODELdeepseek-v4-flash $env:CLAUDE_CODE_EFFORT_LEVELmax这里几个变量的分工ANTHROPIC_BASE_URL决定请求打到哪ANTHROPIC_AUTH_TOKEN是鉴权凭证ANTHROPIC_MODEL和几个DEFAULT_*_MODEL决定主模型和子任务模型CLAUDE_CODE_SUBAGENT_MODEL管子代理EFFORT_LEVEL控制推理投入。注意PowerShell 里写环境变量用$env:变量名值不是 Linux 的export。用export会直接报「无法将 export 项识别为 cmdlet」。4.3 settings.json 骨架持久化配置上面那组$env:只在当前 PowerShell 窗口有效关掉就没了。想持久化可以在项目目录或用户目录建settings.json。Claude Code 会读取.claude/settings.json骨架如下{ env: { ANTHROPIC_BASE_URL: https://api.deepseek.com/anthropic, ANTHROPIC_AUTH_TOKEN: 你的DeepSeek API Key, ANTHROPIC_MODEL: deepseek-v4-pro[1m], ANTHROPIC_DEFAULT_OPUS_MODEL: deepseek-v4-pro[1m], ANTHROPIC_DEFAULT_SONNET_MODEL: deepseek-v4-pro[1m], ANTHROPIC_DEFAULT_HAIKU_MODEL: deepseek-v4-flash, CLAUDE_CODE_SUBAGENT_MODEL: deepseek-v4-flash, CLAUDE_CODE_EFFORT_LEVEL: max } }放在项目根目录的.claude/settings.json只对该项目生效放在用户目录的~/.claude/settings.json全局生效。Key 写进文件要注意别提交到 Git建议加进.gitignore。4.4 如果你用 TaoToken 做统一入口有些同学手上不止 DeepSeek 一个模型想用统一网关管理多个 Key可以把ANTHROPIC_BASE_URL指向 TaoToken 的 API 端点Key 换成 TaoToken 的$env:ANTHROPIC_BASE_URLhttps://taotoken.net/api $env:ANTHROPIC_AUTH_TOKEN你的TaoToken API KeyTaoToken 的 API Key 在控制台创建接入文档里有各客户端的配置示例。这样切换模型时不用改代码只改环境变量里的模型名即可。模型对话入口可以先用网页版验证 Key 是否可用再回到 Claude Code 里配。5. 验证请求与成功结果5.1 检查环境变量是否生效echo $env:ANTHROPIC_BASE_URL echo $env:ANTHROPIC_MODEL [bool]$env:ANTHROPIC_AUTH_TOKEN期望输出https://api.deepseek.com/anthropic deepseek-v4-pro[1m] True最后一行是True说明 Key 设进去了如果是False说明ANTHROPIC_AUTH_TOKEN没设成功回去重设。5.2 进入项目目录启动cd D:\test\test文件夹 claude如果配置正确Claude Code 会直接进入交互界面不再弹登录选项。随便问一句「这个目录下有哪些文件」它能正常返回就说明请求已经通过 DeepSeek API 走通了。5.3 用一句话测试连通性在 Claude Code 里输入帮我列出当前目录的文件并说明每个文件的作用观察它是否调用工具读取目录、是否正常返回结果。如果卡在「thinking」很久没反应多半是网络或 Key 问题看下一节排障。6. 本篇常见错误排查6.1 PowerShell 里 export 报错错误写法export ANTHROPIC_BASE_URLhttps://api.deepseek.com/anthropic报错export : 无法将“export”项识别为 cmdlet、函数、脚本文件或可运行程序的名称原因export是 Linux/macOS shell 语法PowerShell 不认。改成$env:ANTHROPIC_BASE_URLhttps://api.deepseek.com/anthropic6.2 启动 claude 后仍出现登录选项如果claude还是弹Select login method: 1. Claude account with subscription 2. Anthropic Console account 3. 3rd-party platform说明当前 PowerShell 没读到 DeepSeek 环境变量。处理步骤按Ctrl C退出重新执行第 4.2 节那组$env:命令用[bool]$env:ANTHROPIC_AUTH_TOKEN确认输出True再运行claude。6.3 conda activate 后提示符显示完整路径激活后提示符变成(D:\conda-envs\claude-code) PS太长。执行conda config --set env_prompt ({name}) 然后重新激活conda deactivate conda activate claude-code提示符就会变成(claude-code) PS。注意用--prefix建的环境激活时可以直接用环境名claude-codeconda 会在已注册的 prefix 里找。6.4 where node 没有输出PowerShell 里where是Where-Object的别名不是找可执行文件的命令。正确写法where.exe node where.exe npm或者用Get-Command node Get-Command npm这两个会返回 node 和 npm 的完整路径确认它们指向D:\conda-envs\claude-code下就对了。6.5 npm install -g 装到了 C 盘如果npm prefix -g输出的是C:\Users\用户名\AppData\Roaming\npm说明当前 npm 不是 conda 环境里的那个。检查Get-Command npm的路径如果指向系统全局 npm说明 conda 环境没激活或 PATH 顺序不对。重新conda activate D:\conda-envs\claude-code再确认Get-Command npm指向环境目录。6.6 API 返回 401 或 403多半是 Key 错了或没设进去。用[bool]$env:ANTHROPIC_AUTH_TOKEN确认非空再检查 Key 有没有多余空格。如果用的是 TaoToken 端点去控制台的 API Keys 页面重新生成一个接入文档里有各语言的调用示例可以先用 curl 测一下 Key 是否有效再回到 Claude Code。7. 长期编码与 Agent 场景的接入选择如果你只是偶尔用 Claude Code 跑几个小任务上面这套 DeepSeek 环境变量配置就够了。但如果你打算把 Claude Code 当日常主力长期跑编码、重构、Agent 任务建议把接入方式固定下来要么用settings.json持久化配置要么用 TaoToken 的 Coding Plan 统一管理额度和模型切换。Coding Plan 适合需要频繁切换模型、控制成本的场景控制台里能看到用量明细API Keys 页面可以按项目建不同的 Key。接入文档里有 Claude Code、Cursor、Cline 等客户端的配置模板照着改ANTHROPIC_BASE_URL和ANTHROPIC_AUTH_TOKEN就行。模型对话入口适合先验证 Key 和模型是否可用确认没问题再写进settings.json。整套流程跑通后你在 D 盘的 conda 环境里就有了一个完全独立的 Claude Code不占 C 盘、不污染系统 Node.js换模型只改环境变量。