インストーラーの内部構造

OpenClaw には 3 つのインストーラースクリプトがあり、openclaw.ai から配信されます。

スクリプトプラットフォーム機能
install.shmacOS / Linux / WSL必要に応じて Node をインストールし、npm(デフォルト)または git で OpenClaw をインストール。オンボーディングも実行可能。
install-cli.shmacOS / Linux / WSLNode + OpenClaw をローカルプレフィックス(~/.openclaw)にインストール。root 不要。
install.ps1Windows(PowerShell)必要に応じて Node をインストールし、npm(デフォルト)または git で OpenClaw をインストール。オンボーディングも実行可能。

クイックコマンド

install.sh

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
```

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --help
```

install-cli.sh

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash
```

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --help
```

install.ps1

```powershell
iwr -useb https://openclaw.ai/install.ps1 | iex
```

```powershell
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -Tag beta -NoOnboard -DryRun
```

注意: インストールは成功したものの新しいターミナルで openclaw が見つからない場合は、Node.js のトラブルシューティングを参照してください。


install.sh

ヒント: macOS/Linux/WSL での対話型インストールに推奨です。

フロー(install.sh)

ステップ1:OS の検出

macOS と Linux(WSL を含む)をサポート。macOS が検出された場合、Homebrew が未インストールならインストールします。

ステップ2:デフォルトで Node.js 24 を確保

Node のバージョンを確認し、必要に応じて Node 24 をインストール(macOS は Homebrew、Linux は NodeSource セットアップスクリプトで apt/dnf/yum に対応)。OpenClaw は互換性のため Node 22 LTS(現在 `22.16+`)もサポートしています。

ステップ3:Git の確保

Git が未インストールの場合はインストールします。

ステップ4:OpenClaw のインストール

- `npm` 方式(デフォルト):グローバル npm インストール
- `git` 方式:リポジトリをクローン/更新し、pnpm で依存関係をインストール、ビルド後、`~/.local/bin/openclaw` にラッパーをインストール

ステップ5:インストール後の処理

- アップグレードおよび git インストール時に `openclaw doctor --non-interactive` を実行(ベストエフォート)
- 適切な場合にオンボーディングを試行(TTY が利用可能、オンボーディングが無効化されていない、ブートストラップ/設定チェックに合格した場合)
- `SHARP_IGNORE_GLOBAL_LIBVIPS=1` をデフォルトで設定

ソースチェックアウトの検出

OpenClaw のチェックアウト内(package.json + pnpm-workspace.yaml)で実行された場合、スクリプトは以下を提案します:

  • チェックアウトを使用(git)、または
  • グローバルインストールを使用(npm

TTY が利用できずインストール方法が設定されていない場合、デフォルトで npm を使用し、警告を表示します。

無効な方式選択や無効な --install-method 値の場合、スクリプトは終了コード 2 で終了します。

例(install.sh)

デフォルト

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
```

オンボーディングをスキップ

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboard
```

Git インストール

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method git
```

ドライラン

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --dry-run
```
フラグリファレンス
フラグ説明
--install-method npm|gitインストール方式を選択(デフォルト:npm)。エイリアス:--method
--npmnpm 方式のショートカット
--gitgit 方式のショートカット。エイリアス:--github
--version <version|dist-tag>npm のバージョンまたは dist-tag(デフォルト:latest
--betabeta dist-tag を使用(利用可能な場合、なければ latest にフォールバック)
--git-dir <path>チェックアウトディレクトリ(デフォルト:~/openclaw)。エイリアス:--dir
--no-git-update既存チェックアウトの git pull をスキップ
--no-promptプロンプトを無効化
--no-onboardオンボーディングをスキップ
--onboardオンボーディングを有効化
--dry-run変更を適用せずにアクションを表示
--verboseデバッグ出力を有効化(set -x、npm の notice レベルログ)
--help使い方を表示(-h
環境変数リファレンス
変数説明
OPENCLAW_INSTALL_METHOD=git|npmインストール方式
OPENCLAW_VERSION=latest|next|<semver>npm のバージョンまたは dist-tag
OPENCLAW_BETA=0|1beta を使用(利用可能な場合)
OPENCLAW_GIT_DIR=<path>チェックアウトディレクトリ
OPENCLAW_GIT_UPDATE=0|1git 更新の切り替え
OPENCLAW_NO_PROMPT=1プロンプトを無効化
OPENCLAW_NO_ONBOARD=1オンボーディングをスキップ
OPENCLAW_DRY_RUN=1ドライランモード
OPENCLAW_VERBOSE=1デバッグモード
OPENCLAW_NPM_LOGLEVEL=error|warn|noticenpm のログレベル
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1sharp/libvips の動作制御(デフォルト:1

install-cli.sh

情報: ローカルプレフィックス(デフォルト ~/.openclaw)にすべてをインストールし、システム Node に依存しない環境向けに設計されています。

フロー(install-cli.sh)

ステップ1:ローカル Node ランタイムのインストール

ピン留めされたサポート対象の Node tarball(現在のデフォルト `22.22.0`)を `<prefix>/tools/node-v<version>` にダウンロードし、SHA-256 を検証します。

ステップ2:Git の確保

Git が未インストールの場合、Linux では apt/dnf/yum、macOS では Homebrew でインストールを試みます。

ステップ3:プレフィックス配下に OpenClaw をインストール

`--prefix <prefix>` を使って npm でインストールし、`<prefix>/bin/openclaw` にラッパーを配置します。

例(install-cli.sh)

デフォルト

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash
```

カスタムプレフィックス + バージョン

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --prefix /opt/openclaw --version latest
```

自動化用 JSON 出力

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclaw
```

オンボーディングの実行

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --onboard
```
フラグリファレンス
フラグ説明
--prefix <path>インストールプレフィックス(デフォルト:~/.openclaw
--version <ver>OpenClaw のバージョンまたは dist-tag(デフォルト:latest
--node-version <ver>Node のバージョン(デフォルト:22.22.0
--jsonNDJSON イベントを出力
--onboardインストール後に openclaw onboard を実行
--no-onboardオンボーディングをスキップ(デフォルト)
--set-npm-prefixLinux で現在のプレフィックスが書き込み不可の場合、npm プレフィックスを ~/.npm-global に強制設定
--help使い方を表示(-h
環境変数リファレンス
変数説明
OPENCLAW_PREFIX=<path>インストールプレフィックス
OPENCLAW_VERSION=<ver>OpenClaw のバージョンまたは dist-tag
OPENCLAW_NODE_VERSION=<ver>Node のバージョン
OPENCLAW_NO_ONBOARD=1オンボーディングをスキップ
OPENCLAW_NPM_LOGLEVEL=error|warn|noticenpm のログレベル
OPENCLAW_GIT_DIR=<path>レガシークリーンアップ参照パス(旧 Peekaboo サブモジュールチェックアウトの削除用)
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1sharp/libvips の動作制御(デフォルト:1

install.ps1

フロー(install.ps1)

ステップ1:PowerShell + Windows 環境の確認

PowerShell 5 以上が必要です。

ステップ2:デフォルトで Node.js 24 を確保

未インストールの場合、winget、次に Chocolatey、次に Scoop でインストールを試みます。Node 22 LTS(現在 `22.16+`)も互換性のためサポートされています。

ステップ3:OpenClaw のインストール

- `npm` 方式(デフォルト):選択された `-Tag` を使ったグローバル npm インストール
- `git` 方式:リポジトリをクローン/更新し、pnpm でインストール/ビルド、`%USERPROFILE%\.local\bin\openclaw.cmd` にラッパーをインストール

ステップ4:インストール後の処理

必要に応じてユーザー PATH に bin ディレクトリを追加し、アップグレードおよび git インストール時に `openclaw doctor --non-interactive` を実行(ベストエフォート)。

例(install.ps1)

デフォルト

```powershell
iwr -useb https://openclaw.ai/install.ps1 | iex
```

Git インストール

```powershell
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git
```

カスタム git ディレクトリ

```powershell
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -GitDir "C:\openclaw"
```

ドライラン

```powershell
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -DryRun
```

デバッグトレース

```powershell
# install.ps1 には専用の -Verbose フラグはまだありません。
Set-PSDebug -Trace 1
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
Set-PSDebug -Trace 0
```
フラグリファレンス
フラグ説明
-InstallMethod npm|gitインストール方式(デフォルト:npm
-Tag <tag>npm の dist-tag(デフォルト:latest
-GitDir <path>チェックアウトディレクトリ(デフォルト:%USERPROFILE%\openclaw
-NoOnboardオンボーディングをスキップ
-NoGitUpdategit pull をスキップ
-DryRunアクションの表示のみ
環境変数リファレンス
変数説明
OPENCLAW_INSTALL_METHOD=git|npmインストール方式
OPENCLAW_GIT_DIR=<path>チェックアウトディレクトリ
OPENCLAW_NO_ONBOARD=1オンボーディングをスキップ
OPENCLAW_GIT_UPDATE=0git pull を無効化
OPENCLAW_DRY_RUN=1ドライランモード

注意: -InstallMethod git を使用して Git がインストールされていない場合、スクリプトは終了し、Git for Windows のリンクを表示します。


CI と自動化

予測可能な実行のために非対話フラグ/環境変数を使用してください。

install.sh(非対話 npm)

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-prompt --no-onboard
```

install.sh(非対話 git)

```bash
OPENCLAW_INSTALL_METHOD=git OPENCLAW_NO_PROMPT=1 \
  curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
```

install-cli.sh(JSON)

```bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclaw
```

install.ps1(オンボーディングスキップ)

```powershell
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
```

トラブルシューティング

なぜ Git が必要なのですか?
`git` インストール方式では Git が必要です。`npm` インストールでも、依存関係が git URL を使用する際の `spawn git ENOENT` エラーを避けるため、Git のチェック/インストールが行われます。
Linux で npm が EACCES になるのはなぜですか?
一部の Linux 環境では、npm のグローバルプレフィックスが root 所有のパスを指しています。`install.sh` はプレフィックスを `~/.npm-global` に切り替え、シェル rc ファイル(存在する場合)に PATH のエクスポートを追加できます。
sharp/libvips の問題
スクリプトはデフォルトで `SHARP_IGNORE_GLOBAL_LIBVIPS=1` を設定し、sharp がシステムの libvips に対してビルドすることを防ぎます。上書きするには:

```bash
SHARP_IGNORE_GLOBAL_LIBVIPS=0 curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
```
Windows:「npm error spawn git / ENOENT」
Git for Windows をインストールし、PowerShell を再起動して、インストーラーを再実行してください。
Windows:「openclaw is not recognized」
`npm config get prefix` を実行し、そのディレクトリをユーザー PATH に追加してください(Windows では `\bin` サフィックスは不要)。その後、PowerShell を再起動してください。
Windows:インストーラーの詳細出力を取得するには
`install.ps1` は現時点で `-Verbose` スイッチを公開していません。
スクリプトレベルの診断には PowerShell トレースを使用してください:

```powershell
Set-PSDebug -Trace 1
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
Set-PSDebug -Trace 0
```
インストール後に openclaw が見つからない
通常は PATH の問題です。[Node.js のトラブルシューティング](/docs/install/node#トラブルシューティング)を参照してください。