Claude Code runs natively on Windows 10 version 1809 or later and Windows Server 2019 or later, on x64 and ARM64, with no WSL and no Node.js. WSL 2 remains worth choosing for two reasons: sandboxed command execution is supported there and nowhere else on Windows, and a Linux toolchain stays on the Linux filesystem. Git for Windows is optional and changes which shell tool Claude gets.
- Native Windows is fully supported: Windows 10 1809+ or Server 2019+, x64 or ARM64.
- Sandboxing works only under WSL 2. Native Windows and WSL 1 do not support it.
- Git for Windows is optional. Without it Claude uses the PowerShell tool instead of Bash.
- Never run a WSL session against a repo on
/mnt/c. Every file read crosses a translation layer. - Four surfaces on Windows: CLI, desktop app, VS Code, JetBrains. They share one config.
Yes, and it no longer needs WSL
Claude Code ships a native Windows binary. As of August 2026 the documented requirements are Windows 10 version 1809 or later, or Windows Server 2019 or later, on an x64 or ARM64 processor, with 4 GB of RAM and either PowerShell or CMD as your shell. You do not need WSL, you do not need Node.js, and you do not need to run the installer as Administrator.
The install lands in your user profile at %USERPROFILE%\.local\bin\claude.exe and updates itself in the background. Everything below is about the parts that genuinely behave differently from macOS and Linux.
Every way to run Claude Code on a Windows machine, as of August 2026.
| Surface | What it is | Needs |
|---|---|---|
| Native CLI | claude in PowerShell or CMD | Windows 10 1809+ |
| CLI in WSL 2 | The Linux build inside a WSL distribution | WSL 2 enabled |
| Desktop app | GUI with sessions, diff review, terminal panes | x64 or ARM64 installer |
| VS Code extension | Inline diffs inside the editor | VS Code |
| JetBrains plugin | IntelliJ, PyCharm, WebStorm, Rider | A JetBrains IDE |
| Web | Cloud sessions in the browser | Nothing local |
Native, WSL 2, or WSL 1
This is the only decision on Windows that has a wrong answer, and the deciding factor is documented but easy to miss: sandboxed command execution is supported under WSL 2 and nowhere else on Windows.
The official capability split, checked August 2026.
| Option | Requires | Sandboxing | Choose it when |
|---|---|---|---|
| Native Windows | Nothing; Git for Windows optional | Not supported | Your projects and tools are Windows-native |
| WSL 2 | WSL 2 enabled | Supported | Linux toolchain, or you want sandboxed commands |
| WSL 1 | WSL 1 enabled | Not supported | Only if WSL 2 is unavailable to you |
# Fast: the repo lives on the Linux filesystem
cd ~/code/myapp && claude
# Slow: the repo lives on the Windows filesystem
cd /mnt/c/Users/you/code/myapp && claude
If your repo is on C:\ and you have no Linux toolchain requirement, run the native build. If your repo already lives inside the WSL filesystem, run the Linux build inside WSL. Mixing the two is the only combination that is straightforwardly bad.
The shell tool: Bash or PowerShell
On macOS and Linux, Claude Code shells out through Bash and that is the end of it. On native Windows it depends on what you have installed, and this changes what the agent can actually do.
- Without Git for Windows, Claude Code runs shell commands through the PowerShell tool.
- With Git for Windows, it uses Git Bash for the Bash tool, which is what almost every
CLAUDE.md, hook, and project script on the internet assumes. - WSL setups need neither. They already have a real Bash.
Git for Windows is documented as optional rather than required, but installing it is still the higher-compatibility choice, because POSIX shell syntax is the default assumption in nearly every repo convention file you will inherit.
winget install --id Git.Git -e
If Claude Code cannot find Git Bash after you install it, point at it explicitly in your settings file.
{
"env": {
"CLAUDE_CODE_GIT_BASH_PATH": "C:\\Program Files\\Git\\bin\\bash.exe"
}
}
Getting it on the machine
Four routes, all supported. The full walkthrough with the failure modes lives in the Windows install guide; this is the shortest form of each.
| Route | Command | Auto-updates |
|---|---|---|
| Native, PowerShell | irm https://claude.ai/install.ps1 | iex | Yes |
| Native, CMD | curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd | Yes |
| WinGet | winget install Anthropic.ClaudeCode | No, run winget upgrade |
| npm | npm install -g @anthropic-ai/claude-code | Yes, if the global dir is writable |
| Desktop app | Download the installer, x64 or ARM64 | Yes |
claude --version
claude doctor
ARM64, Windows Server, and enterprise machines
ARM64 Windows is a first-class target, not an afterthought. The npm package publishes both win32-x64 and win32-arm64 binaries, and the desktop app ships a separate ARM64 installer alongside the x64 one. Snapdragon-based Copilot+ machines run the native build without emulation.
Windows Server 2019 and later is in the supported matrix, which matters for build agents and jump boxes. Server installs are still per-user under %USERPROFILE%, so a machine shared by several accounts gets one install per account.
The failures that are specific to Windows
In roughly the order people hit them.
| Symptom | Cause | Fix |
|---|---|---|
'claude' is not recognized | Terminal predates the install | Open a new terminal |
| Still not recognised | Install dir missing from User PATH | Add %USERPROFILE%\.local\bin |
| Git operations behave oddly | No Git for Windows, PowerShell tool in use | winget install Git.Git, restart |
Scripts fail on \r | CRLF line endings | git config --global core.autocrlf input |
| Unusably slow under WSL | Repo on /mnt/c | Move the repo into the Linux filesystem |
| Browser login never returns in WSL | WSL cannot open a Windows browser | Copy the URL into Windows by hand |
| Sandboxing unavailable | Native Windows or WSL 1 | Use WSL 2 if you need it |
winget upgrade fails | Windows locks the running executable | Quit Claude Code, upgrade, relaunch |
$env:PATH -split ';' | Select-String '\.local\\bin'
# no output? add it to the User PATH
$currentPath = [Environment]::GetEnvironmentVariable('PATH', 'User')
[Environment]::SetEnvironmentVariable('PATH', "$currentPath;$env:USERPROFILE\.local\bin", 'User')
where.exe claude
Test-Path "$env:USERPROFILE\.local\bin\claude.exe"
Questions people ask
Yes. There is a native Windows build for Windows 10 version 1809 or later and Windows Server 2019 or later, on x64 and ARM64. It needs no WSL and no Node.js, and you do not need Administrator rights to install it.
Whichever matches where your code lives. WSL 2 is the only Windows environment that supports sandboxed command execution, so choose it if you need that or if your toolchain is Linux. Otherwise native is simpler and avoids the filesystem boundary entirely.
No, it is optional. Without it Claude Code runs shell commands through the PowerShell tool. With it, Claude Code uses Git Bash for the Bash tool, which is what most project scripts and CLAUDE.md conventions assume.
Almost always because the repository sits on the Windows filesystem under /mnt/c. Every file read crosses a translation layer and an agent makes thousands of them. Move the repository into the Linux filesystem under your WSL home directory.
Yes. The npm package publishes a win32-arm64 binary and the desktop app has a dedicated ARM64 installer, so Snapdragon machines run the native build rather than emulating x64.
Windows 10 version 1809 or later, and Windows Server 2019 or later, with 4 GB of RAM and an x64 or ARM64 processor, as of August 2026.
Yes, both are supported shells. They differ only in which install one-liner you run. If the command errors about an invalid statement separator you are in PowerShell running the CMD version, and vice versa.
Sources
Every figure above was read from these pages on August 2026. Vendors reprice without notice; if you find a stale number, tell us.
- Claude Code advanced setup system requirements, Windows setup, install routes
- Claude Code quickstart native, WinGet, and Homebrew install commands
- Troubleshoot installation and login PATH fixes and conflicting installs on Windows