1. Windows 上装 Claude Code,为什么先要搞定 nvm 和 git bash
Claude Code 是 Anthropic 推出的终端 AI 编程助手,能在命令行里直接读写项目文件、跑命令、改代码,适合习惯在终端里干活的开发者。但它在 Windows 上有个硬性前提:需要一个类 Unix 的 shell 环境,也就是 Git Bash。同时它本身是 Node.js 写的,得靠 npm 全局安装。这两个条件缺一个,装完要么跑不起来,要么一执行就报错。
很多人第一次装 Claude Code 卡住,不是卡在 Claude Code 本身,而是卡在 Node 版本混乱和 Git Bash 路径没配。Windows 上如果直接去官网下 Node.js 安装包,一台机器只能留一个版本,后面想切到别的版本就得卸载重装,项目一多非常难受。nvm(Node Version Manager)就是来解决这个问题的:它让你同时装多个 Node 版本,一条命令来回切,还避开了全局 npm 权限混乱的坑。
这篇记录按我实际跑通的顺序来:先装 nvm,用它装并切换 Node,配好 npm 源,再装 Git 配好 Git Bash 路径,最后装 Claude Code 并验证能用。每一步都给可复制的命令和检查动作,你照着走一遍基本能一次跑通。适合刚接触 Claude Code、Node 环境还没理顺的 Windows 用户。
2. 前置准备:nvm、Node、npm、Git Bash 各是什么关系
动手前先把几个名词理清,不然后面命令容易懵。
Node.js 是基于 Chrome V8 引擎的 JavaScript 运行时,让 JS 能脱离浏览器在终端跑。Claude Code 就依赖它。
nvm 是 Node 版本管理器,负责装多个 Node 版本并切换。它本身要先装,装完才能用它装 Node。
npm 是 Node 自带的包管理器,用来下载安装依赖包,Claude Code 就是通过npm install -g全局装的。
npx 是临时执行包的工具,和 npm 的区别是 npm 会把包持久装到 node_modules 或全局占硬盘,npx 跑完可以不保留。
Git Bash 是 Git for Windows 自带的一个轻量 Unix 环境(基于 MSYS2),里面有 bash.exe。Claude Code 内部很多逻辑会调用 Linux 风格的 .sh 脚本,需要这个 bash.exe 来翻译执行,所以 Windows 上必须配。
| 名词 | 作用 | 和 Claude Code 的关系 |
|---|---|---|
| Node.js | JS 运行时 | Claude Code 的运行基础 |
| nvm | 管理多个 Node 版本 | 解决版本切换和权限问题 |
| npm | 包管理器 | 用来全局安装 Claude Code |
| Git Bash | 类 Unix shell 环境 | Claude Code 在 Windows 上必需 |
理清这层关系后,顺序就明确了:nvm → Node → npm 源 → Git Bash → Claude Code。
3. 可复制配置:nvm 安装、Node 切换、npm 源与 Git Bash 路径
3.1 安装 nvm
去 nvm 的 Windows 版本发布页下载安装包(搜 nvm-windows 即可找到),一路下一步装完。装完后关掉当前终端重新开一个,让环境变量生效。验证:
nvm version能打印出版本号就说明 nvm 可用了。如果提示找不到命令,多半是终端没重启,或者安装时没勾选加入 PATH。
3.2 用 nvm 装 Node 并切换
先看有哪些版本可装:
nvm list available挑一个稳定版安装,比如 20.17.0:
nvm install 20.17.0装完切换到这个版本:
nvm use 20.17.0查看已安装的版本列表,确认当前用的是哪个:
nvm ls再验证 Node 和 npm 都跟着切过来了:
node -v npm -v这里有个容易踩的点:nvm use只对当前终端会话生效,新开终端可能回到默认版本。如果你希望固定,可以用nvm use 20.17.0后确认,或者设置默认版本。切换后node -v和npm -v输出的版本要对得上,不然说明 PATH 里还有别的 Node 残留。
3.3 配置 npm 源
默认 npm 源在国内拉包可能慢,换成国内镜像会顺很多:
npm config set registry https://registry.npmmirror.com验证是否生效:
npm config get registry输出你刚设的地址就对了。这一步不是必须,但装 Claude Code 这种全局包时能明显省时间。
3.4 安装 Git 并配置 Git Bash 路径
如果机器上还没有 Git,去 Git for Windows 官网下载安装。装完后找到 bash.exe 的位置,通常在Git\bin\bash.exe。假设你的路径是E:\软件\Git\bin\bash.exe,需要把它写进环境变量,变量名固定为CLAUDE_CODE_GIT_BASH_PATH。
在 Windows 里设置环境变量的方式:搜索“环境变量” → 编辑系统环境变量 → 环境变量 → 新建用户变量,变量名填CLAUDE_CODE_GIT_BASH_PATH,变量值填你的 bash.exe 完整路径。
设置完同样要重开终端。验证一下变量是否读到:
echo %CLAUDE_CODE_GIT_BASH_PATH%能打印出路径就说明配好了。这一步是 Claude Code 在 Windows 上能不能跑起来的关键,路径写错或变量名拼错都会导致后面启动失败。
4. 安装 Claude Code 并验证请求成功
环境齐了,装 Claude Code 就一行:
npm install -g @anthropic-ai/claude-code装完验证版本:
claude -v能打印版本号说明安装成功。然后直接启动:
claude第一次启动可能会遇到两个常见情况。
一是提示无法连接或卡在引导页。可以在用户目录(~)下找到.claude.json,在末尾加上一个字段:
{ "installMethod": "unknown", "autoUpdates": true, "hasCompletedOnboarding": true }注意 JSON 里字段之间要有英文逗号,位置别放错,加完保存再启动。
二是想换用别的模型。在~目录下找到settings.json,写入对应配置后重启 Claude Code。启动后可以直接问它“你是什么模型”,看回答确认是否切到了你配的模型。
如果你打算长期在终端里用 AI 辅助编码、跑 Agent 任务,可以了解下 Coding Plan 这类长期方案,比每次单独配模型省心:https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
想先快速验证模型对话效果,可以直接在模型对话页试:https://taotoken.net/model-chat?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
5. 本篇常见错排查
装的过程中最容易卡在下面几个地方,对照着查。
nvm 命令找不到:终端没重启,或者安装时没加入 PATH。重开终端,还不行就检查环境变量里有没有 nvm 的路径。
nvm use 后 node -v 没变:PATH 里存在另一个 Node 安装(比如之前官网装的),它优先级更高。去控制面板卸载那个独立 Node,或者调整 PATH 顺序,让 nvm 的路径在前。
npm 装包报权限错误:说明你在用系统级 Node 而不是 nvm 管理的。确认nvm ls里当前版本是你要的,且node -v输出和它一致。
Claude Code 启动报找不到 bash:CLAUDE_CODE_GIT_BASH_PATH没设、设错,或者路径里有中文/空格导致解析失败。确认变量名拼写完全正确,路径指向真实的 bash.exe。
启动卡在引导页:按第 4 节在.claude.json里加hasCompletedOnboarding: true,注意 JSON 格式别写坏。
换模型后没生效:settings.json位置放错,或者改完没重启 Claude Code。确认文件在~目录下,改完完全退出再启动。
排查时建议每改一处就重开终端验证一次,别一次改一堆,不然出问题不好定位。
6. 环境跑通后,接入和排障去哪查
Claude Code 装好只是起点,后面接入 API、配 Key、调模型参数这些才是日常。如果你在接入环节遇到报错,或者想确认 Key 怎么配,直接看 API Keys 和接入文档最省事:
API Keys 管理:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
接入文档:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
控制台入口:https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
如果你用的是 Claude Code 这类终端工具,Anthropic 兼容接入的说明在这里:https://taotoken.net/claude-code-anthropic?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
官网首页:https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
API 地址统一用:https://taotoken.net/api
最后留个我自己的习惯:nvm 切完版本后,一定顺手跑一遍node -v && npm -v && claude -v,三个版本号都正常再开始干活,能省掉很多“昨天还好好的今天怎么跑不起来”的排查时间。