[BUG] Crashes on Windows AArch64 [installed with choco]

Status Fixed / completed
Reported on v2.1.128
Maintainer reply None cached
Activity 5 comments · opened May 15, 2026 · closed May 21, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

when running claude

It first shows the dark/light mode selection screen, but then dies with no additional output.

What Should Happen?

Work the same as other platforms

Error Messages/Logs

Steps to Reproduce

choco install claude-code
claude

Claude Model

None

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1.128 (Claude Code)

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Windows Terminal

Additional Information

Installed with the choco package manager (Admin)

View original on GitHub ↗

5 Comments

github-actions[bot] · 5 months ago

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/52756
  2. https://github.com/anthropics/claude-code/issues/51898
  3. https://github.com/anthropics/claude-code/issues/28184

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

WyattBlue · 5 months ago

I asked claude-code to look at an old copy of the source and here's what it says

Windows-on-ARM (AArch64) fails in two distinct places in this leaked source.
  Neither is a build error of this repo (there's no package.json/CI here) — it's
   the runtime behavior encoded in the Claude Code source.

  1. Native installer: no win32-arm64 binary is published

  getPlatform() builds a platform key from arch + OS:

  // src/utils/nativeInstaller/installer.ts:91
  const arch =
    process.arch === 'x64' ? 'x64' : process.arch === 'arm64' ? 'arm64' : null
  ...
  return `${os}-${arch}`   // → "win32-arm64"

  Note the arch check does accept arm64, so getPlatform() itself does not throw
  the "Unsupported architecture" error at installer.ts:95. The string
  win32-arm64 is produced fine.

  The failure is downstream, in the binary download
  (src/utils/nativeInstaller/download.ts:436):

  const platformInfo = manifest.platforms[platform]
  if (!platformInfo) {
    logEvent('tengu_binary_platform_not_found', {})
    throw new Error(`Platform ${platform} not found in manifest for version
  ${version}`)
  }

  Anthropic's GCS manifest only ships darwin-x64, darwin-arm64, linux-x64/arm64
  (+musl), and win32-x64 — there is no win32-arm64 build. So
  manifest.platforms['win32-arm64'] is undefined, and the install throws
  Platform win32-arm64 not found in manifest. (Grepping the entire repo for
  win32-arm64 returns zero hits — confirming no Windows-on-ARM target exists
  anywhere in the codebase.)

  2. Builtin ripgrep: no arm64-win32 vendor directory

  In unbundled/node mode, the embedded ripgrep path is arch-derived
  (src/utils/ripgrep.ts:58):

  const command =
    process.platform === 'win32'
      ? path.resolve(rgRoot, `${process.arch}-win32`, 'rg.exe')   // →
  arm64-win32/rg.exe
      : path.resolve(rgRoot, `${process.arch}-${process.platform}`, 'rg')

  On native ARM64 this resolves to vendor/ripgrep/arm64-win32/rg.exe, which
  isn't vendored (only x64-win32 is), so Grep/file-search would fail with
  ENOENT.

  Why it "works" for some people anyway

  Windows-on-ARM can run x64 binaries under emulation. If you install the x64
  build of Node, process.arch reports x64, you get win32-x64, and both the
  published binary and the vendored ripgrep exist. So Claude Code on Windows ARM
   only works via x64 emulation — there is no native AArch64 path in this
  source.
WyattBlue · 5 months ago

I got further with 2.1.133, but it still dies before I could ask a question.

claude || echo "bad"
bad
PS C:\Users\wyatt\auto-editor> claude --version
2.1.133 (Claude Code)

WyattBlue · 4 months ago

2.1.138 fixes this.

github-actions[bot] · 3 months ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.