1. Windows 装 Claude Code 总卡在第一步?先看清三条安装路线的真实差异
Claude Code 是 Anthropic 推出的命令行 AI 编程助手,能在终端里直接读写项目文件、跑命令、改代码,适合习惯用 CLI 干活的开发者。但它在 Windows 上的安装体验,和 macOS、Linux 完全不是一回事——很多人第一次装就卡在claude命令找不到、npm 装到一半报错、PowerShell 脚本下载回来一堆 HTML 这类问题上。
我自己在 Windows 上反复装过好几轮,踩过的坑基本集中在三块:Node.js 版本选错、环境变量没刷新、网络导致远程脚本拉不下来。这篇就把这三条路线拆开讲清楚,每条都给可复制的命令和验证动作,最后接上 TaoToken 的统一 Key 配置,让你一次跑通。
先说结论,Windows 上装 Claude Code 有三条路:
方案 A 走 npm,前提是先装 Node.js,适合本来就有前端/Node 环境的机器;方案 B 用官方 PowerShell 脚本,一条iwr ... | iex搞定,不依赖 Node,但国内网络经常拉不到脚本本体;方案 C 用 WinGet,Windows 自带的包管理器,从微软官方源拿编译好的独立 exe,PATH 全自动配置,是纯 Windows 用户最省心的一条。
三条路的底层载体完全不同,别混着理解。方案 A 装的是 npm 包@anthropic-ai/claude-code,本质是 JS 生态里的一个全局包,没有 Node 就没有 npm,没有 npm 就装不了;方案 B 拉的是一个远程 PS1 脚本,脚本内部再去下载claude.exe丢到用户目录;方案 C 则是从微软维护的软件源直接取独立可执行文件,跟 Node 一点关系都没有。
所以选哪条,取决于你机器上已经有什么。如果你平时写 Python、做数据分析,机器上干干净净没装过 Node,那硬上方案 A 就是给自己找麻烦——为了一个 CLI 装一整套 Node 运行时,磁盘和后续维护都是负担。反过来,如果你本来就在写前端、跑 Vite、用 pnpm,那方案 A 顺手就装了,还能顺便把 npm 全局工具链用起来。
下面按「先检查环境 → 选路线安装 → 配 TaoToken → 验证 → 排错」的顺序走,每一步都给命令和预期输出。你可以先跳到对应小节,也可以从头顺着做。
2. 装之前先做环境体检:Node.js、npm、PowerShell 版本一次查清
不管走哪条路线,装之前先花两分钟做个体检,能省掉后面一半的报错。Windows 上最容易出问题的就是「装了但没生效」——安装程序改了 PATH,但你已经开着的终端读的还是旧环境变量。
先开一个全新的PowerShell 窗口(不是之前开着的那个),依次跑这几条:
node -v npm -v winget --version $PSVersionTable.PSVersion预期结果是这样:node -v输出v20.x.x或v22.x.x这类 LTS 版本号;npm -v输出10.x.x左右;winget --version输出v1.x.x;最后一条会打印 PowerShell 的主版本号,Windows 10/11 自带的是 5.1,如果你装过 PowerShell 7 会显示 7.x。
这里有个关键点:Node.js 一定要选 LTS,不要选 Current 尝鲜版。LTS 是长期支持版,npm 生态兼容性最好;Current 版虽然版本号新,但偶尔会有包不兼容。去 Node.js 官网下载页,认准写着 LTS 的那个按钮,下载.msi安装包,双击后全程默认下一步即可,安装程序会自动把 Node 和 npm 写进系统 PATH。
装完 Node 之后,必须彻底关掉所有已经打开的 PowerShell、VS Code、Windows Terminal 窗口,然后重新开一个。这一步不是玄学,是因为 Windows 的环境变量在进程启动时就固定了,老窗口读不到新写入的 PATH。很多人装完 Node 直接在当前窗口敲node -v报「不是内部或外部命令」,就是栽在这。
如果你机器上已经有 Node,但版本太老(比如 v14、v16),建议先升级。可以用winget upgrade OpenJS.NodeJS.LTS一条命令升到最新 LTS,比手动卸载重装干净。
体检做完,你对自己机器处于什么状态就清楚了:有 Node 走方案 A,没 Node 且网络一般走方案 C,网络好又想省事可以试方案 B。下面三条路线逐个展开。
3. 三条安装路线可复制配置:npm、PowerShell 脚本、WinGet 怎么选
这一节是全文的核心操作区,三条路线都给完整命令。你可以只挑一条做,但建议把三条都看一遍,因为排错时经常需要换路线救场。
3.1 方案 A:npm 全局安装(需要 Node.js)
前提是上一节的node -v和npm -v都能正常输出版本号。然后执行:
npm install -g @anthropic-ai/claude-code这条命令会从 npm 源把 Claude Code 的 CLI 包下载到全局目录。装完后验证:
claude --version能打印出版本号(类似1.x.x)就说明 CLI 本体到位了。如果报「claude 不是内部或外部命令」,八成是 npm 全局 bin 目录没进 PATH,可以跑npm config get prefix看全局目录在哪,再手动加进系统环境变量。
方案 A 的优点是 Node 生态通用,以后你装别的 JS 类 CLI 工具也是同一套npm install -g;缺点是如果你只用 Claude Code,等于为了它背了一整套 Node 运行时,磁盘占用和后续升级都要多操心一层。
3.2 方案 B:官方 PowerShell 脚本(不依赖 Node)
新开一个 PowerShell,直接跑官方安装脚本:
iwr https://code.claude.com/install.ps1 -useb | iexiwr是Invoke-WebRequest的别名,-useb表示用基本解析模式拿内容,| iex是把拿到的脚本直接执行。脚本会自动下载claude.exe并放到用户目录,默认路径是:
C:\Users\你的用户名\.local\bin装完同样用claude --version验证。如果提示命令找不到,就把上面那个.local\bin路径手动加进系统 PATH,然后重启终端。
方案 B 最大的坑是网络。国内直连code.claude.com经常拉回来的是 HTML 错误页而不是脚本,执行时报一堆语法错误。遇到这种情况别硬刚,直接换方案 C。
3.3 方案 C:WinGet 安装(Windows 原生,推荐纯 Windows 用户)
WinGet 是 Windows 10/11 自带的包管理器,从微软官方软件源取包,PATH 自动配置,升级也只要一条命令:
winget install Anthropic.ClaudeCode装完关掉当前所有 PowerShell 窗口,重新开一个,验证:
claude --version输出版本号即成功。以后升级直接:
winget upgrade Anthropic.ClaudeCode方案 C 的优势在于它是 Windows 原生工具链,不依赖 Node,不用手动配 PATH,文件装在标准程序目录,比手动解压规范得多。对纯 Windows 开发者来说,这是三条路里最省心的一条。
三条路线横向对比:
| 方式 | 是否需要 Node.js | 安装来源 | PATH 自动配置 | 升级方式 |
|---|---|---|---|---|
| 方案 A npm | 必须 | npm 源 | 自动 | npm update -g |
| 方案 B 脚本 | 不需要 | 官方脚本 | 大概率自动,网络易失败 | 重新下载覆盖 |
| 方案 C WinGet | 不需要 | 微软官方源 | 全自动 | winget upgrade |
3.4 补充:VS Code 插件版
如果你习惯在编辑器里写代码,也可以装官方 VS Code 插件:按Ctrl + Shift + X打开扩展面板,搜索 Claude Code,认准发布者为 Anthropic 的那个,点 Install。装完左侧边栏会出现入口,按提示配置密钥即可。
注意插件版和 CLI 版是两套东西:插件在侧边栏或文件内使用,没法在 VS Code 的集成终端里当命令跑。想要终端里claude命令可用,还是得走上面三条 CLI 路线之一。
4. 接上 TaoToken 统一 Key:Base URL、Key、Model ID 三件套配置
CLI 装好只是有了壳,真正让它干活还得配模型接入。TaoToken 提供统一的 API 入口,把 Base URL、Key、Model ID 三件套填对,Claude Code 就能正常发请求。
先拿到你的 Key:登录 TaoToken 控制台,在 API Keys 页面创建一个新 Key,复制出来备用。控制台地址是 https://taotoken.net/console ,创建 Key 的页面在 https://taotoken.net/api-keys 。
Claude Code 的配置走环境变量最稳。在 PowerShell 里设置(当前会话生效):
$env:ANTHROPIC_BASE_URL = "https://taotoken.net/api" $env:ANTHROPIC_API_KEY = "你的TaoToken Key" $env:ANTHROPIC_MODEL = "claude-sonnet-4-5"三件套对应关系要记牢:ANTHROPIC_BASE_URL填 TaoToken 的 API 地址https://taotoken.net/api,注意这里不加任何 UTM 参数;ANTHROPIC_API_KEY填你刚创建的 Key;ANTHROPIC_MODEL填你要用的模型 ID。
如果你想让配置永久生效,别每次开终端都重设,可以写进用户级环境变量:
[Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://taotoken.net/api", "User") [Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", "你的TaoToken Key", "User") [Environment]::SetEnvironmentVariable("ANTHROPIC_MODEL", "claude-sonnet-4-5", "User")写完关掉终端重开,用echo $env:ANTHROPIC_BASE_URL确认读到了。
如果你用的是 Claude Code 的 settings 配置文件方式,可以在用户目录下建settings.json,内容长这样:
{ "env": { "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_API_KEY": "你的TaoToken Key", "ANTHROPIC_MODEL": "claude-sonnet-4-5" } }这个文件一般放在C:\Users\你的用户名\.claude\settings.json,路径和字段名保持和上面一致,别自己改键名。
配好之后,Claude Code 发出的请求就会走 TaoToken 的统一入口,模型调用、额度、日志都能在控制台看到。如果你后面要长期跑编码任务或者搭 Agent,可以了解下 Coding Plan,地址是 https://taotoken.net/coding-plan ,适合高频使用的场景。
5. 验证安装成功:一条请求跑通,看返回里有没有 choices
配置填完别急着写业务代码,先用一条最小请求验证链路通不通。Claude Code 本身有交互模式,直接敲:
claude进入交互界面后,输入一句简单的话,比如「用一句话说明你是什么模型」。如果配置正确,它会正常返回内容;如果报错,错误信息基本能定位到问题所在。
想更直接地验证 API 链路,可以用 curl 打一发:
curl.exe https://taotoken.net/api/v1/messages ` -H "x-api-key: 你的TaoToken Key" ` -H "anthropic-version: 2023-06-01" ` -H "content-type: application/json" ` -d '{\"model\":\"claude-sonnet-4-5\",\"max_tokens\":64,\"messages\":[{\"role\":\"user\",\"content\":\"ping\"}]}'注意 Windows 上要用curl.exe而不是curl,因为 PowerShell 里curl是Invoke-WebRequest的别名,参数格式不一样。返回的 JSON 里如果能看到content数组和里面的文本,说明 Base URL、Key、Model ID 三件套全部生效。
验证成功的标志有三个:claude --version有版本号、claude交互模式能正常对话、curl 请求返回带content的 JSON。三个都过,安装就算彻底跑通了。
如果只想快速试模型效果,也可以直接用模型对话页面 https://taotoken.net/chat 发一条消息,确认 Key 本身可用,再回头排查 CLI 侧的问题。
6. 常见报错逐个拆:401、local proxy failed、reading choices、OAuth
装 Claude Code 报错基本集中在下面几类,对照着看能快速定位。
401 Unauthorized:Key 不对或没读到。先确认echo $env:ANTHROPIC_API_KEY能打印出你的 Key,如果为空说明环境变量没生效,重开终端或改用永久写入方式。如果 Key 有值还报 401,去控制台确认这个 Key 没被删除、没过期、额度没耗尽。
local proxy failed / connection refused:Base URL 填错或网络不通。检查ANTHROPIC_BASE_URL是不是https://taotoken.net/api,注意结尾不要多加/v1或斜杠。然后用curl.exe https://taotoken.net/api测一下能不能通。
reading choices / 解析响应失败:这类报错通常是返回体不是预期的 JSON,常见原因是 Base URL 指到了错误路径,或者请求被中间层拦截返回了 HTML。确认 Base URL 精确到/api,不要带多余路径。
OAuth 相关报错:如果你之前登录过官方账号,本地可能残留了 OAuth 凭证,和 API Key 模式冲突。可以清理C:\Users\你的用户名\.claude下的凭证缓存文件,重新用 Key 模式配置。
claude 命令找不到:PATH 没刷新。方案 A 检查 npm 全局 bin 目录,方案 B 检查.local\bin,方案 C 一般不会出这问题。改完 PATH 必须重开终端。
npm 安装卡住或超时:npm 源网络问题,可以换源后重试,或者直接改用方案 C 的 WinGet。
排错时有个通用思路:先确认 CLI 本体在不在(claude --version),再确认配置读没读到(echo $env:...),最后确认网络通不通(curl 打一发)。三层逐层排除,基本都能定位。
如果你在接入过程中遇到文档没覆盖的问题,可以翻接入文档 https://taotoken.net/doc ,里面有针对不同客户端的配置示例。Key 管理相关的操作都在 API Keys 页面 https://taotoken.net/api-keys ,需要新建或吊销 Key 时去那里。
整套流程走下来,Windows 上装 Claude Code 最稳的组合其实是:WinGet 装 CLI + 环境变量配 TaoToken 三件套 + curl 验证链路。Node.js 那条路留给本来就有 Node 环境的机器,纯 Windows 用户没必要为了一个 CLI 背一整套运行时。装完记得把claude --version、交互对话、curl 三发验证都跑一遍,别等写业务代码时才发现配置没生效。