今天终于跑通了 Windows 下运行 Claoude Code 的全流程,不借助 WSL ,原生运行。起因是自己需要一个可以长期运行任务的云桌面,这方面还是 Windows 最好用。不得不说相比于 Linux/macOSWindows 下运行 Claude Code 实在太多坑了。

感谢 LD 巨佬 哈雷彗星《 Claude Code 终极版 FAQ 指南 》 ,在这份指南的指导下,还有开源社区朋友的帮助下,终于跑通了全流程,在这里记录一下,避免更多的朋友踩坑。

ClaudeCode

环境说明

先说一下我的环境:

  • OS: Windows 10 Enterprise LTSC 2021
  • Shell: PowerShell 5 -> PowerShell 7

我是在全新安装的 Windows 10 Enterprise LTSC 2021 系统中进行,使用系统自带的 PowerShell 5 开始 ,流程中会安装最新的 PoserShell 7 并使用 PS7 完成后续。根据论坛大佬的说法,PS7 很好用,自带的 PS5 不好用,因此下面的流程包含了安装 PS7 的流程,大家可以自己体验一下。

主要流程

以下内容主要来自 《 Claude Code 终极版 FAQ 指南 》 和实践补充。

打开 PowerShell 5 并安装 WinGet:

$progressPreference = 'silentlyContinue'
Install-PackageProvider -Name NuGet -Force | Out-Null
Install-Module -Name Microsoft.WinGet.Client -Force -Repository PSGallery | Out-Null
Write-Host "Using Repair-WinGetPackageManager cmdlet to bootstrap WinGet..."
Repair-WinGetPackageManager -AllUsers

PoserShell 5 中使用 WinGet 安装 PoserShell 7

winget install Microsoft.PowerShell

打开 PoserShell 7 并使用 winget 安装其他依赖,后续全部在 PS7 中进行:


# 必须,安装 fnm 用于管理 node 环境,或使用现有环境
winget install Schniz.fnm
# 可选,安装 Git
winget install --id Git.Git -e --source winget
# 可选,安装 notepad4
winget install zufuliu.notepad4
# 可选,安装 Windows Terminal
winget install -e --id Microsoft.WindowsTerminal
# 可选,安装 Notepad++
winget install -e --id Notepad++.Notepad++

下面使用 fnm 安装特定版本的 node 运行环境,首先需要对 FNM 给予一个环境启动,否则安装的 node 无法使用,因此首先预配置环境:

New-Item –Path $Profile –Type File –Force
notepad $profile

之后将以下内容写入该文件并保存:

fnm env --use-on-cd --shell powershell | Out-String | Invoke-Expression

下面开始正式安装 nodejs:

fnm install lts/krypton
fnm use lts/krypton

全局安装 Claude Code:

npm install -g @anthropic-ai/claude-code

之后就可以愉快的使用 Claude Code 了。

Claude Code  在 Windows PowerShell7 运行

常见问题

配置 settings.json 不生效

默认情况下这样安装的 Claude Code 会从这个位置读取配置:

C:\Users\<YOUR_NAME>\.claude

官方流程在安装结束后就完成了,可以直接登录使用。如果你需要修改配置将 Claude Code 接入第三方 API,就需要修改这里的 settings.json 配置文件,可以使用 CC-Switch 或是手动编写,但是修改后会发现不生效。

经过调研,发现是最新版的 Claude Code 修改了一个参数,导致启动时一定要登录,这里可以手动修改一下 C:\Users\<YOUR_NAME>\.claude.json 中的这个参数,即可正常使用:

hasCompletedOnboarding: true

将配置中的 false 改为 true ,再重新运行 Claude Code 即可。

这个问题卡了我两天,一度打算放弃回到其他 OS,最后终于在 [这里](https://github.com/farion1231/cc-switch/issues/404#issuecomment-3677768452 找到了答案,因此特别记录一下。

Refs

最后修改:2026 年 01 月 09 日
如果觉得我的文章对你有用,请随意赞赏