ホーム チュートリアル カテゴリ Skills サイトについて
ZH EN JA KO
トラブルシューティング

OpenClawインストールエラー:Node.jsバージョン非互換の解決方法

· 7 分で読了

問題の説明

OpenClawをインストールする際に、以下のようなエラーメッセージが表示されることがあります:

npm ERR! engine Unsupported engine
npm ERR! notsup Not compatible with your version of node/npm: openclaw@latest
npm ERR! notsup Required: {"node":">=22.0.0"}
npm ERR! notsup Actual:  {"node":"18.17.1","npm":"9.6.7"}

または実行時:

SyntaxError: Unexpected token '??='
    at wrapSafe (internal/modules/cjs/loader.js:915:16)

これらのエラーは同じ根本原因を示しています:Node.jsのバージョンがOpenClawの最低要件である22.0.0未満であるということです。OpenClawはネイティブWebSocket、import属性、新しいモジュール解決アルゴリズムなど、Node.js 22+でのみサポートされる多くの言語機能を使用しているため、古いバージョンでは実行できません。

診断手順

まず、現在インストールされているNode.jsのバージョンを確認します:

node -v

出力がv22.0.0未満(例:v18.17.1v20.11.0)の場合、アップグレードが必要です。

npmバージョンもNode.js 22と互換性があることを確認してください:

npm -v

Node.js 22にはnpmバージョン10.x以上が付属しています。npmバージョンが10未満の場合もインストール時に問題が発生する可能性があります。

解決方法

方法1:nvmでバージョンを切り替える(推奨)

nvm(Node Version Manager)は複数のNode.jsバージョンを管理するための最適なツールです。まだインストールしていない場合は、先にインストールしてください。

Linux / macOS:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc

Windows:

Windowsユーザーはnvm-windowsを使用してください。GitHub Releasesページからインストーラーをダウンロードしてください。

nvmをインストール後、Node.js 22をインストールして切り替えます:

nvm install 22
nvm use 22
nvm alias default 22

バージョンが切り替わったことを確認します:

node -v
# v22.x.x と表示されるはず

npm -v
# 10.x.x と表示されるはず

その後、OpenClawを再インストールします:

npm install -g openclaw

方法2:nvmの代わりにfnmを使用する

fnm(Fast Node Manager)はRustで書かれた高速なNode.jsバージョン管理ツールです:

# macOS / Linux
curl -fsSL https://fnm.vercel.app/install | bash

# Windows (PowerShell)
winget install Schniz.fnm

インストール後:

fnm install 22
fnm use 22
fnm default 22

方法3:最新LTSを直接ダウンロードしてインストール

複数のNode.jsバージョンを管理する必要がない場合は、Node.js公式サイトから22.x LTSインストーラーを直接ダウンロードして上書きインストールできます。

インストール後、新しいターミナルウィンドウを開いてバージョンを確認してください:

node -v

よくある落とし穴

システムに複数のNode.jsインストールが存在する

時々、システムに複数のNode.jsインストールパスが存在することがあります。以下のコマンドで実際に使用しているものを確認してください:

# Linux / macOS
which node

# Windows
where node

出力パスが期待するnvm管理のパスでない場合、PATH環境変数を確認し、nvmのパスがシステム組み込みのNode.jsパスより前にあることを確認してください。

Docker環境でのバージョン問題

OpenClawをDockerでデプロイする場合、DockerfileのベースイメージがNode.js 22を使用していることを確認してください:

FROM node:22-alpine

node:ltsタグは使用しないでください。LTSタグは時間の経過とともに異なるバージョンを指す可能性があります。メジャーバージョンを明示的に指定することでビルドの不整合を回避できます。

CI/CDパイプラインでのバージョン設定

GitHub Actionsでは、setup-nodeステップで正しいバージョンを指定してください:

- uses: actions/setup-node@v4
  with:
    node-version: '22'

インストール成功の確認

Node.jsのアップグレード後、以下のコマンドを実行してOpenClawが正常に動作することを確認します:

npm install -g openclaw
openclaw --version
openclaw doctor

openclaw doctorコマンドは、Node.jsバージョン、必要なシステム依存関係、設定ファイル~/.openclaw/openclaw.jsonの存在など、ランタイム環境を自動的にチェックします。すべてのチェックに合格すると、緑色の確認メッセージが表示されます。

アップグレード後も問題が発生する場合は、npmキャッシュをクリアして再インストールしてみてください:

npm cache clean --force
npm install -g openclaw
OpenClawは無料のオープンソースAIアシスタント。WhatsApp、Telegram、Discordなど多数のプラットフォームに対応