
はじめに
Claude MAXを契約して、毎日のようにコーディングに使っている。
最初の記事 で「俺、Claude Codeの機能を半分も知らなかった」と書いた。/init も CLAUDE.md も知らなかった、あの話だ。
あれから1ヶ月半。同じことがまた起きた。
ある日のセッション、何かのコマンドを実行しようとして、Claudeが言った。 「WSL2 で実行することをおすすめします」
ん。
WSL……2?
「Windows上で本物のLinuxを動かすやつです」
何それ、と聞いたら Claudeさんが教えてくれた。
- Windows の中で Linux カーネルが本物のまま動く仕組み
- VirtualBox とか VMware みたいな仮想マシンとは違う
- Windows と Linux のファイルを行き来できる
- VS Code が Linux 側のフォルダをそのまま開いて開発できる
ふぅん。聞いたことくらいはあった気がする。Web の記事でちらっと見た記憶もある。 でも俺は Windows ネイティブで Claude Code が動いてるから、必要ないと思ってた。
そしたら Claudeさんがもうひとつ爆弾を落としてきた。
「Claude Code は Windows ネイティブだとパフォーマンスが本来の 7 割くらいしか出ません」
えっ。
まじかよ。Claude Code の本籍地は Linux
聞けば聞くほど、Claude Code というやつは Linux/macOS 寄りに作られている。
- 中で動いてるツールが軒並み POSIX/bash 前提
- フックや MCP サーバまわりも、Linux 環境でこそ素直に動く
- 公式ドキュメントの手順も、サンプルがだいたい bash
- Windows ネイティブだと、コマンドの差異を埋めるための変換レイヤを通すぶん引っかかりが出る
つまり俺は2ヶ月の間、Linux 用に作られたツールを Windows で頑張らせてたわけだ。 動いてないわけじゃない。動いてる。動いてるけど、たぶん最高速ではない。
待て、思い当たる節がありすぎる
ここまで聞いて、急に色々合点がいった。
俺、これまで Claude Code 周りでちょくちょく詰まってたんだよね。
- 公式手順のサンプルが bash で、毎回 PowerShell に脳内変換していた
- npm パッケージのインストールが Windows だけで失敗する
- 入れてみたフックが「ローカル変数の展開がおかしい」みたいな理由で動かない
- MCP サーバの設定例が
~/.config/...前提で、そもそもパス構造が違う - VS Code の拡張、入れたのに反応しなくて再起動を何度もする
毎回「Windows だから仕方ないか……」で済ませてきた。 「Windows 特有の対処」をひたすら検索して、StackOverflow の青文字を踏みまくって時間を溶かして、なんとか動かしてきた。
これ全部、WSL2 を俺が使ってなかっただけ?
まじかよ!!!
いや、ホントに、まじかよ。 あの夜に諦めて投げ出したプラグインも、頑張って通したあのフックも、最初から Linux 側で動かしてたら一瞬だったのか。 返してくれ俺の週末を。
また Claude、お前………
ここで既視感がすごい。
/init を知らなかった時もそうだった。
CLAUDE.md の存在を知らなかった時もそうだった。
Plan モードを使ってなかった時もそうだった。
そして今度は WSL2。
大事なやつほど Claude が自分から教えてくれない問題、これたぶん業界共通の罠だと思う。 新規ユーザーは公式ドキュメントを上から下まで読まないし、起動時に「あなたの環境、本気出せてないですよ」とは表示されない。とりあえず動いてしまうから、その状態で何ヶ月も走れてしまう。
俺と同じ Windows ネイティブの Claude Code ユーザー、たぶん今この瞬間にも全国でゴリゴリ動かしてる。 動くけど、本気じゃない 7 割の Claude を。
もっと早く教えてくれよ Claudeおおおおお。
引っ越した
というわけで WSL2 に引っ越した。手順は驚くほど簡単だった。
PowerShell を管理者で開いて1コマンド。
wsl --install
これでデフォルトの Ubuntu が落ちてきて、再起動して、ユーザー作って、終わり。 あとは VS Code に WSL 拡張 を入れて、左下の緑のボタンから「Connect to WSL」を選ぶと、VS Code が Linux 側にシームレスに繋がる。
Claude Code の再インストールも、Linux 側のターミナルで素直に通った。 むしろ公式ドキュメントの手順がそのまま使える。Windows 専用の注意書きを読まなくていい。これは強い。
ひとつだけ罠があった。Windows 側のフォルダにあるプロジェクトを、Linux 側からそのまま触らない方がいい。/mnt/c/... を経由するとファイルアクセスが激遅で、せっかくの WSL2 が台無しになる。Linux 側 (~/projects/ あたり) に git clone し直すのが正解。
引っ越した結果
体感、軽くなった。
- ターミナル操作のレスポンスがキビキビした
- npm install / hugo build みたいなコマンドが目に見えて速い
- 公式チュートリアルの通りに進められるので、詰まる回数が減った
- bash で書かれたフックや小さいスクリプトが、変換なしでそのまま動く
数字で示せと言われると困るし、「7 割しか出てなかった」を逆算できるベンチマークを取ったわけでもない。 ただ、詰まる回数が減ったのはハッキリしてる。これは効率の話で、俺の体感だと一日に何回かの「あれ動かないな」が消えた。それだけで十分元は取れてる。
まとめ
Claude Code をガッツリ使うなら、WSL2 は前提だと思った方がいい。 Windowsネイティブで頑張れる範囲もあるが、本来の挙動を引き出したいなら Linux 側に置くのが素直だ。
/init と CLAUDE.md と並んで、これから始める人に最初に伝えたいのが WSL2 になった。
公式ドキュメントは英語だし、起動時に教えてくれるわけでもないので、気付かないのは当たり前だと思う。 だから書く。俺と同じ罠で2ヶ月をすり減らす人を、ひとりでも減らすために。
このブログ「Claude Code 始めました」は、Claude MAX ユーザーが実際の開発で使いながら学んだことを記録していくサイトです。