※ この記事にはプロモーションが含まれています。

Claude Codeをアップデートしてって出たんですけど、コマンドが分からなくて…。そもそもアップデートって自動でされるんじゃないんですか?

いいところに気づいたね。実はClaude Codeには「自動更新される版」と「されない版」があるんだ。僕も最初は知らずに古いまま使ってた。どっちか見分けて、必要なら1行打つ。それだけで解決するよ
こんにちは!Renです!
「Claude Codeをアップデートして」と表示されたのに、どのコマンドを叩けばいいのか分からない。あるいは「自動で更新されてるはず」と思って放置していた。そんな経験、ありませんか?
1つでも当てはまる方は、この記事が役に立つはずです。
僕はClaude Codeを使って、プログラミング未経験の状態からWebサービス(MyBlog AI)をリリースしました。開発中は毎日Claude Codeを触っていたので、アップデート周りでつまずいたことも、自動更新で挙動が変わって焦ったこともあります。
この記事では、その実体験をもとに環境別の正しいアップデートコマンドと、自動更新の仕組み・止め方・バージョン固定までをまとめて解説します。読み終わるころには、あなたが叩くべきコマンドが1行に絞れているはずです。
ちなみに、プログラミング不要・Claude Codeだけで自分のオリジナルSaaSをリリースするところまでの全工程をまとめたロードマップを用意しています。読むだけでなく、手を動かしながら「自分のサービスが世に出る」体験ができます。気になる方は下記からどうぞ。
結論:あなたの環境は自動更新される?まず1分で判定
細かい説明は後回しにして、まず結論からいきます。Claude Codeのアップデートは、インストール方法によって挙動がまったく違います。
つまり手動更新が必要なのは、自分が「されない版」を使っているときです。まずは下のコマンドで現状を確認しましょう。
claude --version
バージョンが表示されたら、手動更新のコマンドは環境ごとに次の通りです。
# ネイティブ版(手動でも更新できる)
claude update
# npm版
npm update -g @anthropic-ai/claude-code
# Homebrew版
brew upgrade claude-code
# WinGet版(Windows)
winget upgrade Anthropic.ClaudeCode
ネット上には「npm update claude-code」と書いている記事がありますが、これはパッケージ名が間違っています。正しくは「npm update -g @anthropic-ai/claude-code」です。パッケージ名が違うと更新されないので注意してください。

そもそも自分がネイティブ版なのかnpm版なのか分からないんですけど…

そこが一番大事なところなんだ。次のセクションで30秒で見分ける方法を教えるね
自分はどっち版?自動更新される版かを見分ける
更新コマンドを正しく選ぶには、まず自分のインストール方法を知る必要があります。判定はターミナルに2つのコマンドを打つだけです。
claudeコマンドの実体パスを確認する
# claudeコマンドがどこにあるか
which claude
# シンボリックリンクの実体まで追う(Mac/Linux)
readlink -f "$(which claude)"
表示されたパスで、おおまかに判定できます。
| パスの例 | インストール方法 | 自動更新 |
|---|---|---|
| ~/.local/bin/claude | ネイティブ版 | される |
| /usr/local/bin や nvm 配下 | npm版 | 権限次第(多くは手動) |
| /opt/homebrew/bin/claude | Homebrew版 | デフォルト手動 |
「claude doctor」を叩くと、インストール状況や直近の更新結果をまとめて診断してくれます。判定に迷ったら、まずこれを実行するのが一番確実です。
npm版が残ったまま動いているケースに注意
意外と多いのが、ネイティブ版を入れたのに古いnpm版がPATHの先頭に残っていて、そっちが呼ばれているパターンです。この状態だと「ネイティブにしたのに自動更新されない」と悩むことになります。
「which claude」の結果がネイティブ版のパス(~/.local/bin/claude)になっていなければ、古いnpm版を削除してPATHを整理しましょう。まずは「自分の環境がどう動いているか」を把握するのが先決です。
環境別の更新コマンドと自動更新の有無 早見表
ここまでの内容を1枚の表にまとめます。この表だけブックマークしておけば、もう迷いません。
| インストール方法 | 更新コマンド | 自動更新 | 備考 |
|---|---|---|---|
| ネイティブ版(推奨) | claude update | される | Node.js不要。基本ほったらかしでOK |
| npm版(非推奨) | npm update -g @anthropic-ai/claude-code | 権限次第 | グローバル領域に書き込めないと更新失敗 |
| Homebrew版 | brew upgrade claude-code | デフォルト手動 | 環境変数でオプトイン可能 |
| WinGet版(Windows) | winget upgrade Anthropic.ClaudeCode | デフォルト手動 | 環境変数でオプトイン可能 |
僕はネイティブ版に統一しています。MyBlog AIの開発中はClaude Codeを毎日触るので、更新を意識せずに常に最新でいられるネイティブ版が一番ラクでした。npmで管理していた頃は、たまに更新を忘れて古いまま使い続けていたことがあります。
自動更新の仕組みと「されない版」の対処
そもそも自動更新がどう動いているのかを知っておくと、トラブル時に落ち着いて対処できます。
起動時と稼働中にチェックし、次回起動で反映される
ネイティブ版は、起動時とセッション稼働中に定期的に新しいバージョンをチェックします。新版があればバックグラウンドでダウンロード・インストールが進み、次にClaude Codeを起動したときに反映される仕組みです。だから普段は何も意識する必要がありません。
直近の更新がどうなったかは、次のコマンドで確認できます。
claude doctor
npm版が更新されない本当の理由
npm版でも自動更新は試みられます。ただしnpmのグローバルディレクトリに書き込み権限がないと、自動更新は失敗します。これが「npm版は更新されない」と言われる正体です。
この場合、Claude Codeは起動時に一度だけ「自動更新できなかった」という通知を出し、「claude doctor」が具体的な対処法を一覧で示してくれます。つまり、通知に気づかず放置すると古いまま固まってしまうわけです。
npm版は2026年時点で「非推奨(deprecated)」扱いになっています。権限エラーに悩まされ続けるくらいなら、この機会にネイティブ版へ移行してしまうのが結局いちばんラクです。npm版でも当面は動きますが、新機能の反映は今後ネイティブが優先される見込みです。
自動更新を止めたい・タイミングを制御したいとき
逆に「勝手に更新されるのが困る」というニーズもあります。検証環境でバージョンを揃えたい、更新で挙動が変わるのを避けたい、といったケースです。
2つの環境変数を使い分ける
自動更新の止め方には、効き方の違う2つの環境変数があります。ここを混同している記事が多いので、正確に押さえておきましょう。
| 環境変数 | DISABLE_AUTOUPDATER | DISABLE_UPDATES |
|---|---|---|
| 止まる範囲 | バックグラウンドの自動チェックのみ | すべての更新経路 |
| 手動更新 | claude update / claude install は使える | 手動更新も含めてブロック |
| 主な用途 | 自動更新だけ止めたいとき | 配布元でバージョンを固定したいとき |
「自動で上がるのは困るけど、自分のタイミングでは更新したい」ならDISABLE_AUTOUPDATER。「このバージョンから一切動かしたくない」ならDISABLE_UPDATES、という使い分けです。
リリースチャンネルで更新の速さを選ぶ
完全に止めるのではなく「速さ」を調整したいなら、リリースチャンネルという考え方があります。ネイティブ版では、最新を即時取り込む「latest」と、安定版を遅れて取り込む「stable」を選べます。インストール時に選んだチャンネルが、その後の自動更新のデフォルトになります。
Homebrew版とWinGet版は、環境変数「CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE」を設定すると、バックグラウンドで自動アップグレードを実行して再起動を促すようになります。手動更新が面倒な人はオプトインしておくと便利です。
バージョンを固定・ロールバックしたいとき
ここは多くの記事が誤解している部分です。「ネイティブ版は最新にしか上げられないから、バージョンを固定したいならnpmを使うしかない」と書かれていることがありますが、ネイティブ版でもバージョンの固定・ロールバックはできます。
使うのは「claude install」コマンドです。具体的なバージョン番号、または「stable」「latest」を指定できます。
# 特定バージョンに固定(ロールバックにも使える)
claude install 2.1.118
# 安定版チャンネルに切り替え
claude install stable
# 最新版に切り替え
claude install latest
更新後に挙動がおかしくなったときは、「claude install で前のバージョンに戻す」が最短の応急処置になります。npmに戻る必要はありません。
MyBlog AIの開発中、自動更新で挙動が少し変わって一瞬「あれ?」となったことがあります。当時は仕組みを知らず焦りましたが、今思えば「claude install で前のバージョンに戻して、落ち着いてから上げ直す」だけで済む話でした。更新が頻繁なツールほど、ロールバックの手段を知っておくと安心して使えます。
アップデートが失敗するときのトラブルシューティング
更新コマンドを叩いてもエラーが出る場合、原因はだいたい決まっています。まずは「claude doctor」で診断し、エラーメッセージから当たりをつけましょう。
| Step1 | claude doctor で診断する 直近の更新結果と推奨される対処法を確認します。多くの場合、ここで原因と解決策が表示されます。 |
| Step2 | EACCES(権限エラー)なら権限の問題 npm版で起きやすいエラー。sudoは使わず、ネイティブ版への移行が根本解決です。 |
| Step3 | ENOENT・command not found ならPATHの問題 claudeの実体パスがPATHに通っているか確認します。 |
| Step4 | それでも直らなければ入れ直す ネイティブ版を入れ直す(claude install)か、古いnpm版を削除してPATHを整理します。 |
権限エラーが出たときに「sudo」を付けて無理やり通すのは避けましょう。一時的に動いても、後でさらにややこしい権限トラブルを招きます。権限で詰まったら、ネイティブ版への移行が結局いちばん安全です。

結局、困ったらまず claude doctor を打てばいいってことですね!

その通り。診断して、対処法を確認して、迷ったらネイティブ版に統一。この順番で進めれば、たいていのアップデート問題は解決するよ
まとめ:自分の版を知れば、覚えるコマンドは1行だけ
ここまで、Claude Codeのアップデートを環境別に解説してきました。突き詰めると「自分がどの版か」を知るだけで、答えは決まります。
・ネイティブ版は自動更新。手動なら claude update
・npm版は npm update -g @anthropic-ai/claude-code(パッケージ名に注意)
・Homebrew / WinGet は手動。brew upgrade / winget upgrade
・自動更新を止めるなら DISABLE_AUTOUPDATER か DISABLE_UPDATES
・バージョン固定・ロールバックは claude install で(ネイティブでも可能)
・困ったら claude doctor で診断する
更新が頻繁なツールだからこそ、コマンドを丸暗記するより「自分の環境の仕組み」を理解しておくほうが長く役立ちます。次に読む記事を、あなたのレベルに合わせてまとめました。
| あなたの状況 | 次に読む記事 |
|---|---|
| Claude Codeをこれから始めたい | Claude Codeの使い方をゼロから解説|動かしながら覚える最短ルート |
| 初心者が失敗しない設定を知りたい | Claude Codeはプログラミング初心者でも使える|学べる設定の型を実体験で解説【2026年版】 |
| そもそもどの方法でアプリを作るか迷っている | 【2026年版】Claudeでアプリ開発する方法|対話型〜Claude Codeまで完全ガイド |

アップデートでつまずくと作業が止まっちゃうけど、仕組みさえ分かれば怖くない。今日サッと自分の版を確認して、最新の状態で気持ちよく開発を進めよう!
最後に。読んで終わりの記事や書籍とは違い、Claude Codeを使いながら実際に自分のSaaSをゼロからリリースするところまで連れて行くロードマップを作りました。非エンジニアでも「使う側」から「作る側」に回れる、その体験ごとお届けします。気になった方は以下をご覧ください。
ではまた!




コメント