PaPoo
cover

ENOENT が出たら、まず見るところは「どの呼び出しで落ちているか」

同じ 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 を使う、あるいは commandtypescript-language-server.cmd にする、といった回避策が出ています。ただし、これは issue コメントでの説明であり、今回の手元検証では裏を取れていません。

別の系統として、~/.claude/ に書き込めないと claude が固まる件があります。#56893 では、claude は無出力でハングし、claude --debugappendFileSyncENOENT で落ちると報告されています。ここでは「書き込み権限がない」が焦点です。

さらに、カレントディレクトリが削除・移動された場合にも 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 claudedoctor 上で正常で、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

同じ著者の記事