Claude Code v2.1.113 讓 Intel Mac 整個掛掉:根因、影響範圍與暫時解法
此為深度內容 — 這篇文章深度分析 Intel Mac 支援斷裂,探討 CLI 架構轉變影響。
需要登入才能閱讀完整文章。
受影響範圍:2012 年(含)以前出廠的 Intel Mac(Ivy Bridge 架構,i5-3xxx / i7-3xxx 系列)。這些 CPU 不支援 AVX2 指令集,而 v2.1.113 的 native binary 要求 AVX2,執行後立即 SIGILL(exit code 132)。2013 年後(Haswell 架構起)的 Intel Mac 有 AVX2,理論上不受影響。
Claude Code v2.1.113 在 2026 年 4 月中旬釋出,帶來大量功能更新與安全性修補,但也在 Intel Mac 用戶之間掀起一場無聲的災難——整個 CLI 更新完就直接無法啟動。
這次出了什麼事
v2.1.113 的 changelog 第一條寫著:
Changed the CLI to spawn a native Claude Code binary (via a per-platform optional dependency) instead of bundled JavaScript
這是一個重大的架構轉變。在 v2.1.112 及之前,Claude Code CLI 是以 Node.js 執行 bundled JavaScript 的方式運作,跨平台相容性極佳。v2.1.113 開始,CLI 改為在啟動時呼叫一個針對當前平台預編譯的 native binary。
問題在於:Anthropic 提供的 macOS x86_64 native binary 要求 AVX2 指令集,而 2012 年(含)以前的 Intel Mac 不支援 AVX2。
Intel Mac 用戶更新後,雖然安裝的是正確的 macOS Mach-O binary,但執行時核心立刻送出 SIGILL(Illegal Instruction),程序以 exit code 132 終止。
受影響的範圍
此次的衝擊比以往更廣。
v2.1.113 之前,Intel Mac 用戶在 Cowork(Claude Desktop 內嵌功能)上就已經壞了,但原因不同:Cowork 依賴獨立下載的 claude-code-vm binary,那個 binary 有打包錯誤,Intel Mac 拿到的是 Linux ELF 格式執行檔(GitHub Issue #48827),macOS 無法執行。同樣是 exit code 132,但是打包 bug 而非 CPU 指令集問題。早在 2026 年 1 月(當時版本約 claude-code-vm v2.1.x 早期、Claude Desktop v1.x)就有人開了 Feature Request 要求支援 Intel Mac Cowork(Issue #20787),未獲解決就關閉——彼時 CLI 本身仍可正常使用,只有 Cowork 受限。
v2.1.113 之後,連 CLI 本身也壞了:
| 功能 | v2.1.112 及以前(Intel Mac) | v2.1.113 之後(Intel Mac) |
|---|---|---|
| Claude Code CLI | 正常(JavaScript 執行) | SIGILL,exit 132 |
| Cowork(Claude Desktop) | 壞(Linux ELF bug) | 壞(同上) |
錯誤現象
更新後執行 claude 或任何 Claude Code 指令,直接出現:
Illegal instruction: 4
或:
Claude Code process exited with code 132
沒有任何有意義的錯誤訊息,沒有提示,就這樣靜靜地掛掉。對於不熟悉 SIGILL 的用戶來說,根本不知道發生什麼事。
技術根因
SIGILL(Signal 4,exit code 128+4=132)代表 CPU 嘗試執行它不支援的指令。
v2.1.113 的 @anthropic-ai/claude-code-darwin-x64 npm 包內容是正確的 macOS Mach-O 64-bit binary,格式沒有問題。問題出在這個 binary 的編譯目標 CPU 世代:它要求 AVX2 指令集(或更新的指令),而 AVX2 是 2013 年 Intel Haswell 架構才加入的功能。
v2.1.113 的 install.cjs 後安裝腳本甚至直接點名:
“the x64 build needs AVX, which Rosetta doesn’t emulate”
2012 年(含)以前出廠的 Intel Mac(Sandy Bridge / Ivy Bridge 架構)只有 AVX1.0,沒有 AVX2。當 binary 執行到 AVX2 指令時,CPU 不認識,立刻觸發 SIGILL。
受影響的 Intel Mac 大致為:
- 2012 年(含)以前出廠的機型(Ivy Bridge 架構,如 i7-3xxx、i5-3xxx 系列)
- 部分 2013 年機型視 CPU 型號而定
2013 年後(Haswell 架構起)的 Intel Mac 有 AVX2,理論上不受影響。
Anthropic 的 native binary 平台覆蓋範圍:
- macOS arm64(Apple Silicon):正常
- macOS x64(Intel,但要求 AVX2,2012 以前機型不支援):舊機型 SIGILL
- Linux x86_64:正常
- Windows x86_64:正常
暫時解法:降版到 v2.1.112 並鎖死
在 Anthropic 正式修復之前,完整流程分三步,順序不能錯:
步驟一:降版
npm install -g @anthropic-ai/[email protected] --force
若 npm 出現 ENOTEMPTY 錯誤,先手動移除舊目錄再裝:
rm -rf ~/.local/share/fnm/node-versions/$(node --version)/installation/lib/node_modules/@anthropic-ai/claude-code
npm install -g @anthropic-ai/[email protected] --force
確認版本:
npm list -g @anthropic-ai/claude-code
# 應顯示 @anthropic-ai/[email protected]
v2.1.112 的 CLI 仍使用 bundled JavaScript 執行,不依賴 native binary,在 Intel Mac 上可以正常運作。降版不影響 ~/.claude/ 目錄內的任何設定、對話紀錄或專案資料。
步驟二:鎖死 binary(chflags immutable)
降版確認後,用 macOS 的 uchg(user immutable)旗標將整個套件目錄設為不可覆蓋。這比 chmod 更強——即使 npm 有寫入權限也無法替換檔案:
chflags -R uchg ~/.local/share/fnm/node-versions/$(node --version)/installation/lib/node_modules/@anthropic-ai/claude-code/
注意:必須先降版再 lock,否則會把壞版本鎖死。
步驟三:停用自動更新
在 ~/.claude/settings.json 加入:
{
"autoUpdates": false,
"env": {
"DISABLE_AUTOUPDATER": "1"
}
}
並在 ~/.zshrc 加入環境變數(最保險):
export DISABLE_AUTOUPDATER=1
未來若 Anthropic 修好 Intel Mac 支援、需要手動升版時,先解鎖再裝:
chflags -R nouchg ~/.local/share/fnm/node-versions/$(node --version)/installation/lib/node_modules/@anthropic-ai/claude-code/
npm install -g @anthropic-ai/claude-code@<新版本>
為什麼是現在?source code 洩漏的背景
v2.1.113 在 2026 年 4 月 17 日釋出,距離一件大事剛好過了 17 天。
2026 年 3 月 31 日,Anthropic 意外在 npm 包裡附上了一個 59.8MB 的 JavaScript source map(.map 檔),導致 Claude Code 的 512,000 行原始碼完整曝光。這個洩漏迅速在 X 上獲得 2,900 萬次瀏覽,重新打包的版本成為 GitHub 史上下載最快的 repository 之一。Anthropic 事後表示「這是人為失誤造成的打包問題,不涉及客戶資料外洩」。
從 bundled JavaScript 切換到 native binary,工程上最明顯的附帶效果就是大幅提升逆向工程的門檻——JavaScript 即使 minify 過,搭配 source map 幾乎等同於完整原始碼;compiled native binary 則需要數倍的成本才能還原邏輯。
時間線的吻合讓這個推論相當合理:洩漏 → 17 天 → 切換至 native binary。Anthropic 未公開確認這是原因,但從工程決策的角度看,這個順序很難只是巧合。
這件事反映了什麼
Intel Mac 在 Apple Silicon 問世後逐漸被邊緣化,但在 2026 年仍有相當數量的用戶日常使用。Cowork 從一開始就不支援 Intel Mac,而 v2.1.113 將同樣的問題擴散到整個 CLI,讓許多原本可以正常工作的用戶在毫無預警的情況下更新後發現工具完全失效。
如果 Anthropic 計畫放棄 Intel Mac 支援,理應明確公告,讓用戶有機會決定是否繼續使用。以靜默方式讓工具壞掉,這不是一個好的工程實踐。
目前建議 Intel Mac 用戶:
- 先降版到 v2.1.112 恢復正常使用
- 追蹤 GitHub Issues 等待官方修復或聲明
- 如果有意願,可在 GitHub 上對相關 issue 留言或 upvote,增加問題的能見度
Sources:
- Cowork downloads Linux binary instead of macOS on Intel Mac (exit code 132) · Issue #48827
- FEATURE: Cowork Support for Intel Mac · Issue #20787
- Claude Code CHANGELOG.md
- @anthropic-ai/claude-code - npm
- Anthropic accidentally exposes Claude Code source code - The Register
- Here’s what that Claude Code source leak reveals - Ars Technica
想看更多作品、服務與主站整理,請前往 stanwu.org。