[BUG] Native installer installs x86_64 binary on Apple Silicon (arm64) Macs

Resolved 💬 3 comments Opened Jan 31, 2026 by mikeschinkel Closed Feb 3, 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 installing Claude Code via the native installer (curl -fsSL https://claude.ai/install.sh | bash -s latest) on an Apple Silicon Mac, the installed binary is x86_64 instead of arm64.

The install script correctly detects arm64 and downloads the correct darwin-arm64 binary from GCS. However, after the script completes, the binary at ~/.local/bin/claude is x86_64.

This causes a Bun warning on every launch:

warn: CPU lacks AVX support, strange crashes may occur. Reinstall Bun or use *-baseline build:
  https://github.com/oven-sh/bun/releases/download/bun-v1.3.5/bun-darwin-x64-baseline.zip

What Should Happen?

The installer should install the arm64 binary on Apple Silicon Macs. Running file ~/.local/bin/claude should show Mach-O 64-bit executable arm64.

Error Messages/Logs

$ claude
warn: CPU lacks AVX support, strange crashes may occur. Reinstall Bun or use *-baseline build:
  https://github.com/oven-sh/bun/releases/download/bun-v1.3.5/bun-darwin-x64-baseline.zip

$ file ~/.local/bin/claude
/Users/mikeschinkel/.local/bin/claude: Mach-O 64-bit executable x86_64

$ uname -m
arm64

Steps to Reproduce

  1. On an Apple Silicon Mac (M1/M2/M3/M4), confirm architecture:

``bash
uname -m # should return arm64
``

  1. Remove any existing installation:

``bash
rm -rf ~/.claude ~/.local/bin/claude
npm uninstall -g @anthropic-ai/claude-code # if previously installed via npm
``

  1. Install via native installer:

``bash
curl -fsSL https://claude.ai/install.sh | bash -s latest
``

  1. Check the installed binary architecture:

``bash
file ~/.local/bin/claude
``

  1. Observe it shows x86_64 instead of arm64

Claude Model

None

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.27

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

Root cause analysis:

The bug is not in install.sh — that script downloads the correct arm64 binary. The problem occurs when the script executes:

"$binary_path" install ${TARGET:+"$TARGET"}

This claude install subcommand installs the x86_64 binary instead of copying itself.

Workaround:

Manually download and replace the binary after installation:

curl -fsSL -o ~/.local/bin/claude "https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/2.1.27/darwin-arm64/claude"
chmod +x ~/.local/bin/claude

Additional Information

  • Hardware: M4 Mac Mini
  • Verified the GCS bucket contains correct arm64 binary:

``bash
curl -fsSL -o /tmp/claude-arm64-test "https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/2.1.27/darwin-arm64/claude"
file /tmp/claude-arm64-test
# Returns: Mach-O 64-bit executable arm64
``

  • The bundled Bun at ~/.claude/local/bin/bun is also x86_64

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗