更新できない主な原因
原因1:権限の問題
症状:
npm ERR! Error: EACCES: permission denied
npm ERR! Error: EPERM: operation not permitted
原因:
- グローバルnpmディレクトリへの書き込み権限がない
- 管理者権限なしで実行している
解決方法:
Linux/macOS:
# 方法1: sudoを使用
sudo npm update -g @anthropic-ai/claude-code
# 方法2: npmディレクトリの権限を変更
sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
# 方法3: ユーザーディレクトリを使用
mkdir -p ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
npm install -g @anthropic-ai/claude-code
Windows:
- 「スタート」を右クリック
- 「Windows PowerShell(管理者)」または「コマンドプロンプト(管理者)」を選択
- 更新コマンドを実行
npm update -g @anthropic-ai/claude-code
原因2:ネットワークの問題
症状:
npm ERR! code ENETUNREACH
npm ERR! code ECONNREFUSED
npm ERR! network request failed
npm ERR! code ETIMEDOUT
原因:
- インターネット接続の問題
- プロキシ設定が必要
- ファイアウォールによるブロック
- VPN接続の問題
解決方法:
# 接続確認
ping registry.npmjs.org
# プロキシ設定(企業環境の場合)
npm config set proxy http://proxy.example.com:8080
npm config set https-proxy http://proxy.example.com:8080
# VPN接続を一時的に切断して試す
# レジストリを直接指定
npm update -g @anthropic-ai/claude-code --registry https://registry.npmjs.org
# SSL問題の場合(テスト用、非推奨)
npm config set strict-ssl false
npm update -g @anthropic-ai/claude-code
npm config set strict-ssl true
原因3:キャッシュの問題
症状:
npm ERR! code ENOENT
npm ERR! code EINTEGRITY
npm ERR! Unexpected end of JSON input
原因:
- npmキャッシュが破損している
- 不完全なダウンロードファイル
解決方法:
# キャッシュを完全にクリア
npm cache clean --force
# キャッシュの検証
npm cache verify
# クリーンインストール
npm uninstall -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code@latest
原因4:Node.jsバージョンの問題
症状:
npm WARN engine @anthropic-ai/claude-code: wanted: {"node":">=18.0.0"}
Error: The module was compiled against a different Node.js version
原因:
- Node.jsのバージョンが古い
- Claude Codeが要求するバージョンを満たしていない
解決方法:
# 現在のバージョン確認
node --version
npm --version
# nvmを使ってNode.jsを更新
nvm install 20
nvm use 20
# または直接インストール
# https://nodejs.org から最新LTS版をダウンロード
# 更新を再試行
npm update -g @anthropic-ai/claude-code
原因5:パッケージの競合
症状:
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
原因:
- 依存関係の競合
- 他のパッケージとの衝突
解決方法:
# 強制的にインストール
npm install -g @anthropic-ai/claude-code --force
# または legacy-peer-deps オプション
npm install -g @anthropic-ai/claude-code --legacy-peer-deps
# クリーンインストール
npm uninstall -g @anthropic-ai/claude-code
npm cache clean --force
npm install -g @anthropic-ai/claude-code@latest
原因6:ディスク容量不足
症状:
npm ERR! code ENOSPC
npm ERR! write ENOSPC
原因:
- ディスク容量が不足している
解決方法:
# ディスク使用量確認
df -h
# npmキャッシュ削除で容量確保
npm cache clean --force
# 不要なパッケージ削除
npm prune -g
トラブルシューティングの手順
ステップ1:エラーメッセージを確認
# 詳細なログを出力
npm update -g @anthropic-ai/claude-code --verbose
# さらに詳細なデバッグ情報
npm update -g @anthropic-ai/claude-code --loglevel verbose
ステップ2:環境を確認
# Node.jsとnpmのバージョン
node --version
npm --version
# npmの設定
npm config list
# グローバルパッケージのパス
npm root -g
# インストール済みパッケージ
npm list -g --depth=0
ステップ3:クリーンな状態から試す
# 完全なクリーンアップ
npm uninstall -g @anthropic-ai/claude-code
npm cache clean --force
# 新規インストール
npm install -g @anthropic-ai/claude-code@latest
環境別の特有問題
macOS固有の問題
SIP(System Integrity Protection)関連:
# /usr/local の権限問題
sudo chown -R $(whoami) /usr/local
# Homebrewでインストールしたnodeの場合
brew doctor
brew update
brew upgrade node
Windows固有の問題
パスの問題:
# 環境変数を確認
$env:PATH
# npm のグローバルパスを確認
npm config get prefix
# パスに追加されているか確認
長いパス名の問題:
# Windows 10以降で長いパスを有効化
# 管理者としてレジストリエディタで設定
# HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
# LongPathsEnabled を 1 に設定
WSL固有の問題
# Windows側とのパス競合を確認
echo $PATH
# WSL内のnpmを使用していることを確認
which npm
which node
# Windows側のnpmが呼ばれている場合
alias npm='/usr/bin/npm'
alias node='/usr/bin/node'
最終手段
すべての方法を試しても解決しない場合:
1. Node.jsの完全再インストール
# nvmを使用している場合
nvm uninstall <current-version>
nvm install 20
nvm alias default 20
# 直接インストールの場合
# 公式サイトから最新版をダウンロードして再インストール
2. グローバルパッケージディレクトリのリセット
# 既存のグローバルディレクトリをバックアップ
mv $(npm root -g) ~/npm-global-backup
# 新しいディレクトリを作成
npm config set prefix '~/.npm-global'
mkdir -p ~/.npm-global
# Claude Codeを新規インストール
npm install -g @anthropic-ai/claude-code
3. 代替インストール方法
# yarnを使用
yarn global add @anthropic-ai/claude-code
# pnpmを使用
pnpm add -g @anthropic-ai/claude-code
# npxで直接実行(インストールなし)
npx @anthropic-ai/claude-code
予防策
定期的なメンテナンス
# 週に1回程度実行
npm cache verify
npm doctor
更新前のチェックリスト
- Node.jsが推奨バージョン(18以上)か確認
- ディスク容量が十分か確認
- ネットワーク接続が安定しているか確認
- 重要な作業の前は更新を避ける
まとめ
Claude Codeの更新ができない場合の対処ポイント:
- 権限エラー:sudo使用またはディレクトリ権限変更
- ネットワークエラー:プロキシ設定やVPN確認
- キャッシュエラー:
npm cache clean --force - バージョン問題:Node.js 18以上に更新
- 競合問題:クリーンインストールを実行
ほとんどの問題は、キャッシュクリアとクリーンインストールで解決できます。それでも解決しない場合は、環境固有の問題を確認してください。