Claude Code をインストールしたのに、ターミナルで claude を叩くとこう出る——そんな経験はないだろうか:

zsh: command not found: claude
bash: claude: command not found
'claude' is not recognized as an internal or external command   # Windows

これは claude という実行ファイルが見つからない」というエラーで、原因の大半は 「インストール先のフォルダが PATH に入っていない」こと。インストール自体は成功していて、ただシェルが場所を知らないだけのことが多い。本記事では、インストール方法と置き場所・PATHの直し方・複数インストールの衝突・Windows特有の罠・更新系までを、公式情報をもとに整理する。

先に要点。command not found はほぼ「PATH に ~/.local/bin(インストール先)が無い」だけ——追加して端末を再起動すれば直る。② npm の権限エラー(EACCES)は sudo せず、ネイティブインストーラに切り替えるのが正解。③ 困ったら claude doctor——インストール状態・設定・更新結果をまとめて点検してくれる。具体的なコマンドや既定値はバージョンで変わるため、最新は公式で確認を。

CLAUDE CODE · PATH

入っているのに、見つからない

— インストール先が PATH に無いだけ

$ claude
zsh: command not found: claude
$ echo $PATH を見ると…
/usr/local/bin : /usr/bin : /bin ← ~/.local/bin が無い
$ ls ~/.local/bin/claude
~/.local/bin/claude ← 実体はここに有る!
→ PATH に ~/.local/bin を足して端末を再起動

バイナリは ちゃんと存在する。シェルが探す PATH にその場所が無いだけ。
だから直し方は 「PATH に1行足す」——たいてい数十秒で終わる。

1. このエラーは何を言っているのか

シェル(zsh / bash / PowerShell)は、コマンドを打つと PATH という環境変数に並んだフォルダを順に探して、その名前の実行ファイルを見つけたら動かす。command not found: claude は、その PATH のどのフォルダにも claude が無かったという意味だ。

ここで大事なのは 「インストール失敗とは限らない」こと。ネイティブインストーラは claude~/.local/bin(Windows は %USERPROFILE%\.local\binに置くが、このフォルダが PATH に入っていないと、実体はあるのにシェルが見つけられない。だから 多くのケースは「PATH に1行足して端末を再起動」で直る。失敗を疑う前に、まず ls ~/.local/bin/claude実体があるかを確認しよう。

なお Windows では、インストールコマンドの“シェル取り違え”(PowerShell用を CMD で実行する等)で別のエラーが出る。これは §4 で扱う。まずは正しいインストール方法と置き場所を押さえる。

2. インストール方法と置き場所

2026年時点の主なインストール方法と、バイナリの置き場所はこうだ(推奨はネイティブインストーラ)。

方法コマンド(概形)置き場所 / 注意
ネイティブ(推奨)mac/Linuxcurl -fsSL https://claude.ai/install.sh | bash~/.local/bin/claude自動更新あり
ネイティブ(推奨)WindowsPowerShellで irm https://claude.ai/install.ps1 | iex%USERPROFILE%\.local\bin\claude.exe
npmnpm install -g @anthropic-ai/claude-codeNode 18+ が必要。同じネイティブバイナリを導入
Homebrew(mac)brew install --cask claude-code自動更新なし → brew upgrade
WinGet(Windows)winget install Anthropic.ClaudeCode自動更新なし → winget upgrade

ポイントは 「公式はネイティブインストーラを推奨」していること。npm 版も同じネイティブバイナリを入れる(インストール時だけ Node 18+ が要る/動作には Node 不要)が、権限・PATH のトラブルが起きやすい。これから入れるなら、迷わずネイティブが無難だ。なお VS Code 拡張だけを入れた場合は、拡張内に専用CLIが同梱され claude は PATH に追加されない——ターミナルで claude を使いたいなら別途インストールが必要だ。

3. 繋がらない主な原因と対処

command not found と、その周辺でハマりやすい原因を対処とセットで挙げる。

ROOT CAUSES

インストール・PATHの主因

① PATH に無い(最多)
~/.local/bin が PATH 外。~/.zshrc/~/.bashrcexport PATH="$HOME/.local/bin:$PATH" を足して端末再起動。
② npm の権限エラー(EACCES)
sudo npm はしない(公式が非推奨)。ネイティブインストーラに切り替えるのが最短で安全。
③ Node が古い(npm版)
npm 版は Node 18+ が必要。古いなら更新するか、Node 不要のネイティブ版へ。
④ 複数インストールの衝突
npm+ネイティブ+Homebrew が混在。which -a claude(Win:where.exe claude)で確認し、ネイティブ1本に絞る
⑤ ネイティブバイナリが見つからない(npm)
Could not find native binary package ... は、optional 依存をスキップして入れた時に出る。--omit=optional 等を外して入れ直す。

迷ったら 「ネイティブインストーラで入れ直す」が大半を解決する。
権限・Node・衝突の問題をまとめて回避できる。

PATH追加の具体例(mac の zsh):echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc の後 source ~/.zshrc。Linux の bash なら ~/.bashrc に同様に。変更後は新しい端末を開くのを忘れずに。

4. Windows特有の罠

Windows では、インストールコマンドを“別のシェル”で実行して失敗するのが定番だ。出るエラーで取り違えが分かる。

シェル取り違えの見分け方

エラー意味と対処
'irm' is not recognized ...CMDでPowerShell用を実行 → PowerShellで irm ... | iex
The token '&&' is not validPowerShellでCMD用を実行 → CMD用コマンドへ
'bash' is not recognized ...WindowsでLinux用を実行 → PowerShellインストーラへ

その他の Windows の注意点:① インストール後は端末を再起動(PATH変更は新しい端末から反映)。② 古い Claude Desktop が WindowsApps\Claude.exe を登録していると、claudeCLIではなくデスクトップアプリを起動してしまう——Claude Desktop を更新する。③ Git Bash が見つからない場合は設定の CLAUDE_CODE_GIT_BASH_PATHbash.exe を指定。WSL を使う手もある。

5. 自動更新と更新系

ネイティブインストールは バックグラウンドで自動更新され、次回起動時に反映される。手動で最新化したいときは claude update、特定バージョンの再インストール/固定は claude install <version>stable / latest 等も指定可)。更新の成否は claude doctor で確認できる。

npm版で自動更新が効かないとき

npm グローバルのフォルダに書き込み権限が無いと自動更新が失敗する。claude doctor が修正候補を出すので、それに従ってネイティブインストールへ移行するのが根本解決。自動更新を止めたいだけなら設定の envDISABLE_AUTOUPDATER(手動更新は残る)、すべての更新を止めるなら DISABLE_UPDATES

6. 切り分けワークフロー

原因が分からないときは、上から順に。ほとんどはステップ3までで解決する。

DIAGNOSE

上から順に切り分ける

1
claude doctor(起動しないならシェルから)でインストール健全性を点検。
2
which -a claude / where.exe claudeどこに何本あるかを確認(衝突の有無)。
3
実体があるのに見つからないなら PATH に ~/.local/bin を追加して端末再起動。
4
衝突していたら余計な版を削除(npm/Homebrew/WinGet)し、ネイティブ1本に。
5
それでもダメなら ネイティブインストーラで入れ直す(権限・Node・衝突をまとめて回避)。

鉄則:「実体があるか → PATHにあるか → 衝突していないか」の順。
詰まったら最後はネイティブ入れ直しが確実。

まとめ

Claude Code の 「command not found: claude」は、多くが 「インストール先(~/.local/bin)が PATH に入っていない」だけだ。実体は存在するので、PATH に1行足して端末を再起動すれば直る。インストールは ネイティブインストーラが推奨(npm 版は Node 18+ 必須で権限・PATHの罠が多い)。npm の EACCES は sudo せず、ネイティブに切り替えるのが正解だ。

切り分けは claude doctor → ② which -a claude / where.exe claude で衝突確認 → ③ PATH に ~/.local/bin 追加 → ④ 余計な版を削除 → ⑤ ネイティブで入れ直しWindowsシェル取り違えirm を CMD で等)と端末再起動、古い Claude Desktop の Claude.exe 衝突に注意。更新は claude update / claude install、自動更新の停止は DISABLE_AUTOUPDATER。困ったら最後はネイティブ入れ直しが確実だ。関連:Claude Codeエラー集認証・ログインエラー

FAQ

Q. インストールしたのに command not found: claude が出ます。
A. ほぼ確実に インストール先が PATH に入っていないだけです。まず ls ~/.local/bin/claude(Windowsは %USERPROFILE%\.local\bin)で実体があるか確認し、あれば ~/.zshrc/~/.bashrcexport PATH="$HOME/.local/bin:$PATH" を追加して新しい端末を開いてください。インストール自体は成功していることが多いです。

Q. npm install -g で権限エラー(EACCES)になります。
A. sudo npm は使わないでください(公式が非推奨で、権限・セキュリティの問題を招きます)。最短で安全なのは ネイティブインストーラに切り替えること(mac/Linux:curl -fsSL https://claude.ai/install.sh | bash)。ネイティブ版は権限の罠が無く、Node も不要です。npm のグローバル prefix をユーザー領域に変える方法もありますが、公式の推奨はネイティブ移行です。

Q. 複数の claude が入っていて、古いバージョンが動きます。
A. which -a claude(Windowsは where.exe claude)でPATH上のすべての claudeを確認してください。npm グローバル・Homebrew・WinGet・ネイティブが混在していることがあります。ネイティブ(~/.local/bin)を残し、他を削除npm uninstall -g @anthropic-ai/claude-code など)して1本に絞るのが確実です。

Q. Windowsで claude を打つとデスクトップアプリが開いてしまいます。
A. 古い Claude Desktop が WindowsApps\Claude.exe を登録しており、それが PATH 上でCLIより優先されているのが原因です。Claude Desktop を最新版に更新すると解消します。また、PowerShellインストーラ実行後に見つからない/古い場合は、端末を再起動して PATH を反映させてください。

Q. 更新がうまくいきません/更新を止めたいです。
A. ネイティブ版はバックグラウンドで自動更新され、次回起動時に反映されます。手動なら claude update、再インストール/固定は claude install <version>npm グローバルで自動更新が失敗する場合は書き込み権限の問題なので、claude doctor の案内に従いネイティブへ移行を。自動更新を止めるなら設定の envDISABLE_AUTOUPDATER、すべての更新を止めるなら DISABLE_UPDATES を設定します。