更新したはずなのにバージョンが上がらない、という状態を自分で解消できるようになります。原因はClaude Codeが2箇所に入っていること。見分け方から、片方を消して1本にまとめるところまでやります。
こういう症状の回です
claude update を打つと「更新できました」と出る。ところが新しいウィンドウを開いて claude -v を打つと、古いバージョンのまま。もう一度更新する。また上がらない。これを何周も繰り返す。途中で見慣れない英語のエラーが出て、そこで手が止まる。
僕は実際にこれを何周もやりました。結論から言うと、操作は何も間違っていません。Claude Codeがパソコンの中に2箇所以上入っていたのが原因でした。
このレッスンは、その状態を自分で見つけて、自分で解消するための回です。少しターミナルのコマンドが出てきますが、意味が分からなくても大丈夫です。分からないものはClaude Codeに聞けばいい、というやり方も一緒にやります。
なぜ二重に入るのか
Claude Codeには入れ方が何通りかあります。昔は npm というやり方が一般的でした。今は公式が「ネイティブインストーラ」を推奨しています。
昔から使っている人は、最初に npm で入れて、あとから推奨に従ってネイティブでも入れた、という順番になりがちです。このとき、古いnpm版が消えずに残ります。 すると、更新したつもりの場所と、実際に起動している場所が食い違って、いつまでも古いバージョンが立ち上がります。
公式にも「複数のインストールがあるとバージョンの食い違いや予期しない動作の原因になる」と書かれていて、残すのはネイティブ版が推奨とされています。つまり、やるべきことは「npm版を消して、ネイティブ1本にする」です。
自分がその状態か見分ける
まず、更新コマンドを打ちます。
claude updateここで、こういう警告が出たらビンゴです。
Warning: Multiple installations found
- npm-global at /Users/あなたの名前/.npm-global/bin/claude
- native at /Users/あなたの名前/.local/bin/claude (currently running)「Multiple installations found」=複数のインストールが見つかりました、という意味です。どこに入っているかまで教えてくれます。
もう1つ、確実な確認方法があります。
which -a claudeこれは「claudeという命令がどこにあるか、全部出して」というコマンドです。
1行だけなら正常です。2行以上出てきたら、二重に入っています。
もっと詳しく見たいときは、診断用のコマンドもあります。インストールの状態や設定の問題をまとめて教えてくれます。
claude doctor直す手順
Macの「ターミナル」で、上から順に実行します。Cursorの中のターミナルでも構いません。
まず、npm版が入っているかを確認します。
npm -g ls @anthropic-ai/claude-code入っていたら、それを削除します。
npm uninstall -g @anthropic-ai/claude-code削除できたか確認します。ここで最初の警告が出なくなっていれば成功です。
claude --version最後に、起動元が1つになったかを見ておきます。
which -a claude1行だけになっていれば完了です。これで、以降は claude update がちゃんと効くようになります。
権限エラーで止まったとき
削除しようとして、こういうエラーで止まることがあります。
npm error code EACCES
npm error syscall renameEACCES は「権限がありません」という意味です。これが出るのは、過去に管理者権限(sudo)を付けてnpmで入れた履歴があるからです。そのとき作られたファイルが「自分のものではない」状態で残っていて、普通には消せなくなっています。僕が何周もハマったのは、まさにここでした。
このときの正しい進め方は、エラー文をそのままClaude Codeに見せて、指示されたコマンドを実行することです。必要な手順はパソコンの状態によって変わるので、決め打ちの手順を覚えるより、聞いたほうが確実で早く終わります。
管理者権限が必要なコマンドを案内された場合は、実行するとパスワードを聞かれます。Macのログインパスワードを入力してください。入力しても画面には何も表示されませんが、ちゃんと打てています。
なお公式は、npm由来の権限エラーで詰まった場合は、ネイティブインストーラで入れ直すことも勧めています。
curl -fsSL https://claude.ai/install.sh | bash分からないエラーは、スクリーンショットで聞く
このレッスンで一番持ち帰ってほしいのは、実はコマンドそのものではありません。分からないエラーが出たときの進め方です。
僕も非エンジニアなので、EACCES と言われても最初は意味が分かりませんでした。でも解決はできます。やり方はこうです。
エラーが出ている画面をスクリーンショットで撮って、Claude Codeに貼り付けて「このエラーが出た。どうすればいい?」と聞く。返ってきたコマンドを貼って実行する。また分からないエラーが出たら、また撮って聞く。これを繰り返すだけです。
スクリーンショットを毎回フォルダから探すのが面倒であれば、Claude Codeに「スクリーンショットを撮ったら自動でパスをコピーするようにしたい」と頼めば設定してくれます。撮って貼るだけ、という状態になります。
この往復ができるようになると、初めて見るエラーが怖くなくなります。意味が分からないまま手が止まる、という状態から抜けられます。
やってはいけないこと
直らないからといって、管理者権限を付けてnpmで入れ直すのはやめてください。
sudo npm install -g @anthropic-ai/claude-codeこれは公式が明確に警告しています。 権限の問題とセキュリティ上のリスクにつながる、と書かれています。実際、これをやると管理者権限で作られたファイルが増えて、今回と同じ症状がまた起きます。
入れ直すときは、公式のネイティブインストーラを使ってください。
消えるものと、消えないもの
「消して大丈夫なの?」と不安になると思うので、はっきりさせておきます。
npm版を消しても、作ったファイル・設定・会話の履歴・契約(サブスク)は何も消えません。 消えるのは、重複して入っていたアプリ本体のコピーだけです。同じアプリが2つ入っていて、片方を消すだけ、と考えてください。
まとめ
更新しても上がらないのは、2箇所に入っているからです。
見分けるのは which -a claude。2行以上出たら二重。直すのは npm uninstall -g @anthropic-ai/claude-code で、npm版を消してネイティブ1本にする。権限エラーで止まったら、エラー画面をスクリーンショットでClaude Codeに見せて聞く。
そして今後は、入れ直すときにネイティブインストーラだけを使う。これで再発しません。
