ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Windows下将Claude Code接入DeepSeek:完整配置指南

Windows下将Claude Code接入DeepSeek:完整配置指南 上周末我把 Windows 上的 Claude Code 接到了 DeepSeek 上整套流程从零开始到真正在项目里跑起来大概花了二十分钟。标题里说的“DeepSeek 驱动 Claude Code”不是拿 DeepSeek 的模型去模拟 Claude Code而是让 Claude Code 这个 Agent 工具保留完整的工作流读文件、改代码、跑命令、自动化迭代底层的大模型推理从 Anthropic API 换成 DeepSeek API。这么做的直接好处是API Key 注册即用、价格便宜很多Windows 下的安装配置也完全可复现。这篇文章适合两类人看一类是已经装了 Claude Code 但还在用官方 API想省点成本的另一类是刚听说了 Claude Code准备在 Windows 上尝鲜但不想折腾 Anthropic 账号的人。我尽量把每个步骤背后的原因也讲清楚而不是只给命令这样你调试的时候才知道往哪个方向查。1. 为什么要把 Claude Code 的模型后端换成 DeepSeek1.1 Claude Code 默认的模型链路和真实门槛Claude Code 是 Anthropic 出的命令行 AI Agent 工具核心使用方式是在终端里用自然语言描述任务它自己去读项目文件、修改代码、执行命令然后根据命令输出继续迭代。在 Windows 上它本质是一个跑在 Node.js 里的 CLI 包。默认情况下它通过 ANTHROPIC_API_KEY 或者账号登录态连接 Anthropic 官方 API推理用的是 Claude 系列模型。从实际使用的角度看默认链路有两个门槛第一你得有一个能用的 Anthropic 账号和 API Key光是账号开通、支付方式绑定这步就有一堆流程要处理第二Claude 系列 API 的定价偏高尤其是高频调用的时候账单压力很明显。如果你只是个人开发、做一些中小型项目每天让 AI 帮你写代码、跑测试、看日志token 消耗累加起来是很可观的。有人可能会问那为什么不直接用 DeepSeek 的官方聊天页面或者别的 IDE 插件因为 Claude Code 的价值不在模型本身而在它具备整套 Agent 工作流——主动拆解需求、精确修改文件、自动运行测试、多轮自我修正。这套交互框架是可复用的换掉模型后端就不用放弃这套成熟的工具链。1.2 DeepSeek 的兼容端点让替换变得零代码DeepSeek 平台提供的 API 里有一个面向 Anthropic 协议的兼容端点地址是https://api.deepseek.com/anthropic。这意味着 Claude Code 发出的请求协议不需要任何修改只要把 API 基地址指向这个 URL把密钥换成 DeepSeek 的底层模型就自动切换了。这个兼容方案对 Claude Code 的日常工作完全够用deepseek-chat对应 V3响应快日常生成和修改代码的主力。deepseek-reasoner对应 R1带深度思维链适合复杂逻辑分析和方案设计。价格比 Claude API 低一个量级按 tokens 计费充值门槛低。我自己的实际体验日常让 Claude Code 帮我写脚本、查 bug、重构函数deepseek-chat 的响应速度和效果是够的而且连续用几个小时费用也就在几块钱级别。真正需要 reasoner 的复杂场景我一般单独切模型不会让所有小任务都走深度推理那是浪费。2. Windows 环境准备Node.js 和终端的两个细节2.1 装 Node.js版本和 PATH 是两个绕不开的细节Claude Code 是 Node CLI第一步自然是 Node.js。版本上官方要求 18 以上我建议直接装 20 LTS 或 22 LTS这两个版本目前稳定性和兼容性都最好。到 nodejs.org 下载 Windows 安装包一路 Next 装好然后打开 PowerShell 验证node -v npm -v如果node -v报了“无法识别”基本就是 PATH 没有生效。装完 Node 后重启终端再看实在不行手动把 nodejs 的安装目录加进系统环境变量的 Path 里。这里有个隐性坑值得单独说一下不少 Windows 机器上装的是很老的 Node12.x、14.x跑 Claude Code 要么启动后没反应要么跑到一半流式输出异常。遇到这种情况最佳实践是先把旧 Node 卸载干净再装 LTS。如果你想装多个 Node 版本用 nvm-windows 管理平时切换版本很方便。我的经验是Claude Code 这种依赖流式、长连接的 CLI对 Node 版本敏感度比普通脚本高得多别在版本上将就。2.2 终端选型直接决定体验Claude Code 是个交互式终端工具终端渲染能力直接影响使用体验。Win11 自带的 Windows Terminal 是首选Win10 也可以单独安装。打开 Windows Terminal 设置把默认配置文件设置为 PowerShell推荐 PowerShell 7尽量别用传统 cmd.exe。原因很简单Claude Code 会在终端里渲染动态信息——当前正在执行的工具、进度状态、流式输出这些内容依赖 ANSI 转义序列。传统 conhost 窗口对这些支持差容易出现重影、错位、闪屏。Windows Terminal 对这些处理得很干净。另外如果你曾经被中文乱码困扰过可以顺手把默认代码页切成 UTF-8chcp 65001PowerShell 7 Windows Terminal 的组合下这条命令基本不需要主要是保留给 cmd 等老场景应急。Windows 上跑 Claude Code终端这一步做对了后面排查问题会轻松很多。3. 安装 Claude Codenpm 全局安装与登录绕行3.1 安装命令和 PATH 处理打开 PowerShell执行全局安装npm install -g anthropic-ai/claude-code安装过程通常几十秒到几分钟取决于镜像速度。执行完验证一下claude --version能输出版本号就说明安装成功。如果提示“claude 无法识别为 cmdlet、函数或脚本文件”是 npm 的全局 bin 目录不在 PATH 里。用这个命令查看全局目录npm prefix -g输出类似C:\Users\你的用户名\AppData\Roaming\npm把这个路径加进系统 Path重新打开终端即可。在这步容易遇到权限问题如果 Node 装在 Program Files 下面npm 全局安装可能需要管理员权限报 EPERM 或者装得莫名其妙。解决方法是要么用管理员身份运行 PowerShell 再执行npm install -g要么干脆用 nvm-windows 把 Node 装到用户目录不碰系统保护路径一劳永逸。3.2 首次启动搞清楚登录流程是哪一个环节装好后在任意目录输入claude如果什么都没配置首次运行会引导你登录 Anthropic 账号走浏览器 OAuth 授权。这一步是默认链路的一部分但如果你打算接 DeepSeek完全可以跳过。关键点是配置优先级只要 settings.json 或环境变量里已经给了 ANTHROPIC_API_KEY 和 ANTHROPIC_BASE_URLClaude Code 启动时会直接用这套连接参数不再要求登录授权。我实测的表现是写好 settings.json 之后再启动 claude直接出现的是工作目录交互界面没有任何 OAuth 环节。反过来如果你之前已经用官方账号登录过登录态可能会有残留导致请求仍然发往 Anthropic。处理方式是到C:\Users\你的用户名\.claude目录里清掉除 settings.json 之外的登录缓存文件。这个操作不影响你已经写好的配置放心删。这里还有个小技巧不想全局安装的话也可以在项目目录里用 npx 临时运行npx -y anthropic-ai/claude-code这种形式适合偶尔体验但日常使用还是建议全局安装命令短、也不会每次重新解析包。4. 写出关键的 settings.json指向 DeepSeek4.1 配置文件的层级和优先级Claude Code 的配置有用户级和项目级两类用户级C:\Users\你的用户名\.claude\settings.json影响这台机器上所有项目。项目级当前项目下的.claude\settings.local.json只影响当前项目且优先级更高。启动时项目级配置会覆盖用户级同名项。如果你的日常项目统一走 DeepSeek建议只写用户级 settings.json个别项目要单独用其他模型再在项目里建 settings.local.json 覆盖。这样配置管理最清晰。另外一个需要警惕的点是系统环境变量。Claude Code 启动时会读取当前进程的环境变量而 settings.json 里的 env 块本质上也是注入环境变量。两者并存时容易出现“到底用的是哪一份配置”的困扰。我的建议是所有和 DeepSeek 相关的配置只写在 settings.json 里不要在 Windows 环境变量里重复设置 ANTHROPIC_BASE_URL 或 ANTHROPIC_MODEL避免互相覆盖说不清。4.2 最小可用的 settings.json 配置模板在C:\Users\你的用户名\.claude\settings.json中写入{ env: { ANTHROPIC_API_KEY: sk-在这里填你的DeepSeek密钥, ANTHROPIC_BASE_URL: https://api.deepseek.com/anthropic, ANTHROPIC_MODEL: deepseek-chat, ANTHROPIC_SMALL_FAST_MODEL: deepseek-chat } }保存重点看两个字段ANTHROPIC_BASE_URL必须带/anthropic结尾。DeepSeek 的 Anthropic 兼容端点和 Claude Code 用的 Messages API 格式是对应的如果手滑写成/v1请求格式不匹配大概率返回 404 或解析失败。ANTHROPIC_MODEL填 API 模型名deepseek-chat不是宣传名DeepSeek-V3。API 名才是平台实际接受的名字。settings.json 是严格的 JSON 格式不能有注释编辑时注意别用带 BOM 的保存方式。改完配置后重启 claude 让它生效。4.3 主模型和后台模型的分配逻辑ANTHROPIC_MODEL是主模型负责核心的对话、代码生成、工具调用决策。ANTHROPIC_SMALL_FAST_MODEL是后台快模型负责标题生成、对话总结、信息抽取这类轻量任务。这两个角色分开设置是因为 Claude Code 内部有大量并不需要深度思考的小调用。如果所有任务都跑主模型既贵又慢把它们拆开后台小任务用便宜的模型主流程用高质量模型整体体验才会顺。按照这个逻辑ANTHROPIC_MODEL日常用deepseek-chat理由很简单Agent 多轮交互要的是稳定和速度V3 已经够强。ANTHROPIC_SMALL_FAST_MODEL也是deepseek-chat后台任务必须快。复杂场景需要深度推理时可以临时在主会话里切换到deepseek-reasoner但一般不建议把 reasoner 设成默认主模型。Claude Code 的 Agent 循环是高频、多步的每一步都带完整思维链延迟会大到难以接受费用也会明显上涨。4.4 API Key 的获取和安全存放DeepSeek 的 API Key 在 platform.deepseek.com 注册后创建创建时只显示一次务必立刻复制保存。账户需要充值后才能真正调用 API按 tokens 消耗扣费。密钥的安全存放是个容易被忽略的事settings.json 里虽然可以直接写 key但如果你把整个目录同步到 Git 仓库key 就等于公开了。我的做法是个人项目的.claude目录加进.gitignore。团队共享的 settings.json 不写任何人的 key只放模型配置和 base URLkey 由每个人在自己的 settings.local.json 里填。如果发现 key 泄露第一时间到平台删除重建不要抱有侥幸心理。5. 启动 Claude Code 跑通一次真实任务5.1 用真实项目验证配置是否生效配置完成后开一个干净目录实测mkdir test-claude cd test-claude claude启动后如果直接进入交互界面说明连接参数已经生效。建议先在会话里抛一个小任务比如创建一个 Python 脚本输出斐波那契数列前 20 项并生成 requirements.txt正常的 Agent 流程是先简单确认需求然后调用文件写入工具创建脚本再执行命令验证结果。你可以用另一个终端打开 DeepSeek 平台的调用记录页面如果看到请求在实时产生就说明流量确实走的是 DeepSeek而不是残留的 Anthropic 配置。还有一个验证隐藏配置的办法执行/init让 Claude Code 扫描并理解当前项目。这一步会触发大量后台小模型调用此时如果ANTHROPIC_SMALL_FAST_MODEL配得不合理比如设成了 reasoner你会明显感觉每一步都在长时间等待。所以/init也是检验快模型配置是否正确的天然测试场景。5.2 我踩过的坑与完整排查链路这组配置我在自己机器上跑了好几遍也经历过一些失败下面是最容易踩的几个点。现象可能原因排查思路启动后仍然要求登录 Anthropic没配 key或旧登录态残留检查 settings.json 是否存在、JSON 是否合法清理.claude目录里除 settings.json 外的登录缓存后重启调用返回 401 / 403API Key 错误、未充值、余额不足去 DeepSeek 平台确认 key 有效性确认账户有余额返回 404Base URL 写错确认以/anthropic结尾不要写成/v1或其他路径返回 400提示模型不存在模型名用了宣传名改用deepseek-chat/deepseek-reasoner这两个 API 名终端中文输出乱码代码页不是 UTF-8运行chcp 65001或改用 Windows Terminal PowerShell 7claude 命令闪退或没反应PowerShell 执行策略限制脚本运行管理员执行Set-ExecutionPolicy RemoteSigned -Scope CurrentUser先说最大的坑登录态残留。我第一次配好配置文件启动还是进了 OAuth 页面原因就是之前用官方账号登录过缓存没清。这个坑的排查思路很简单但很隐蔽你只盯配置没有因为问题是旧的缓存文件。清掉除 settings.json 之外的登录缓存重新启动就正常了。第二个要重点提醒的是模型名。我在ANTHROPIC_MODEL里填过deepseek-v3结果每次调用都报模型不存在。DeepSeek 的 API 只认deepseek-chat和deepseek-reasoner宣传名 V3、R1 不能直接用。这类错误返回的信息又不太直观容易让人误以为是 API 地址的问题白查半天。第三个是执行策略。Windows 的 PowerShell 默认对脚本运行有严格限制npm 全局安装的 cli 脚本可能被挡住表现就是命令一闪而过或者完全没有输出。管理员 PowerShell 执行一次Set-ExecutionPolicy RemoteSigned -Scope CurrentUser只影响当前用户不是系统级放开风险可控。这是微软提供的正规做法不是绕过安全机制。还有一类问题在旧设备上比较常见Node 版本太老导致流式输出异常。表现是能启动但回复是一个字一个字蹦出来甚至卡住。如果你用的是 18 以下的 Node别犹豫升级到 20 LTS 再测。最后一个提醒是关于防火墙的。如果你的 Windows 开启了自带防火墙且第一次运行 claude 时有弹窗询问是否允许网络访问要允许 Node.js 通过否则 Claude Code 连不上 API表现是启动后卡在初始化阶段没有任何报错。这个坑和配置无关但排查起来很折腾一并写在这里。我的习惯是每次改完 settings.json 都用 claude 跑一个小任务验证确认改动生效再继续下一个操作。Windows 上这套环境只要 Node 版本、终端、执行策略这三个基础项没问题剩下的基本就是配置准确性的问题照着上面表格逐项查很快能定位。
返回列表