1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Windows 11 Pro + WSL2 + VS Codeで実現する最強のAIコーディング環境構築ガイド

Posted at

はじめに

AIコーディングアシスタント(Codex、Claude Code)を使い始めたものの、以下のような課題に直面していませんか?

  • Codex CLIで改行がうまくできない
  • 画像を添付できない
  • VS Codeのチャット欄が狭すぎて長文が書きづらい
  • Windows環境だけどUbuntuのコマンドラインに慣れている
  • ローカルファイルを自在に編集したい

本記事では、これらの課題を一挙に解決する「Windows 11 Pro + WSL2 + VS Code」による統合開発環境の構築方法を、実際のトラブルシューティングを交えながら詳しく解説します。

目次

  1. Codex CLIの基本的な問題と解決策
  2. VS Codeでの快適な環境構築
  3. WSL2との完全統合
  4. Codex/Claude Codeの導入と設定
  5. 最終的な最強構成
  6. まとめ

Codex CLIの基本的な問題と解決策

問題1: 改行がうまくできない

Codex CLIはマルチライン入力まわりで既知の不具合があります(貼り付けで1行目だけ送信される等)。

解決策

方法1: ファイル経由で渡す(最も確実)

# prompt.md に複数行の指示を書く
codex "$(cat prompt.md)"

引数一つに改行を含んだ文字列として渡せるので、貼り付け暴発を回避できます。

方法2: インタラクティブTUIを使う

# そのまま起動してコンポーザー(入力欄)に書く
codex

方法3: 端末の正しい貼り付け

多くのLinux/WSL端末では Ctrl+Shift+V が必要です。

方法4: 最新版へ更新

npm install -g @openai/codex@latest
# または
brew upgrade codex

問題2: 画像を添付できない

解決策

正式な方法: --image フラグを使う

codex -i screenshot.png "このエラーを説明して"
codex --image graph.png,ui.jpg "図を要約して"

WSLでの注意点:

  • 画像はWSL側のファイルパス(例: /home/…/img.png)を渡す
  • クリップボード直貼りは端末/WSL組合せで通らない例があるため、ファイル指定が最も確実

VS Codeでの快適な環境構築

チャット欄を広くする方法

VS Codeで「書き込み欄が小さい」問題は、以下の方法で大幅に改善できます。

1. パネルを右側に移動

Ctrl+Shift+P → "View: Toggle Panel Position"

右パネルにすると縦方向が広くなり、長文入力が楽になります。

2. パネル最大化トグルを設定

Ctrl+Shift+P → "View: Toggle Maximized Panel"

これを好みのキー(例: Ctrl+Alt+M)に割り当てると、ワンキーで全画面チャット↔元の表示を切り替えられます。

keybindings.jsonへの追加例:

[
  { "key": "ctrl+alt+m", "command": "workbench.action.toggleMaximizedPanel" },
  { "key": "alt+up", "command": "workbench.action.increaseViewSize" },
  { "key": "alt+down", "command": "workbench.action.decreaseViewSize" }
]

3. セカンダリ・サイドバーを活用

Ctrl+Alt+B → "View: Toggle Secondary Side Bar Visibility"

これにより、横長レイアウトが作れます:

  • 左: Explorer
  • 中央: エディタ・ターミナル
  • 右: Codex/Claude Codeチャット

4. ターミナルをエディタ領域に移動

ターミナルタブを右クリック → "Move Terminal Into Editor Area"

これでターミナルをエディタのタブとして広々扱えます。

推奨settings.json設定

.vscode/settings.json に以下を追加:

{
  "workbench.panel.defaultLocation": "right",
  "workbench.editor.openSideBySideDirection": "right",
  "editor.wordWrap": "on"
}

WSL2との完全統合

なぜWSL2が最強なのか?

Ubuntuのコマンドライン操作に慣れた開発者がWindows環境で作業する場合、VS Code + WSL2の組み合わせが最適解です。

メリット:

  1. Ubuntuと同じ感覚: bash/apt/pip/nvmが素直に動く
  2. ファイルI/Oが速い: WSL側にプロジェクトを置けば高速
  3. GPU/GUIも対応: WSLgで簡単なGUI、CUDA/AI推論も可能
  4. Windowsの良さも活用: ブラウザ・Office・各種ドライバはWindows側で

ステップ1: Remote-WSL拡張のインストール

  1. VS Codeの拡張ビューで「Remote - WSL」を検索してインストール
  2. 拡張ID: ms-vscode-remote.remote-wsl

ステップ2: WSL窓でプロジェクトを開く

重要: ウィンドウ左下のステータスバーが WSL: Ubuntu になっていることを確認してください。Local の場合、拡張がWindows側で動いてしまいます。

方法A: コマンドパレットから

Ctrl+Shift+P → "WSL: New WSL Window"
→ "Open Folder" で \\wsl$\Ubuntu\home\<あなた>\ 配下を選択

方法B: WSLシェルから直接

# WSL(Ubuntu)のシェルで
cd ~/work/myproject
code .

方法C: 既存のウィンドウを開き直す

Ctrl+Shift+P → "WSL: Reopen Folder in WSL"

ステップ3: プロジェクトをWSL側に配置

推奨: /home/<user>/work/... に配置

避けるべき: /mnt/d/... などのWindowsドライブ直下(速度・権限の問題)

# Windowsドライブからホームディレクトリへ移動
mkdir -p ~/work
rsync -avh /mnt/d/your_project/ ~/work/your_project/

ステップ4: ターミナル設定の最適化

.vscode/settings.json に以下を追加:

{
  "terminal.integrated.defaultProfile.windows": "Ubuntu (WSL)",
  "terminal.integrated.cwd": "${workspaceFolder}",
  "workbench.panel.defaultLocation": "right"
}

効果:

  • デフォルトターミナルが常にWSL(Ubuntu)になる
  • 新規ターミナルは常にワークスペース直下で開く
  • パネルが右側に配置される

ステップ5: Gitの設定

WSL内で以下を実行:

git config --global core.autocrlf input  # 改行をLFで統一
git config --global core.filemode false  # 不要なら権限差分を無視
git config --global user.name "Your Name"
git config --global user.email "your@email.com"

Codex/Claude Codeの導入と設定

Codexの導入(VS Code拡張)

  1. WSL窓で拡張ビューを開く
  2. "Codex – OpenAI's coding agent" を検索
  3. "Install in WSL" をクリック(重要!)

これでCodexの実行主体もWSL側になり、PowerShell経由にならなくなります。

Claude Codeの導入(VS Code拡張)

  1. WSL窓で拡張ビューを開く
  2. "Claude Code" (Anthropic公式) を検索
  3. "Install in WSL" をクリック
  4. 画面の案内に従ってサインイン(またはAPIキー設定)

作業ディレクトリの把握と切り替え

現在地の確認

  • ターミナルで pwd
  • VS Codeのタイトルバー(ウィンドウ上部)
  • Explorerの一番上のフォルダ名

作業ディレクトリの変更方法

方法1: File → Open Folderで別フォルダを開く

方法2: マルチルートワークスペース

File → Add Folder to Workspace...

複数フォルダを一つの.code-workspaceに束ねる。指示でフォルダを明示すれば迷わない。

方法3: プロンプトで相対パスを明示(最も確実)

「./apps/web/src/App.tsx の X を Y に変更して」
「packages/shared 以下の *.ts から unused export を削除」

エクスプローラーとの連携

  • Ctrl+Shift+E でExplorer表示
  • エディタ上で右クリック → "Reveal in Explorer"(ファイルの場所をツリーで表示)
  • Explorer上でフォルダ右クリック → "Open in Integrated Terminal"(その場所でWSLシェルが開く)

最終的な最強構成

完全版settings.json

.vscode/settings.json:

{
  // WSL設定
  "terminal.integrated.defaultProfile.windows": "Ubuntu (WSL)",
  "terminal.integrated.cwd": "${workspaceFolder}",
  
  // UI最適化
  "workbench.panel.defaultLocation": "right",
  "workbench.editor.openSideBySideDirection": "right",
  "editor.wordWrap": "on",
  
  // Python設定(該当する場合)
  "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python",
  
  // フォーマット設定
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "source.organizeImports": true
  }
}

完全版keybindings.json

keybindings.json:

[
  // パネル最大化
  { "key": "ctrl+alt+m", "command": "workbench.action.toggleMaximizedPanel" },
  
  // ビューサイズ調整
  { "key": "alt+up", "command": "workbench.action.increaseViewSize" },
  { "key": "alt+down", "command": "workbench.action.decreaseViewSize" },
  
  // セカンダリサイドバー
  { "key": "ctrl+alt+b", "command": "workbench.action.toggleSecondarySideBarVisibility" }
]

Dev Containers(任意だが超推奨)

プロジェクトをどのマシンでも同じ依存関係に固定できます。

Ctrl+Shift+P → "Dev Containers: Add Dev Container Configuration Files..."

テンプレート(Python/Node/…)を選ぶと .devcontainer/devcontainer.json が生成され、VS Codeがコンテナ内で再オープンします。

効果:

  • 環境差でコケない
  • チーム全員が同じ環境で作業できる
  • CI/CDとの整合性が高まる

日常の運用パターン(失敗しない型)

  1. 課題の骨子をまず投げる

    「/api/users にページング追加。既存E2Eテストを緑に保ったまま、
    クライアントのUserTableも対応」
    
  2. 影響範囲を要約させる(設計ズレ防止)

  3. 小刻み差分で進める(1コミット=1意図)

    • 「まずバックエンドの型だけ」
    • 「次にAPI実装」
    • 「最後にフロント修正→統合テスト」
  4. CI/タスクをVS Codeに登録.vscode/tasks.json

    {
      "version": "2.0.0",
      "tasks": [
        {
          "label": "dev",
          "type": "shell",
          "command": "npm run dev",
          "problemMatcher": []
        },
        {
          "label": "test",
          "type": "shell",
          "command": "npm test",
          "problemMatcher": []
        }
      ]
    }
    
  5. 長文は"骨子→展開"(チャット欄の改行・貼り付け事故を減らす)


トラブルシューティング

Q1: "WSL: Reopen Folder in WSL" が見つからない

原因: Remote-WSL拡張が入っていないか、VS Codeの再起動が必要

解決策:

  1. Remote-WSL拡張をインストール
  2. VS Codeを再起動
  3. コマンドパレットを再度開く

Q2: チャットはWSLだがビルドが遅い

原因: /mnt/d/... など、Windowsドライブ直下で作業している

解決策:

# WSL側のホームディレクトリに移動
mkdir -p ~/work
rsync -avh /mnt/d/your_project/ ~/work/your_project/
cd ~/work/your_project
code .

Q3: Codex/Claudeが別の場所を触る

原因: 作業ディレクトリが不明確

解決策: 指示に相対パスを必ず含める

「./apps/web/src/App.tsx を修正」
「packages/shared 配下の *.ts から unused export 削除」

Q4: 改行の長文が打ちづらい

解決策:

  • パネル最大化(Ctrl+Alt+M
  • 右パネル化
  • 必要ならZen Mode(Ctrl+K Z

Q5: 画像が添付できない(WSL)

原因: クリップボード貼り付けが不安定

解決策: ファイル指定を使う

codex --image ~/screenshots/error.png "このエラーを説明して"

環境別セットアップ手順

Python環境

# venv作成
sudo apt update && sudo apt install -y python3-venv
python3 -m venv .venv
source .venv/bin/activate
pip install -U pip

# VS Codeで選択
# Ctrl+Shift+P → "Python: Select Interpreter" → .venv を選択

Node.js環境

# nvmでNode管理
curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.nvm/nvm.sh
nvm install --lts
node -v && npm -v

まとめ

この構成の強み

  1. Ubuntuの快適さ: Linux標準のツールチェーンがそのまま使える
  2. Windowsの利便性: ブラウザ、Office、各種ドライバはWindows側で
  3. 統合された開発体験: VS CodeがWSLとシームレスに連携
  4. AIアシスタントの最大活用: Codex/Claude Codeが安定動作
  5. 再現性の高い環境: Dev Containersでどこでも同じ環境

最終チェックリスト

  • Remote-WSL拡張をインストール
  • WSL窓で開く(左下がWSL: Ubuntu
  • プロジェクトを~/work/...に配置
  • settings.jsonを設定
  • keybindings.jsonを設定
  • Codex/Claude CodeをWSLにインストール
  • ターミナルの既定をWSLに
  • Git設定を完了
  • Dev Containers導入(推奨)

次のステップ

  • tasks.json / launch.jsonで開発タスクを自動化
  • AGENTS.mdでプロジェクト固有の作法を定義
  • CI/CDとの統合
  • チーム全体への展開

この環境があれば、Windows 11 ProでもUbuntuと同等以上の快適な開発体験が得られます。AIアシスタントを最大限活用しながら、効率的な開発を進めていきましょう!


参考リンク


執筆日: 2025年10月
対象環境: Windows 11 Pro, WSL2 (Ubuntu), VS Code 1.98+

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?