[BUG] plugin marketplace list crashes with "Illegal instruction" on AVX-only CPUs (Bun baseline build, Win10)
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?
Bug: claude plugin marketplace list crashes with "Illegal instruction" on AVX-only CPUs (Bun baseline build)
Summary
On Windows 10 with a CPU that supports SSE4.2 + AVX but not AVX2, the bundled Claude Code binary (claude.exe, Bun v1.3.14 baseline build) crashes with panic: Illegal instruction whenever a plugin-related subcommand is invoked (e.g. claude plugin marketplace list --json). This blocks the VS Code / Antigravity extension's "Plugins" UI entirely (extension reports Failed to load plugins: Claude CLI exited with code 3).
The crash is reproducible from a plain PowerShell session — it is not specific to the IDE extension. The root cause appears to be the Bun baseline build executing an instruction the CPU does not support, despite Bun correctly detecting no_avx2 at startup.
Environment
| | |
|---|---|
| Claude Code version | 2.1.140-win32-x64 (Antigravity extension build) |
| Binary path | C:\Users\<user>\.antigravity\extensions\anthropic.claude-code-2.1.140-win32-x64\resources\native-binary\claude.exe |
| Bundled Bun | v1.3.14 (d2989145) — Windows x64 baseline build |
| OS | Windows 10 Pro, version 10.0.19045 (22H2), 64-bit |
| CPU | Intel Core i5-3230M @ 2.60 GHz (Ivy Bridge, Family 6 Model 58 Stepping 9) |
| CPU features (reported by Bun) | sse42 avx — no AVX2 |
| RAM | 6.31 GB |
| Shell | PowerShell 5.1 (Windows PowerShell) |
| IDE | Antigravity (VS Code derivative) — also reproduces from bare powershell.exe |
Reproduction
- Open VS Code / Antigravity, open Claude Code extension panel, click Plugins.
- Extension errors:
Failed to load plugins: Claude CLI exited with code 3: ...(full output in "First crash" below). - Open plain PowerShell and run:
``powershell``
& "C:\Users\<user>\.antigravity\extensions\anthropic.claude-code-2.1.140-win32-x64\resources\native-binary\claude.exe" plugin marketplace list --json
- Process crashes with a Bun panic and exit code 3. Reproduces every time.
Observed behavior
Two consecutive runs produced two different panic messages at different addresses — strong indicator of an instruction-level issue hit on different code paths, not a deterministic logic bug.
First crash (invoked via extension)
panic(main thread): Failed to start HTTP Client thread: Unexpected
Full Bun banner (relevant fields):
Bun v1.3.14 (d2989145) Windows x64 (baseline)
Windows v.win10_cu
CPU: sse42 avx
Features: Bun.stderr(2) Bun.stdin(2) Bun.stdout(2) fetch jsc no_avx2
spawn(2) standalone_executable yaml_parse claude_code
Elapsed: 3467ms | User: 1265ms | Sys: 453ms
RSS: 0.25GB | Peak: 0.25GB | Commit: 0.29GB | Faults: 64094 | Machine: 6.31GB
Crash report URL emitted by Bun:
https://bun.report/1.3.14/e_1d298914mgggkEugogigB+jmrX4hy5Ruk95mByzq5mByi43mB__ut7l2CA0eNpzS8zMSU1RKMlXKC5JLCpR8AgJCVBwzslMzStRKMkoSk1MsVIIzUutKEhNLklNAQB7XBB9
Second crash (same command, plain PowerShell)
panic(main thread): Illegal instruction at address 0x7FF7E0C6EF90
Banner this time loaded a different feature/builtin set (e.g. fetch, spawn, ws, node:tls, node:dns, node:http, node:zlib etc. were not initialized — the crash happened earlier):
Bun v1.3.14 (d2989145) Windows x64 (baseline)
CPU: sse42 avx
Features: Bun.stderr(2) Bun.stdin(2) Bun.stdout(2) jsc no_avx2
standalone_executable claude_code
Elapsed: 2768ms | User: 531ms | Sys: 531ms
RSS: 0.21GB | Peak: 0.21GB | Commit: 0.24GB | Faults: 56569 | Machine: 6.31GB
Crash report URL:
https://bun.report/1.3.14/e_1d298914kggggEugggigBg53vG6+n22C6ro42Cqvj22Cwmh22Cwi45iC8yj5iCwvu7iCq8t7iCi022iC2tggsCq29/rCw3g5xCq/m5xCiw544C+0h1gD___A3u//Bhnoknf
Expected behavior
claude plugin marketplace list --json returns a JSON list of available marketplace plugins (or an empty array) without crashing, and the extension's Plugins tab loads.
Root-cause hypothesis
This is a Bun baseline-build vs. AVX-only CPU issue, not a Claude Code logic bug:
- The CPU is an Ivy Bridge i5-3230M: supports SSE4.2 + AVX, does not support AVX2 (AVX2 first shipped on Haswell, 2013).
- Bun detects this correctly — it ships the baseline Windows build and prints
no_avx2in the features list. - Despite that, the process panics with
Illegal instructionat a fixed address (0x7FF7E0C6EF90) on at least one run, and earlier with a thread-startup failure that is consistent with a SIGILL during thread bootstrap. - The two different panic sites on two runs (different code paths loaded each time) are consistent with the baseline build still containing one or more instructions outside the SSE4.2/AVX baseline ISA — likely in code reached during plugin/marketplace network setup.
In other words: the Bun baseline binary appears to execute an AVX2 (or newer) instruction somewhere along the plugin marketplace list code path, even though it advertises no_avx2 support.
This should be reproducible by Anthropic on any Sandy Bridge / Ivy Bridge / pre-Haswell x64 Windows machine.
Impact
- Plugins feature is completely unusable for any user on a pre-Haswell CPU. The Plugins tab in the extension just errors.
- Other Claude Code functionality appears unaffected so far — the crash is specific to subcommands that touch the marketplace networking path.
- No workaround from user side is possible without downgrading the extension (and even then, only if the previous Bun didn't have the same regression).
Suggested next steps for Anthropic
- Confirm Bun version: verify whether Bun v1.3.14's Windows baseline build is known to contain non-baseline instructions. If so, pin Claude Code to a Bun version without that regression, or rebuild from source with stricter
-marchflags. - Add a CPU capability gate: at startup, if AVX2 is required by any code path, fail fast with a clear error message rather than crashing in Bun's thread bootstrap or in the middle of an HTTP setup.
- Forward to Bun: the two Bun crash report URLs above already contain redacted stack traces — file companion issues at
oven-sh/bunreferencing the addresses. - Extension UX: when the underlying CLI exits with code 3 and stderr contains
panic(, surface a clearer message in the extension ("Claude CLI crashed — see logs") instead of the raw error blob.
Crash report URLs (Bun-side, contain redacted stack traces)
- https://bun.report/1.3.14/e_1d298914mgggkEugogigB+jmrX4hy5Ruk95mByzq5mByi43mB__ut7l2CA0eNpzS8zMSU1RKMlXKC5JLCpR8AgJCVBwzslMzStRKMkoSk1MsVIIzUutKEhNLklNAQB7XBB9
- https://bun.report/1.3.14/e_1d298914kggggEugggigBg53vG6+n22C6ro42Cqvj22Cwmh22Cwi45iC8yj5iCwvu7iCq8t7iCi022iC2tggsCq29/rCw3g5xCq/m5xCiw544C+0h1gD___A3u//Bhnoknf
---
Filed by a Claude Code user on Win10 + Ivy Bridge CPU. Happy to provide additional traces or test patches.
What Should Happen?
Running claude plugin marketplace list --json should return a JSON array of available marketplace plugins (or an empty array) and exit cleanly with code 0.
The VS Code / Antigravity extension's "Plugins" tab should populate with the marketplace list instead of showing "Failed to load plugins: Claude CLI exited with code 3".
At minimum, on a CPU/OS combination that the bundled Bun build does not actually support, the CLI should fail fast with a clear human-readable error (e.g. "This build requires AVX2 — your CPU does not support it") rather than crashing with an unhandled Bun panic.
Error Messages/Logs
Run 1 — invoked via the Antigravity extension's Plugins tab:
============================================================
Bun v1.3.14 (d2989145) Windows x64 (baseline)
Windows v.win10_cu
CPU: sse42 avx
Args: "c:\Users\<user>\.antigravity\extensions\anthropic.claude-code-2.1.140-win32-x64\resources\native-binary\claude.exe" "plugin" "marketplace" "list" "--json"
Features: Bun.stderr(2) Bun.stdin(2) Bun.stdout(2) fetch jsc no_avx2 spawn(2) standalone_executable yaml_parse claude_code
Builtins: "bun:main" "node:assert" "node:async_hooks" "node:buffer" "node:child_process" "node:crypto" "node:dns" "node:events" "node:fs" "node:fs/promises" "node:http" "node:https" "node:module" "node:net" "node:os" "node:path" "node:path/posix" "node:path/win32" "node:perf_hooks" "node:process" "node:readline" "node:stream" "node:stream/consumers" "node:stream/promises" "node:string_decoder" "node:timers/promises" "node:tls" "node:tty" "node:url" "node:util" "node:vm" "node:zlib" "ws" "node:http2"
Elapsed: 3467ms | User: 1265ms | Sys: 453ms
RSS: 0.25GB | Peak: 0.25GB | Commit: 0.29GB | Faults: 64094 | Machine: 6.31GB
panic(main thread): Failed to start HTTP Client thread: Unexpected
oh no: Bun has crashed. This indicates a bug in Bun, not your code.
Crash report: https://bun.report/1.3.14/e_1d298914mgggkEugogigB+jmrX4hy5Ruk95mByzq5mByi43mB__ut7l2CA0eNpzS8zMSU1RKMlXKC5JLCpR8AgJCVBwzslMzStRKMkoSk1MsVIIzUutKEhNLklNAQB7XBB9
Process exit code: 3
Run 2 — same command from a plain PowerShell session:
============================================================
Bun v1.3.14 (d2989145) Windows x64 (baseline)
Windows v.win10_cu
CPU: sse42 avx
Args: "C:\Users\<user>\.antigravity\extensions\anthropic.claude-code-2.1.140-win32-x64\resources\native-binary\claude.exe" "plugin" "marketplace" "list" "--json"
Features: Bun.stderr(2) Bun.stdin(2) Bun.stdout(2) jsc no_avx2 standalone_executable claude_code
Builtins: "bun:main" "node:assert" "node:async_hooks" "node:buffer" "node:child_process" "node:crypto" "node:events" "node:fs" "node:fs/promises" "node:http" "node:https" "node:module" "node:net" "node:os" "node:path" "node:path/win32" "node:perf_hooks" "node:process" "node:readline" "node:stream" "node:stream/consumers" "node:timers/promises" "node:tls" "node:tty" "node:url" "node:util" "node:zlib" "node:http2"
Elapsed: 2768ms | User: 531ms | Sys: 531ms
RSS: 0.21GB | Peak: 0.21GB | Commit: 0.24GB | Faults: 56569 | Machine: 6.31GB
panic(main thread): Illegal instruction at address 0x7FF7E0C6EF90
Crash report: https://bun.report/1.3.14/e_1d298914kggggEugggigBg53vG6+n22C6ro42Cqvj22Cwmh22Cwi45iC8yj5iCwvu7iCq8t7iCi022iC2tggsCq29/rCw3g5xCq/m5xCiw544C+0h1gD___A3u//Bhnoknf
Process exit code: 3
Note: two consecutive runs of the same command produce two different panics at different points (HTTP thread bootstrap vs. illegal instruction at a fixed address). This is consistent with a CPU-instruction issue in the Bun "baseline" build being hit on slightly different code paths each run — not a deterministic logic bug.
Steps to Reproduce
- Use a Windows machine with a 64-bit CPU that supports SSE4.2 + AVX but NOT AVX2 (e.g. any Sandy Bridge / Ivy Bridge Intel CPU — in my case an Intel Core i5-3230M, Family 6 Model 58 Stepping 9).
- Install Antigravity (or VS Code) and the Claude Code extension version 2.1.140-win32-x64. This bundles
claude.exe(Bun v1.3.14, baseline Windows build) at:
C:\Users\<user>\.antigravity\extensions\anthropic.claude-code-2.1.140-win32-x64\resources\native-binary\claude.exe
- Reproduction A — via the extension UI:
a. Open the Claude Code panel.
b. Click the "Plugins" tab.
c. Observe the error: Failed to load plugins: Claude CLI exited with code 3: ... followed by a Bun panic banner.
- Reproduction B — confirms the bug is in the binary, not the extension:
a. Open a plain PowerShell window (no extension involvement).
b. Run:
& "C:\Users\<user>\.antigravity\extensions\anthropic.claude-code-2.1.140-win32-x64\resources\native-binary\claude.exe" plugin marketplace list --json
c. The process crashes with a Bun panic and exits with code 3.
- Repeat step 4 once or twice — the panic message may vary between runs (e.g. "Failed to start HTTP Client thread: Unexpected" vs. "Illegal instruction at address 0x7FF7E0C6EF90"), but the process always crashes before producing any JSON.
Frequency: 100% reproducible on this hardware. Never succeeds.
Other Claude Code functionality (chat, file tools, etc.) appears to work normally — the crash is specific to subcommands that exercise the marketplace / plugin network path.
Claude Model
Opus
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.139
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
Hardware / OS context (full):
- CPU: Intel Core i5-3230M @ 2.60 GHz — Ivy Bridge (2012), 2 cores / 4 threads
- CPU ISA: SSE4.2 + AVX, NO AVX2 (AVX2 first shipped with Haswell, 2013)
- RAM: 6.31 GB
- OS: Windows 10 Pro, version 22H2, build 19045, 64-bit
- Shell tested: Windows PowerShell 5.1 (also reproduced when launched by the Antigravity/VS Code extension)
Why I believe this is a Bun baseline-build bug, not a Claude Code logic bug:
- Bun correctly detects my CPU and ships the "baseline" build — its own banner prints
no_avx2in the Features list. - Despite that, the process panics with
Illegal instructionat a fixed address (0x7FF7E0C6EF90) on one run, and with a thread-bootstrap failure on another. Different code paths, same root cause class: an instruction outside the SSE4.2/AVX baseline ISA is being executed somewhere in the plugin-marketplace code path. - This should reproduce on any pre-Haswell x64 Windows machine. The Bun crash reports linked in the main body contain redacted stack traces that the Bun team can decode directly.
Scope of impact observed so far:
- 100% reproducible failure on
claude plugin marketplace list --json(and therefore the extension's Plugins tab). - Other Claude Code subcommands I have used (interactive chat, file tools, slash commands) appear to work normally on the same binary — only the marketplace / plugin networking path crashes.
Workarounds I tried (none worked from the user side):
- Running outside the extension (plain PowerShell) — same crash.
- Excluding the install folder from Windows Defender — no change.
- Disabling VPN/proxy — no change.
What I think would help most:
- Pin Claude Code to a Bun version whose Windows baseline build is verified to contain no non-baseline instructions, OR rebuild Bun with stricter
-march=x86-64-v2flags. - At CLI startup, detect missing AVX2 and either (a) fail fast with a clear message if AVX2 is actually required, or (b) guarantee no code path uses AVX2+.
- In the extension, when the underlying CLI exits with code 3 and stderr contains
panic(, surface a friendlier "Claude CLI crashed — open logs" message instead of the raw Bun banner.
Companion Bun crash reports (auto-redacted by Bun, contain stack traces):
- https://bun.report/1.3.14/e_1d298914mgggkEugogigB+jmrX4hy5Ruk95mByzq5mByi43mB__ut7l2CA0eNpzS8zMSU1RKMlXKC5JLCpR8AgJCVBwzslMzStRKMkoSk1MsVIIzUutKEhNLklNAQB7XBB9
- https://bun.report/1.3.14/e_1d298914kggggEugggigBg53vG6+n22C6ro42Cqvj22Cwmh22Cwi45iC8yj5iCwvu7iCq8t7iCi022iC2tggsCq29/rCw3g5xCq/m5xCiw544C+0h1gD___A3u//Bhnoknf
I'm happy to run additional commands, attach more verbose logs, or test a candidate fix on this hardware — just point me at what you need.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗