在《用 Rust 重寫 Bun》一文中,Jarred Sumner 提出了以下說法:Claude Code v2.1.181(6 月 17 日發布)及之後的版本都採用了 Rust 移植版的 Bun。這使得在 Linux 上的啟動速度提升了 10%,但除此之外,幾乎沒有人注意到。他認為「無聊就是好」。

我決定檢查自己的 Claude Code 安裝,看看能否找到它正在使用 Rust 編寫的 Bun 的證據。我發現以下兩個指令很有說服力:

strings ~/.local/bin/claude | grep -m1 'Bun v1'

對我來說,這會輸出 Bun v1.4.0 (macOS arm64)。目前 GitHub 上 Bun 的最新版本是 5 月 12 日發布的 v1.3.14,因此 Claude 中出現的 v1.4.0 版本號證實了他們正在使用尚未正式發布的 Bun 預覽版。

(更新:Rust 版本已以 Bun canary 的形式發布,執行 bun upgrade --canary 即可安裝此版本。)

strings ~/.local/bin/claude | grep -Eo 'src/[[:alnum:]_./-]+\.rs'

這會輸出 563 個檔案名稱的列表,開頭是這些:src/runtime/bake/dev_server/mod.rs、src/runtime/bake/production.rs、src/bundler/bundle_v2.rs。看來 Rust 版的 Bun 確實正在數百萬台不同的裝置上投入生產使用。正如 Jarred 所說:「無聊就是好。」

更新:這是 Ajan Raj 提供的一個巧妙技巧:

cat > /tmp/bun-version.ts <<'EOF'

console.log("embedded bun:", Bun.version);

process.exit(0);

EOF

BUN_OPTIONS="--preload=/tmp/bun-version.ts" claude --version

這對我來說會輸出 1.4.0。這是 5 月 17 日的提交,該提交將 package.json 中的版本更新為 1.4.0。此版本自那以後沒有再更改,但除了 canary 版本外,尚未作為標記發布的版本推出。