同じ ENOENT でも、今回の issue 群では原因がかなり分かれています。
手元の環境では claude doctor が正常に通っていて、claude の実体も複数見つかっています。なので、少なくとも「インストール全体が壊れている」とは言い切れません。
$ claude doctor
Claude Code doctor
Running: native (2.1.207)
Commit: bc512d563325
Platform: darwin-arm64
Path: ~/.local/share/claude/versions/2.1.207
Config install method: native
Search: OK (bundled)
Auto-updates: enabled
Auto-update channel: latest
Last update attempt: none recorded
Multiple installations found
- npm-global at /usr/local/bin/claude
- native at ~/.local/bin/claude
Remote Control
Control this session from claude.ai/code or the Claude mobile app
1 warning found
- Leftover npm global installation at /usr/local/bin/claude
Fix: Run: npm -g uninstall @anthropic-ai/claude-code
$ /usr/bin/which -a claude
~/.local/bin/claude
/usr/local/bin/claude
/usr/local/bin/claude
$ claude --version
2.1.207 (Claude Code)
$ node --version
v22.15.0
この手の ENOENT で、Issue 上で確実に確認できるのは主に 4 系統です。
ひとつは Windows での Bash tool 呼び出し失敗です。#51144 では、mkdir 'E:\claude-tmp\...\tasks' の ENOENT が出て、Python や git まで含めて Bash 経由の実行が全部止まると報告されています。これは Windows 固有の症状です。
もうひとつは typescript-language-server を LSP tool から起動するときの失敗です。#59114 では、グローバルに入っていて PATH 上にも見えるのに、uv_spawn 'typescript-language-server' の ENOENT になると書かれています。コメントでは、Windows の uv_spawn が拡張子なしコマンドを SearchPathW で探すとき、.exe しか試さず .cmd や .bat を試さない、という説明が付いていました。そこから、shell: true を使う、あるいは command を typescript-language-server.cmd にする、といった回避策が出ています。ただし、これは issue コメントでの説明であり、今回の手元検証では裏を取れていません。
別の系統として、~/.claude/ に書き込めないと claude が固まる件があります。#56893 では、claude は無出力でハングし、claude --debug は appendFileSync の ENOENT で落ちると報告されています。ここでは「書き込み権限がない」が焦点です。
さらに、カレントディレクトリが削除・移動された場合にも ENOENT になる issue があります。#73428 では、claude だけでなく claude --version でも即失敗するとされています。これは起動前の cwd 解決で落ちるタイプです。
今回の手元出力だけを見ると、少なくとも macOS の native インストールは起動できています。なので、自分のケースがどれかを切り分けるなら、最初に見るべきは次の順です。
claude doctor が通るか。通るなら、全体のインストール破損ではない可能性があります。
which -a claude で複数の claude が混ざっていないか。今回の環境では native と npm-global が併存していました。
そのうえで、ENOENT がどの場面で出るかを見ます。claude 起動直後なのか、Bash tool だけなのか、LSP 起動時だけなのかで、話が変わります。
issue ベースで読む限り、Windows の Bash tool 問題と LSP の typescript-language-server 問題は、どちらも ENOENT でも中身が違います。前者は一時ディレクトリ作成周辺、後者は Windows の spawn と .cmd の扱いです。~/.claude/ の権限問題や cwd 消失問題は、そもそも起動の入口で落ちます。
現時点で、手元の出力だけから「この症状にはこの対処が有効」と言い切れるものはありません。少なくとも macOS の native claude は doctor 上で正常で、ENOENT そのものは再現していません。
claude --version : 2.1.207 (Claude Code)
OS : Darwin 25.3.0 (arm64)
Python : 3.14.2
検証日時 : 2026-08-09T16:09:58+09:00
参照した Issue(anthropics/claude-code): #59114, #73428, #85104, #51144, #56893, #37580