Windows 从零配置 Claude Code:接入 DeepSeek API 并开启自动执行

本文适用于 Windows 10/11,主要介绍如何在 CMD 或 PowerShell 中安装 Claude Code、配置 DeepSeek 兼容接口,并通过免权限确认模式启动。
一、环境准备
Claude Code 依赖 Node.js 和 npm,因此需要先安装 Node.js。
1. 使用 Winget 安装 Node.js
打开 CMD 或 PowerShell,执行:
winget install OpenJS.NodeJS.LTS
安装完成后,关闭当前终端,再重新打开一个新的 CMD 或 PowerShell 窗口。
检查 Node.js、npm 和 npx:
node -v
npm -v
npx -v
正常情况下,会分别输出版本号,例如:
v22.x.x
10.x.x
10.x.x
如果仍然提示:
'npm' 不是内部或外部命令
可以检查程序位置:
where node
where npm
也可以临时添加环境变量:
set "PATH=C:\Program Files\nodejs;%APPDATA%\npm;%PATH%"
然后重新检查:
node -v
npm -v
二、安装 Claude Code
确认 npm 可以正常使用后,执行:
npm install -g @anthropic-ai/claude-code
安装完成后检查版本:
claude --version
只要能够正常显示 Claude Code 版本号,就说明安装成功。
如果安装后提示找不到 claude,可以检查:
where claude
npm 全局命令通常位于:
C:\Users\你的用户名\AppData\Roaming\npm
例如:
C:\Users\17381\AppData\Roaming\npm
可将该目录加入 Windows 的 Path 环境变量。
三、区分 CMD 和 PowerShell 语法
这是配置过程中最容易出错的地方。
CMD 提示符特征
C:\Users\17381>
CMD 设置环境变量使用:
set "变量名=变量值"
PowerShell 提示符特征
PS C:\Users\17381>
PowerShell 设置环境变量使用:
$env:变量名="变量值"
如果在 CMD 中执行:
$env:ANTHROPIC_BASE_URL="..."
会出现:
文件名、目录名或卷标语法不正确。
原因不是接口配置错误,而是把 PowerShell 语法复制到了 CMD 中。
四、在 CMD 中临时配置 DeepSeek 接口
在 CMD 窗口中执行:
set "ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic"
set "ANTHROPIC_AUTH_TOKEN=你的新API密钥"
set "ANTHROPIC_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_OPUS_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_SONNET_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-v4-flash"
set "CLAUDE_CODE_SUBAGENT_MODEL=deepseek-v4-flash"
set "CLAUDE_CODE_EFFORT_LEVEL=max"
注意将:
你的新API密钥
替换成实际 API Key。
不要在教程、截图、聊天记录或代码仓库中公开真实密钥。
以上配置仅在当前 CMD 窗口有效。关闭窗口后,变量会自动失效。
五、检查环境变量是否生效
查看接口地址:
echo %ANTHROPIC_BASE_URL%
查看默认模型:
echo %ANTHROPIC_MODEL%
检查 Token 是否已经设置,但不要直接打印 Token:
if defined ANTHROPIC_AUTH_TOKEN (echo AUTH_TOKEN is set) else (echo AUTH_TOKEN is not set)
正常输出:
AUTH_TOKEN is set
不建议执行:
echo %ANTHROPIC_AUTH_TOKEN%
否则完整密钥会显示在终端和录屏中。
六、进入项目目录
不要直接在:
C:\Users\17381
目录中开启高权限模式。
应先进入具体项目目录,例如:
cd /d "D:\Program Files\Git\dev\my-project"
其中:
/d
用于在切换目录的同时切换磁盘分区。
例如从 C 盘进入 D 盘项目目录:
cd /d "D:\Code\demo-project"
检查当前位置:
cd
七、普通方式启动 Claude Code
普通启动命令:
claude
这种模式下,Claude Code 在执行命令、修改文件或进行高风险操作时,可能会反复询问是否允许。
适合第一次运行或不完全可信的项目。
八、一直允许执行:免确认模式启动
希望 Claude Code 自动执行命令、不再频繁询问权限,可以使用:
claude --dangerously-skip-permissions
也可以使用权限模式参数:
claude --permission-mode bypassPermissions
推荐完整启动方式:
cd /d "D:\Code\demo-project"
claude --dangerously-skip-permissions
这种模式通常会跳过 Bash、文件编辑、创建文件等操作的权限确认。
风险提示
开启后,Claude Code 可能直接执行:
删除文件
覆盖源代码
安装依赖
运行脚本
修改配置
执行系统命令
因此只应在以下情况下使用:
- 当前项目来源可信;
- 已使用 Git 或其他方式备份;
- 当前目录不是用户主目录或磁盘根目录;
- 重要文件已经提交版本控制;
- API Key 没有写入代码仓库。
建议启动前先检查 Git 状态:
git status
必要时先提交:
git add .
git commit -m "backup before claude code"
九、完整的一次性启动流程
在 CMD 中,可以按照下面的顺序执行。
1. 进入项目目录
cd /d "D:\Code\demo-project"
2. 配置接口和模型
set "ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic"
set "ANTHROPIC_AUTH_TOKEN=你的新API密钥"
set "ANTHROPIC_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_OPUS_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_SONNET_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-v4-flash"
set "CLAUDE_CODE_SUBAGENT_MODEL=deepseek-v4-flash"
set "CLAUDE_CODE_EFFORT_LEVEL=max"
3. 检查配置
echo %ANTHROPIC_BASE_URL%
echo %ANTHROPIC_MODEL%
if defined ANTHROPIC_AUTH_TOKEN (echo AUTH_TOKEN is set) else (echo AUTH_TOKEN is not set)
4. 免确认启动
claude --dangerously-skip-permissions
十、PowerShell 对应配置方法
如果使用的是 PowerShell,写法需要改成:
$env:ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic"
$env:ANTHROPIC_AUTH_TOKEN="你的新API密钥"
$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"
检查变量:
$env:ANTHROPIC_BASE_URL
$env:ANTHROPIC_MODEL
检查 Token 是否存在:
if ($env:ANTHROPIC_AUTH_TOKEN) {
Write-Host "AUTH_TOKEN is set"
} else {
Write-Host "AUTH_TOKEN is not set"
}
进入项目目录:
Set-Location "D:\Code\demo-project"
启动:
claude --dangerously-skip-permissions
十一、永久保存环境变量
临时环境变量在关闭终端后会消失。需要长期使用时,可以通过 setx 保存到当前 Windows 用户。
在 CMD 中执行:
setx ANTHROPIC_BASE_URL "https://api.deepseek.com/anthropic"
setx ANTHROPIC_AUTH_TOKEN "你的新API密钥"
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"
执行完成后,必须:
- 关闭当前 CMD;
- 重新打开 CMD;
- 再运行 Claude Code。
检查永久变量:
echo %ANTHROPIC_BASE_URL%
echo %ANTHROPIC_MODEL%
然后进入项目并启动:
cd /d "D:\Code\demo-project"
claude --dangerously-skip-permissions
不建议永久保存 API Key
虽然 setx 使用方便,但 API Key 会长期保存在用户环境变量中。
更安全的方式是每次启动时临时输入,或者使用专门的密钥管理方案。
十二、推荐:隐藏输入 API Key
为了避免 API Key 显示在终端历史记录中,可以使用 PowerShell 隐藏输入。
打开 PowerShell,执行:
$secureToken = Read-Host "请输入 API Key" -AsSecureString
$ptr = [Runtime.InteropServices.Marshal]::SecureStringToBSTR($secureToken)
try {
$env:ANTHROPIC_AUTH_TOKEN = [Runtime.InteropServices.Marshal]::PtrToStringBSTR($ptr)
}
finally {
[Runtime.InteropServices.Marshal]::ZeroFreeBSTR($ptr)
}
然后设置其他变量:
$env:ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic"
$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"
最后进入项目启动:
Set-Location "D:\Code\demo-project"
claude --dangerously-skip-permissions
十三、常见问题排查
1. npm 不是内部或外部命令
报错:
'npm' 不是内部或外部命令,也不是可运行的程序或批处理文件。
原因:
- 没有安装 Node.js;
- Node.js 没有加入 PATH;
- 安装后没有重新打开终端。
解决:
winget install OpenJS.NodeJS.LTS
重新打开 CMD 后检查:
node -v
npm -v
2. $env: 提示文件名或目录名错误
报错:
文件名、目录名或卷标语法不正确。
原因:当前使用的是 CMD,却执行了 PowerShell 语法。
CMD 使用:
set "变量名=变量值"
PowerShell 使用:
$env:变量名="变量值"
3. Claude 命令不存在
检查:
where claude
npm list -g --depth=0
重新安装:
npm install -g @anthropic-ai/claude-code
检查 npm 全局目录:
npm config get prefix
Windows 常见的全局命令目录:
C:\Users\你的用户名\AppData\Roaming\npm
4. 配置后仍然请求登录
可能原因:
- 环境变量没有在启动 Claude Code 的同一个终端中设置;
- 变量名称写错;
- API Key 无效;
- 接口地址不兼容;
- 接口提供方不支持当前模型名;
- 终端是在设置永久变量之前打开的。
重新打开终端后检查:
echo %ANTHROPIC_BASE_URL%
echo %ANTHROPIC_MODEL%
然后再启动:
claude
5. 模型名称无效
不同接口平台支持的模型名称可能不同,例如:
deepseek-v4-pro[1m]
deepseek-v4-flash
这些名称必须以接口提供方实际开放的模型列表为准。
如果出现模型不存在、无权限或参数错误,应优先检查:
ANTHROPIC_MODEL
ANTHROPIC_DEFAULT_OPUS_MODEL
ANTHROPIC_DEFAULT_SONNET_MODEL
ANTHROPIC_DEFAULT_HAIKU_MODEL
CLAUDE_CODE_SUBAGENT_MODEL
6. API Key 曾经公开怎么办
一旦 API Key 出现在:
- 聊天记录;
- CSDN 文章;
- 截图或录屏;
- GitHub 仓库;
- 群聊;
- 公开文档;
应立即进入对应平台的密钥管理页面:
- 删除或禁用旧密钥;
- 创建新密钥;
- 替换本地配置;
- 检查账户调用记录和余额。
仅仅删除聊天消息,并不能保证旧密钥没有泄露。
十四、建议制作启动脚本
可以新建文件:
start-claude.cmd
写入:
@echo off
setlocal
cd /d "D:\Code\demo-project" || (
echo 项目目录不存在
pause
exit /b 1
)
set "ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic"
set "ANTHROPIC_AUTH_TOKEN=你的新API密钥"
set "ANTHROPIC_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_OPUS_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_SONNET_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-v4-flash"
set "CLAUDE_CODE_SUBAGENT_MODEL=deepseek-v4-flash"
set "CLAUDE_CODE_EFFORT_LEVEL=max"
echo Base URL: %ANTHROPIC_BASE_URL%
echo Model: %ANTHROPIC_MODEL%
if not defined ANTHROPIC_AUTH_TOKEN (
echo API Key 未配置
pause
exit /b 1
)
claude --dangerously-skip-permissions
endlocal
双击该文件即可进入指定项目并启动 Claude Code。
不过将 API Key 明文写入脚本存在泄露风险,脚本不要提交到 Git。
建议将文件加入 .gitignore:
start-claude.cmd
.env
.env.local
十五、总结
Windows 配置 Claude Code 的核心流程如下:
安装 Node.js
↓
检查 node、npm、npx
↓
全局安装 Claude Code
↓
区分 CMD 和 PowerShell 语法
↓
配置接口地址、API Key 和模型
↓
进入具体项目目录
↓
普通模式或免确认模式启动
最常用的 CMD 启动流程:
cd /d "D:\Code\demo-project"
set "ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic"
set "ANTHROPIC_AUTH_TOKEN=你的新API密钥"
set "ANTHROPIC_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_OPUS_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_SONNET_MODEL=deepseek-v4-pro[1m]"
set "ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-v4-flash"
set "CLAUDE_CODE_SUBAGENT_MODEL=deepseek-v4-flash"
set "CLAUDE_CODE_EFFORT_LEVEL=max"
claude --dangerously-skip-permissions
免确认模式虽然方便,但权限非常高。务必先进入具体项目目录,并使用 Git 做好备份。
更多推荐
所有评论(0)