Claude Media
Claude Code install完全ガイド — Windows・Mac・Linux別の手順とnpm・更新まで

Claude Code install完全ガイド — Windows・Mac・Linux別の手順とnpm・更新まで

Claude Codeのインストール手順をWindows・macOS・Linux別にまとめます。ネイティブインストーラーとnpmの使い分け、アップデート、アンインストール、導入時のつまずき対処まで一気に確認できます。

Claude Codeをインストールする一番の近道

Claude Codeのインストールは、ターミナルでコマンドを1行実行するだけで完了します。macOS・Linux・WSLなら curl -fsSL https://claude.ai/install.sh | bash、WindowsならPowerShellで irm https://claude.ai/install.ps1 | iex を実行する方法(ネイティブインストーラー)が推奨されており、Node.jsの事前準備も不要です。

Claude Codeとは、Anthropicが提供するターミナル上で動くエージェント型AIコーディングツールです。コードの読み書きからシェルコマンドの実行、Git操作までを自然言語の指示でこなします。ツール自体の全体像はClaude Codeとは何かをまとめた解説記事で扱っているので、この記事では「手元のマシンで claude コマンドが動き、ログインまで終わる」状態に到達することに絞って手順を追います。

インストール前に確認する3つのこと

先にシステム要件・アカウント・インストール方法の3点を確認しておくと、途中でやり直しになりません。特にアカウント要件は見落としやすいポイントです。

システム要件

項目要件
OS要件macOS 13.0以上 / Windows 10 1809以上(Server 2019以上) / Ubuntu 20.04以上・Debian 10以上・Alpine 3.19以上
ハードウェア要件4GB以上のRAM、x64またはARM64プロセッサ
シェル要件Bash / Zsh / PowerShell / CMDのいずれか
ネットワーク要件インターネット接続が必須
利用地域要件Anthropicの対応国のみ

ネイティブインストーラーは自己完結型のバイナリを配置するため、Node.jsは不要です。Node.jsが要るのはnpm経由でインストールする場合のみ(v2.1.198以降はNode.js 22以上)という点は、古い情報と混同しやすいので注意してください。

アカウント(プラン)要件

Claude Codeの利用にはPro・Max・Team・EnterpriseのいずれかのサブスクリプションプランかConsole(API)アカウントが必要です。無料のClaude.aiプランにはClaude Codeのアクセスが含まれていません。どのプランで使うのが自分に合うかは、Claude Codeの料金とプラン選びの判断ガイドが参考になります。Amazon Bedrock、Google CloudのAgent Platform(旧Vertex AI)、Microsoft Foundryの3つがサードパーティ経由の認証先として選べます。

インストール方法の使い分け早見表

方法対象自動更新向いているケース
ネイティブインストーラー対象macOS / Linux / WSL / Windows自動更新あり向いているケースほとんどの利用者。迷ったらこれ
Homebrew対象macOS自動更新既定なし(brew upgrade)、環境変数で自動化可向いているケースbrewでツールを一元管理したい
WinGet対象Windows自動更新既定なし(winget upgrade)、環境変数で自動化可向いているケースwingetで管理を統一したい
apt / dnf / apk対象Debian系 / Fedora系 / Alpine自動更新なし(システム更新に同梱)向いているケースサーバー群をパッケージ管理したい
npm対象Node.js 22以上がある環境自動更新あり(権限による)向いているケース既存のnpm運用に載せたい・CIで使う

どの方法でもインストールされる本体は同じネイティブバイナリです。違いは配布経路と更新の仕組みだけなので、管理しやすい経路を選べば問題ありません。HomebrewとWinGetは既定では手動更新ですが、CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE環境変数を1に設定すると、新しい版があるときにClaude Codeがバックグラウンドでbrew upgradewinget upgrade相当のアップグレードを実行し、成功すると再起動を促します。

macOSにインストールする手順

macOSではcurlによるネイティブインストールが最短です。Homebrewユーザーならcaskでも導入できます。

curl -fsSL https://claude.ai/install.sh | bash

Homebrewを使う場合は次のとおりです。

brew install --cask claude-code

Homebrewには2つのcaskがあります。claude-code は安定版チャネル(最新からおよそ1週間遅れで、大きな不具合のあるリリースをスキップ)を追跡し、claude-code@latest はリリース直後の最新版を追跡します。Homebrew経由は既定では自動更新されず、brew upgrade claude-code を定期的に実行する運用になります。settings.jsonで CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE1 にすれば、この更新をClaude Code自身がバックグラウンドで代行します。

バイナリは「Anthropic PBC」名義で署名されApple公証済みなので、Gatekeeperの警告なしに起動できます。

Windowsにインストールする手順

WindowsはネイティブとWSLの2通りの動かし方があり、まずどちらで使うかを決めます。Windowsネイティブのプロジェクトを扱うならネイティブ、Linuxツールチェーンやサンドボックス実行(WSL 2のみ対応)が必要ならWSLが向いています。

ネイティブWindowsの場合

PowerShellを開いて次を実行します。管理者権限は不要です。

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

CMDから入れる場合はコマンドが異なります。

curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

The token '&&' is not a valid statement separator と出たらPowerShellでCMD用コマンドを実行しています。逆に 'irm' is not recognized と出たらCMDでPowerShell用コマンドを実行しています。プロンプトの行頭が PS C:\ ならPowerShell、C:\ だけならCMDです。

WinGetで管理したい場合は次の1行でも導入できます(既定では自動更新なし。CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE=1 で有効化できます)。

winget install Anthropic.ClaudeCode

ネイティブWindowsではGit for Windowsの導入が推奨されています。Git Bashが入るとClaude CodeがBashツールでシェルコマンドを実行できるためです。なくても動作はしますが、その場合シェル実行はPowerShellツール経由になります。Git for Windowsを入れたのにGit Bashが見つからないと言われる場合は、settings.jsonでパスを明示すると解決します。

{
  "env": {
    "CLAUDE_CODE_GIT_BASH_PATH": "C:\\Program Files\\Git\\bin\\bash.exe"
  }
}

WSLの場合

WSLのディストリビューション(Ubuntuなど)のターミナルを開き、Linux用のインストールコマンドをそのまま実行します。

curl -fsSL https://claude.ai/install.sh | bash

PowerShellやCMDからではなく、必ずWSLターミナル内でインストールと起動を行う点だけ間違えないようにしてください。WSL環境ではGit for Windowsは不要です。

Linuxにインストールする手順

LinuxでもcurlのネイティブインストールがそのままUbuntu・Debian・Alpineなどで使えます。サーバー群を構成管理しているなら、署名付きのapt・dnf・apkリポジトリからの導入も選べます。Ubuntuでbubblewrap依存のエラーに当たった場合はClaude Code Ubuntuインストールで解決手順をまとめています。

curl -fsSL https://claude.ai/install.sh | bash

Debian/Ubuntuでaptリポジトリを使う場合は次のとおりです。

sudo install -d -m 0755 /etc/apt/keyrings
sudo curl -fsSL https://downloads.claude.ai/keys/claude-code.asc \
  -o /etc/apt/keyrings/claude-code.asc
echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/stable stable main" \
  | sudo tee /etc/apt/sources.list.d/claude-code.list
sudo apt update
sudo apt install claude-code

Fedora/RHELは sudo dnf install claude-code(リポジトリ定義を追加後)、Alpineは apk add claude-code で同様に導入できます。パッケージマネージャー経由はClaude Code自身では自動更新されず、sudo apt upgrade claude-code のような通常のシステム更新フローで新しい版を受け取ります。

Alpineなどmuslベースのディストリビューションでネイティブインストーラーを使う場合は注意が必要です。素のAlpineにはbashcurlが入っておらず、インストールコマンドのcurl -fsSL ... | bash自体がnot foundエラーで失敗します。先にapk add bash curl libgcc libstdc++ ripgrepでこれらを追加インストールし、settings.jsonで USE_BUILTIN_RIPGREP=0 を設定してから実行してください。

npmでインストールする手順

既存のNode.js環境やCIパイプラインに載せたい場合はnpmグローバルインストールが使えます。v2.1.198以降のnpmパッケージはNode.js 22以上を前提とします。それより古いNode.jsでは、インストール時に EBADENGINE 警告が表示されますが処理自体は失敗せず完了し、claude も動作します(このパッケージは実行時にNode.jsを使わないネイティブバイナリを取得するためです)。

npm install -g @anthropic-ai/claude-code

npmパッケージの中身もスタンドアロン版と同じネイティブバイナリで、@anthropic-ai/claude-code-darwin-arm64 のようなプラットフォーム別のoptional dependency経由で取得されます。このため、npmの設定でoptional dependencyを無効化している(--omit=optional.npmrcoptional=false)とバイナリが見つからず起動に失敗します。このnative binary not installedエラーの原因切り分けとnpm・pnpm・yarn別の直し方は「native binary not installed」の直し方にまとめています。

注意点が2つあります。sudo npm install -g は権限の問題とセキュリティリスクにつながるため使わないこと。更新時は npm update -g ではなく npm install -g @anthropic-ai/claude-code@latest を使うことです(npm update -g は元のsemver範囲に縛られ、最新に上がらないことがあります)。

インストール後の確認とログイン

インストールが終わったら、バージョン表示とログインの2ステップで使える状態にします。まず新しいターミナルを開いて確認します。

claude --version
claude doctor

claude --version でバージョンが表示されれば配置は成功です。claude doctor はインストール形態・自動更新の状態・設定の診断レポートを出すコマンドで、不調時の切り分けにも使えます。

続いて作業したいプロジェクトのディレクトリで claude を起動すると、初回はブラウザーが開いて認証を求められます。Claude.aiのサブスクリプション(Pro/Max/Team/Enterprise)かConsoleアカウントでログインすれば完了です。SSH先やコンテナ内などブラウザーが開けない環境では、ターミナルに表示されるURLを手元のブラウザーで開き、表示されたコードを貼り付ける方式でログインできます。

CIパイプラインなどブラウザーログイン自体が使えない環境では、claude setup-token で1年有効のOAuthトークンを発行し、CLAUDE_CODE_OAUTH_TOKEN 環境変数に設定する方法があります(Pro以上のサブスクリプションプランが必要です)。アカウントの作成方法やログイン方式の全体像はClaudeログインガイドで扱っています。

アップデートの仕組みと手動更新

ネイティブインストールは起動時と実行中に更新を自動チェックし、バックグラウンドでダウンロードして次回起動時に反映します。つまり通常は何もしなくても最新版に保たれます。今すぐ更新を当てたいときは手動コマンドが使えます。

claude update

更新の挙動は設定で細かく制御できます。

設定効果
autoUpdatesChannel: "latest"効果既定。リリース直後に新機能を受け取る
autoUpdatesChannel: "stable"効果約1週間遅れの安定版を追跡し、大きな不具合の版をスキップ
minimumVersion効果これ未満への更新・ダウングレードを拒否する下限を設定
env.DISABLE_AUTOUPDATER: "1"効果バックグラウンド自動更新のみ停止(claude update は可)

チャネル切り替えはClaude Code内の /config →「自動更新チャネル」か、settings.jsonへの追記で行います。ネイティブインストーラーは引数でチャネル(latest / stable)やバージョン番号を受け取り、インストール時に選んだチャネルがそのまま以後の自動更新の既定になります。また、Enterpriseのmanaged settingsで minimumVersion を設定すると、ユーザーやプロジェクトの設定では上書きできない下限バージョンを組織全体に強制できます。settings.jsonの書き方全般はClaude Codeのsettings.json解説にまとまっています。なお、apt/dnf/apk経由のインストールはこの自動更新の対象外で、通常のシステム更新コマンドが必要です。HomebrewとWinGetも既定では対象外ですが、CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE=1 を設定すればClaude Code側から代行できます。

ネイティブインストールのランチャー(~/.local/bin/claude)を独自のスクリプトやシンボリックリンクに置き換えている場合、v2.1.207からは挙動が変わりました。それより前は自動更新のたびにこのランチャーがClaude Code自身のシンボリックリンクで上書きされていましたが、v2.1.207以降は温存されます。新しいバージョンは~/.local/share/claude/versions/配下に追加インストールされるだけで、どの版を実行するかはカスタムランチャー側の判断に委ねられます。claude doctorはこの状態を「ネイティブインストーラーが作成していないランチャー」として報告します。ランチャーの管理をClaude Codeに戻したい場合は、~/.local/bin/claudeを削除してからclaude updateを実行します。

アンインストールの手順

アンインストールはインストール経路に対応した削除コマンドを実行するだけです。ネイティブインストールの場合は、バイナリとバージョンファイルを削除します。

rm -f ~/.local/bin/claude
rm -rf ~/.local/share/claude

他の経路は brew uninstall --cask claude-codewinget uninstall Anthropic.ClaudeCodenpm uninstall -g @anthropic-ai/claude-codesudo apt remove claude-code がそれぞれ対応します。

設定や履歴まで完全に消したい場合は ~/.claude ディレクトリと ~/.claude.json も削除します。ただしこの操作で許可済みツール・MCPサーバー構成・セッション履歴がすべて消える点と、VS Code拡張やDesktopアプリが残っていると次回起動時にディレクトリが再作成される点には注意が必要です。方式別のコマンドと残存ファイルの消し方をより詳しく知りたい場合はClaude Codeアンインストールの手順にまとめています。

よくあるつまずきと対処

導入時のトラブルは原因がパターン化しています。ここでは正常な手順に沿って進めるための頻出パターンだけを扱い、エラーメッセージから原因を1つずつ切り分ける詳しい手順はClaude Codeインストールエラーの切り分けチェックリストに譲ります。インストール後に出るエラーはClaude Codeのトラブルシューティングガイドが対象です。

claudeコマンドが見つからない

インストール成功後の command not found: claude は、インストール先がPATHに入っていないのが原因です。バイナリはmacOS/Linuxで ~/.local/bin/claude、Windowsで %USERPROFILE%\.local\bin\claude.exe に置かれます。macOSなら次でPATHに追加できます。

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

Windowsではターミナルの再起動で直ることも多く、直らなければユーザー環境変数のPathに %USERPROFILE%\.local\bin を追加します。

なお、VS Code拡張だけを入れた状態では ~/.local/bin/claude は存在しません。拡張はCLIのコピーを内蔵していますが claude コマンドをPATHには置かないため、ターミナルから使うには本記事のインストールが別途必要です。

インストールスクリプトがHTMLや403を返す

syntax error near unexpected token '<'curl: (22) ... 403 は、インストールURLがスクリプトではなくHTMLページやエラーを返したサインです。利用できない地域からのアクセス、企業プロキシやファイアウォールによる downloads.claude.ai の遮断が主な原因になります。プロキシ環境では次の項の設定を確認してから再実行するか、HomebrewやWinGetなど別経路を試します。原因ごとの切り分け手順はinstall scriptがHTML/403を返す原因と対処で詳しく扱っています。

企業プロキシ・TLS検査環境での設定

企業ネットワークでは、プロキシの指定と社内CA証明書の指定の2段階を押さえると切り分けが早くなります。プロキシ経由の環境では、HTTPS_PROXY(必要なら HTTP_PROXY も)を設定してからインストールコマンドを実行します。プロキシのアドレスがわからない場合はIT部門に確認します。

export HTTPS_PROXY=http://proxy.example.com:8080
curl -fsSL https://claude.ai/install.sh | bash

TLS検査(SSLインスペクション)を行うプロキシの配下では、unable to get local issuer certificate のような証明書エラーが出ます。この場合、インストール時はcurlの --cacert で社内CA証明書を渡し、インストール後のClaude Code本体には NODE_EXTRA_CA_CERTS 環境変数で同じ証明書を指定します。証明書ファイルはIT部門から入手します。

# インストール時: curlに社内CA証明書を渡す
curl --cacert /path/to/corporate-ca.pem -fsSL https://claude.ai/install.sh | bash
 
# インストール後: API通信にも同じ証明書を使わせる
export NODE_EXTRA_CA_CERTS=/path/to/corporate-ca.pem

WSLでうまく動かない

WSLでのつまずきは大きく3つに分かれます。第一に、WSL1では cannot execute binary file: Exec format error が出てネイティブバイナリが動かない既知の問題があり、PowerShellで wsl --set-version <ディストリビューション名> 2 を実行してWSL2に変換するのが確実な解決策です。第二に、npm経由で入れた場合にWindows側のNode.jsを拾ってしまう問題があり、which npm の結果が /mnt/c/ で始まっていれば該当します。Linux側にディストリビューションのパッケージマネージャーかnvmでNode.jsを入れ直します。第三に、ログイン時にブラウザーが開かない場合は、BROWSER 環境変数にWindows側ブラウザーのパス(例: /mnt/c/Program Files/Google/Chrome/Application/chrome.exe)を設定するか、ログイン画面で c キーを押してURLをコピーし手動で開けば回避できます。

npmの権限エラー

npmグローバルインストールで権限エラーが出ても、sudo を付けるのは避けてください。npm固有の権限問題に深入りするより、ネイティブインストーラーへ切り替えるのが早道です。

低メモリのLinuxサーバーで「Killed」

VPSなどでインストール中に Killed と出るのはメモリ不足です。Claude Codeは4GB以上の空きRAMを必要とするため、sudo fallocate -l 2G /swapfile などで2GBのスワップを追加してから再実行します。

Dockerコンテナ内でインストールがハングする

Dockerコンテナでrootのままルートディレクトリ(/)でインストーラを実行すると、ファイルシステム全体のスキャンが走ってメモリを使い切り、ハングすることがあります。Dockerfileで WORKDIR /tmp を設定してからインストーラを実行すると回避できます。Docker Desktopでは docker build --memory=4g . のようにビルド時のメモリ上限を引き上げる方法もあります。

複数のインストールが競合する

過去にnpm版を入れていた環境では、新旧のバイナリが混在してバージョン不一致を起こすことがあります。which -a claude(Windowsは where.exe claude)で重複を確認し、~/.local/bin/claude のネイティブ版だけ残して他を削除します。レガシーなローカルnpm版は rm -rf ~/.claude/local で消せます。

よくある質問

Claude Codeのインストールは無料でできますか

インストール自体は無料ですが、利用にはPro以上のサブスクリプションプランかConsole(API従量課金)アカウントが必要です。無料のClaude.aiアカウントではClaude Codeを利用できません。

インストールにNode.jsは必要ですか

ネイティブインストーラー・Homebrew・WinGet・apt/dnf/apk経由なら不要です。Node.jsが要るのはnpm経由でインストールする場合だけで(v2.1.198以降はNode.js 22以上)、その場合もインストールされる claude バイナリ自体はNodeを呼び出しません。

npmとネイティブインストーラーはどちらを選ぶべきですか

中身は同じネイティブバイナリなので機能差はありません。自動更新が確実に効き権限問題も起きにくいネイティブインストーラーが基本で、npmは既存のNode.js運用やCIに組み込みたい場合の選択肢です。

特定のバージョンを指定してインストールできますか

できます。ネイティブインストーラーは引数でバージョン番号やチャネルを受け取り、たとえば curl -fsSL https://claude.ai/install.sh | bash -s 2.1.89 で特定版を、bash -s stable で安定版チャネルを指定できます。

自動アップデートを止められますか

settings.jsonの envDISABLE_AUTOUPDATER"1" にするとバックグラウンド更新だけ止まります(手動の claude update は可能)。手動更新も含めて完全に固定したい場合は DISABLE_UPDATES を設定します。

まとめ

Claude Codeのインストールは、macOS/Linux/WSLなら curl -fsSL https://claude.ai/install.sh | bash、WindowsならPowerShellの irm https://claude.ai/install.ps1 | iex の1行で完了し、claude --versionclaude 起動 → ブラウザーログインの流れで使い始められます。ネイティブインストールなら更新も自動で、運用の手間はほぼかかりません。導入が済んだら、Claude Codeの全体像と使い方で何ができるかを押さえつつ、挙動を制御したくなったタイミングでsettings.jsonの設定に進むのがスムーズです。

この記事を共有:XはてブLinkedIn