※いろいろ試行錯誤したので、記憶が不確かな部分もありますが。
私の環境はWindows11ですので、WSLにインストールしています。
追記:現在は、Claude CodeがWindowsを正式にサポートしていますので、このような作業は不要になっています。
スポンサーサイト
目次
・(1)WSL + nvm + Claude Codeのインストール
・(2)「後日、動かなくなった」問題の解決
(1)WSL + nvm + Claude Codeのインストール
基本的な手順はClaude Code公式セットアップガイドに記載されていますが、WSLやnvm、npmのインストール方法については詳しく書かれていないため、手順をまとめました。
1. WSLのセットアップ
PowerShellを管理者権限で開いて、以下を実行します:
# 現在のWSL状況確認
wsl --list --verbose
# Ubuntu 22.04のインストール
wsl --install -d Ubuntu-22.04
インストール後、Ubuntu-22.04を起動して初期設定を完了させます。
2. Ubuntu環境の準備
# パッケージリストの更新
sudo apt update
# 基本的なツールのインストール
sudo apt-get install curl
3. nvmのインストール
Node.jsのバージョン管理にはnvmを使用します:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
4. 【重要】環境変数の反映
ここが最初の落とし穴です!
nvmをインストールした直後は、同じターミナルセッションでは認識されません。以下のいずれかを実行してください:
方法1:新しいターミナルを開く
現在のターミナルを閉じて、新しいWSLターミナルを開く
方法2:環境変数を手動で読み込む
source ~/.bashrc
この工程を飛ばすと、nvmのエラーが発生します。
私の場合は、これにはまってその日は諦め、翌日にターミナルを起動したら、すんなり動いたのでした。
5. nvmの動作確認
# nvmが認識されているか確認
nvm --version
# 利用可能なNode.jsバージョンを確認
nvm list
6. Node.js LTS版のインストール
安定版(LTS版)のNode.jsを使用した方が良いです。ここで最新版を入れて後で問題になったので。
また、デフォルトのバージョンとして設定しておいた方が良いです。これも後の問題の原因になったので。
# LTS版をインストール
nvm install --lts
# デフォルトバージョンとして設定
nvm alias default v22.16.0
# インストール確認
node --version
npm --version
7. Claude Codeのインストール
# Claude Codeをグローバルインストール
npm install -g @anthropic-ai/claude-code
# 動作確認
claude --version
成功すれば、Claude Codeのバージョン情報が表示されます。
うまくいかない場合、下記の問題も確認してみてください。
(2)「後日、動かなくなった」問題の解決
遭遇した問題:突然のcommand not foundエラー
数週間後、Claude Codeを使おうとしたところ:
$ claude
claude: command not found
このエラーに遭遇しました。
以前は動作していたのに、なぜ動かなくなったのか調べました。
原因の調査:Node.jsバージョン
■1. 現在のNode.jsバージョンを確認
nvm current
# v24.2.0
nvm list
# v22.16.0
# v24.2.0
# default -> node (-> v24.2.0)
# node -> stable (-> v24.2.0) (default)
# lts/* -> lts/jod (-> v22.16.0)
上でも書いたのですが、nodejsのバージョンは何が良いかわからなくて、最初に当時最新版のv24.2.0を入れて、デフォルトをv24.2.0にしてました。その後に、LTSのv22.16.0を入れてインストールを進めたので、v22.16.0を使う設定になった状態だったため以前はうまく動いていたのだと思います。
が、後日、コンソールを再起動した際に、デフォルトの設定で、最新版v24.2.0を使う状態になっていました・・・
■2. Claude Codeの存在確認
nvm use v22.16.0
which claude
# /home/user/.nvm/versions/node/v22.16.0/bin/claude
npm list -g --depth=0 | grep claude
# ├── @anthropic-ai/claude-code@1.0.35
Claude Codeは確実にv22.16.0環境にインストールされていました。
WSL環境でのNode.js v24.2.0の互換性問題
私の環境のWSL環境は、Node.js v24.2.0がうまく動いてなかったです。
v24.2.0を使用すると、npmコマンド自体にも問題が発生:
nvm use v24.2.0
npm --version
# /home/user/.nvm/versions/node/v24.2.0/bin/node: 1: Syntax error: ")" unexpected
つまりNode.jsのバージョンが原因だったようです。
解決方法:LTS版への切り替えとデフォルト設定
■1. LTS版に切り替え
nvm use v22.16.0
claude --version
# 正常に動作!
■2. デフォルトバージョンを修正
nvm alias default v22.16.0
■3. 動作確認
# 新しいターミナルを開いて確認
nvm current
# v22.16.0
claude --version
# 正常に動作
まとめ
WSLでのClaude Codeセットアップで、以下の2つがポイントでした。
・nvmインストール後は必ず新しいターミナルを開く
・Node.js LTS版を使用し、デフォルト設定を明示的に行う
同様の問題で困っている方の参考になれば幸いです。
参考リンク
・公式のClaude Codeのセットアップ
スポンサーサイト