Skip to content

Windows 11 ネイティブ環境への Claude Code セットアップ手順

Flutter(Windowsデスクトップ含む)開発のための、Windows 11 ネイティブ環境へのClaude Codeセットアップ記録。

前提

  • OS: Windows 11
  • ターミナル: PowerShell
  • 目的: Flutter(Android + Windowsデスクトップ)開発で Claude Code を利用する

1. Git for Windows のインストール(winget 経由)

Claude Code はネイティブ Windows 版でも内部的に Git Bash を利用するため、Git for Windows を先にインストールする。

インストール

PowerShell で以下を実行:

powershell
winget install --id Git.Git -e
  • --id Git.Git: パッケージID指定
  • -e--exact): ID完全一致検索。似た名前の別パッケージが選ばれるのを防ぐ

インストール後の確認

ターミナルを一度閉じて開き直してから以下を実行:

powershell
git --version
where.exe git
where.exe bash

期待される出力例:

git version 2.xx.x.windows.x
C:\Program Files\Git\cmd\git.exe
C:\Program Files\Git\bin\bash.exe

メモ: PowerShell には Where-Object(エイリアス where)という別コマンドが存在するため、Windows 標準の検索コマンドを呼ぶ時は where.exe と拡張子を明示する。

初期設定

powershell
git config --global user.name "Katsushi"
git config --global user.email "your-email@example.com"

2. Claude Code のインストール(irm | iex 経由)

インストール

PowerShell で以下を実行:

powershell
irm https://claude.ai/install.ps1 | iex

コマンドの意味

要素説明
irmInvoke-RestMethod のエイリアス。指定URLからコンテンツを取得する(curl相当)
|パイプ。左の出力を右の入力に渡す
iexInvoke-Expression のエイリアス。文字列をPowerShellコードとして実行する(eval相当)

つまりこの一行は「インストーラスクリプトをダウンロードして、ファイルに保存せずそのまま実行する」という意味。Linux の curl -fsSL ... | sh と同じイディオム。

注意: irm | iex パターンは、信頼できる発行元のURLでのみ使うこと。今回は claude.ai の公式ドメインなので問題なし。

インストール後の確認

ターミナルを一度閉じて開き直してから

powershell
claude --version
claude doctor

claude doctor は環境問題を診断してくれるコマンド。最初に走らせておくと安心。


3. PATH 設定(必要な場合)

Claude Code 起動時に以下のメッセージが出る場合がある:

Native installation exists but C:\Users\<username>\.local\bin is not in your PATH.

これは Claude Code 本体(claude.exe)が ~\.local\bin に置かれているが、PATH に含まれていないことを示す。

GUI で PATH 追加(推奨:初回向け)

  1. Win + R で「ファイル名を指定して実行」を開く
  2. sysdm.cpl を入力して Enter → システムのプロパティが開く
  3. 「詳細設定」タブ → 「環境変数(N)...」 をクリック
  4. 上段の 「ユーザー環境変数」 から Path を選択
  5. 「編集(E)...」「新規(N)」 をクリック
  6. C:\Users\<username>\.local\bin を入力(<username> は自分のユーザー名)
  7. 「OK」を3回押して全画面を閉じる
  8. PowerShell を全て閉じて開き直す

コマンドで PATH 追加(高速)

powershell
[Environment]::SetEnvironmentVariable(
    "PATH",
    "$([Environment]::GetEnvironmentVariable('PATH','User'));$env:USERPROFILE\.local\bin",
    [EnvironmentVariableTarget]::User
)

実行後、ターミナルを開き直せば反映される。

確認

powershell
claude --version

バージョンが表示されれば成功。


4. 補足:irm | iex 方式と winget 方式の使い分け

方式メリットデメリット
irm | iex(インストーラスクリプト)公式が用意した最新版が確実に入る。PATH等の設定もスクリプトが面倒を見る更新は claude update か再実行が必要
winget installWindows のパッケージ管理体系に統合される。winget upgrade --all で他ツールと一括更新可能wingetリポジトリへの反映に数日のタイムラグがある場合あり

今回は Claude Code は irm | iex、Git for Windows は winget という使い分けを採用。


参考:PowerShell コマンドの読み方

略記正式名役割
irmInvoke-RestMethodHTTP取得(curl相当)
iexInvoke-Expression文字列をコードとして実行(eval相当)
wingetWindows Package ManagerWindows標準のパッケージマネージャ(apt/Homebrew相当)
where.exeWindows標準コマンドコマンドの実行ファイルパス検索(whichに近い)