注記
この記事は、Claude Code(AIアシスタント)と協働でトラブルシュートした実録です。 遠回りした過程もそのまま残しています。結論だけ知りたい方は「原因」と「教訓」をご覧ください。
はじめに
ある日、PowerShellでclaudeと入力してもClaude Codeが起動しなくなりました。
最初は「コマンド名が変わったのか」と疑いましたが、
結論から言うとコマンドはclaudeのままで変わっていませんでした。
原因にたどり着くまでにかなり遠回りをしたので、その過程と教訓を記録します。
切り分けはClaude Code自身に手伝ってもらいました。
皮肉なことに、その支援ツールの実行環境こそが遠回りの元凶でした。
環境
| 項目 | 内容 |
|---|---|
| OS | Windows 11 Pro |
| シェル | PowerShell 7.6.1 |
| Node.js | v24.15.0 |
| npm | 11.12.1 |
| 補助シェル | Git Bash(MINGW64) |
症状
新しいPowerShellを開いてclaudeを実行しても、次のエラーになります。
claude: The term 'claude' is not recognized as a name of a cmdlet, function, script file, or executable program.
切り分けの記録
1. 診断ツールが応答しない
まず状況を確認しようとしたところ、
PowerShell側の診断コマンドがWrite-Output "hello"のような最小の内容でも応答しませんでした。
そこで動作するGit Bashへ切り替えて調査を続けました。
このときの「動くほうへ切り替える」という判断が、あとで大きな落とし穴になります。
2. そもそも未インストールだった
Git Bashで調べると、次の状態でした。
| 確認項目 | 結果 |
|---|---|
PATH上のclaude | なし |
| npmグローバル領域 | ディレクトリごと存在しない |
~/.local/bin | 存在しない |
| Node.js / npm | 利用可能 |
~/.claude(設定) | 残存 |
設定は残っているのに本体だけがない状態でした。コマンド名の変更ではなく、
Claude Code本体が消えていたことが原因と判断し、
npm install -g @anthropic-ai/claude-codeを実行しました。
インストールは数秒で完了しました。
3. 再インストールしたのに実機で起動しない
ところが、ユーザー側の実機PowerShellを新しく開いても、依然としてclaudeが見つかりません。
現在のセッションにPATHを一時追加しても結果は同じでした。
4. PATHは登録済み、それでも起動しない
Windowsのレジストリ上のユーザー環境変数PATHを確認すると、
C:\Users\<user>\AppData\Roaming\npmはきちんと登録されていました。
設定自体は正しいのに起動しません。
ここで「ターミナルアプリが古い環境を保持しているのでは」という仮説を立てましたが、これは外れでした。
5. 決定的な発見 — 別環境を見ていた
実機PowerShellで次を実行してもらい、ようやく核心がわかりました。
Test-Path "$env:APPDATA\npm"
結果はFalseでした。インストール先のディレクトリが、実機からは存在しないのです。
一方、調査に使っていたGit Bashからは同じパスにファイルがはっきり見えていました。
つまり、診断とnpm installを実行していたGit Bashは、
Claude Codeの支援ツールが動くサンドボックス側の環境であり、
ユーザーが操作している実機とは別のファイルシステムでした。
再インストールは別環境に対して行われ、実機には一切反映されていなかったのです。
最初に「PowerShellの診断が全滅した」のは、そのツールが実機に届いていなかったサインでした。
6. 実機で再インストールして解決
原因がわかれば対応は単純でした。実機のPowerShellで直接インストールします。
npm install -g @anthropic-ai/claude-code
インストール後、フルパスとコマンド名の両方で起動を確認しました。
& "$env:APPDATA\npm\claude.cmd" --version
claude --version
どちらも2.1.143 (Claude Code)を返し、解決しました。
実機のユーザー環境変数PATHにはnpmのパスが元から登録されていたため、
本体さえ入れば新しいセッションでそのまま起動します。
原因
直接の原因は、Claude Code本体が実機に存在しなかったことです (npmグローバル領域がディレクトリごと消失していました)。
遠回りの原因は別にあります。調査と再インストールを、 実機ではなくAI支援ツールのサンドボックス環境に対して行っていたことです。
両者は状態がよく似た別環境だったため、ツール上では成功しているように見えていました。
教訓
今回の遠回りから得た教訓は次のとおりです。
- AI支援ツールの実行環境と実機を同一視しない。
- ツールが動くシェルが、必ずしも自分の実機とは限りません。状態が似ていると混同しやすく、危険です。
- 「動くほうへ切り替える」前に、その環境の正体を確認する。
- 片方のツールが応答しないときの乗り換えは、別環境への乗り換えになっている場合があります。
- 診断値を実機の事実と取り違えない。
npm config get prefixやレジストリの値も、取得した環境のものです。実機での再確認が要ります。
- 状態変更は実機で検証する。
- インストールやPATH変更は、最終的に実機で実行し、実機で起動を確認するまで完了とみなさないようにします。
- 応答しないツールはエラーではなくサインのことがある。
- 出力が空で失敗し続けるのは、対象に届いていない兆候かもしれません。
おわりに
claudeが起動しない原因は、コマンドの変更ではなく本体の消失でした。
そして解決を長引かせた本質は、AI支援ツールの環境と実機の取り違えでした。
支援ツールは便利ですが、その実行環境がどこを指しているのかを意識しないと、 成功したように見えて何も変わっていない、という事態に陥ります。
次に同じ状況へ出会ったら、まず「いま自分はどの環境を見ているのか」を最初に確認しようと思います。