Wnętrze instalatora
OpenClaw dostarcza trzy skrypty instalacyjne serwowane zopenclaw.ai.
| Skrypt | Platforma | Co robi |
|---|---|---|
install.sh | macOS / Linux / WSL | Instaluje Node, jeśli jest potrzebny, instaluje OpenClaw przez npm (domyślnie) albo git i może uruchomić onboarding. |
install-cli.sh | macOS / Linux / WSL | Instaluje Node + OpenClaw do lokalnego prefiksu (~/.openclaw) w trybie npm albo checkoutu git. Nie wymaga roota. |
install.ps1 | Windows (PowerShell) | Instaluje Node, jeśli jest potrzebny, instaluje OpenClaw przez npm (domyślnie) albo git i może uruchomić onboarding. |
Szybkie polecenia
- install.sh
- install-cli.sh
- install.ps1
Jeśli instalacja się powiedzie, ale
openclaw nie jest znajdowane w nowym terminalu, zobacz rozwiązywanie problemów z Node.js.install.sh
Przepływ (install.sh)
Wykrywanie systemu operacyjnego
Obsługuje macOS i Linux (w tym WSL). Jeśli wykryje macOS, instaluje Homebrew, jeśli go brakuje.
Zapewnienie Node.js 24 domyślnie
Sprawdza wersję Node i instaluje Node 24, jeśli jest potrzebny (Homebrew na macOS, skrypty instalacyjne NodeSource na Linux apt/dnf/yum). OpenClaw nadal obsługuje zgodnościowo Node 22 LTS, obecnie
22.14+.Instalacja OpenClaw
- metoda
npm(domyślna): globalna instalacja npm - metoda
git: klonuje/aktualizuje repozytorium, instaluje zależności przez pnpm, buduje, a następnie instaluje wrapper w~/.local/bin/openclaw
Zadania po instalacji
- Odświeża załadowaną usługę gateway w trybie best-effort (
openclaw gateway install --force, a potem restart) - Uruchamia
openclaw doctor --non-interactiveprzy aktualizacjach i instalacjach git (best effort) - Próbuje uruchomić onboarding, gdy to właściwe (dostępne TTY, onboarding nie jest wyłączony i przechodzą sprawdzenia bootstrap/config)
- Domyślnie ustawia
SHARP_IGNORE_GLOBAL_LIBVIPS=1
Wykrywanie checkoutu źródłowego
Jeśli skrypt zostanie uruchomiony wewnątrz checkoutu OpenClaw (package.json + pnpm-workspace.yaml), oferuje:
- użycie checkoutu (
git), albo - użycie instalacji globalnej (
npm)
npm i wyświetla ostrzeżenie.
Skrypt kończy się kodem 2 przy nieprawidłowym wyborze metody lub nieprawidłowych wartościach --install-method.
Przykłady (install.sh)
- Domyślnie
- Pomiń onboarding
- Instalacja git
- GitHub main przez npm
- Dry run
Dokumentacja flag
Dokumentacja flag
| Flaga | Opis |
|---|---|
--install-method npm|git | Wybór metody instalacji (domyślnie: npm). Alias: --method |
--npm | Skrót dla metody npm |
--git | Skrót dla metody git. Alias: --github |
--version <version|dist-tag|spec> | Wersja npm, dist-tag albo spec pakietu (domyślnie: latest) |
--beta | Użyj dist-tag beta, jeśli jest dostępny, w przeciwnym razie wróć do latest |
--git-dir <path> | Katalog checkoutu (domyślnie: ~/openclaw). Alias: --dir |
--no-git-update | Pomiń git pull dla istniejącego checkoutu |
--no-prompt | Wyłącz prompty |
--no-onboard | Pomiń onboarding |
--onboard | Włącz onboarding |
--dry-run | Wypisz działania bez stosowania zmian |
--verbose | Włącz dane wyjściowe debugowania (set -x, logi npm na poziomie notice) |
--help | Pokaż użycie (-h) |
Dokumentacja zmiennych środowiskowych
Dokumentacja zmiennych środowiskowych
| Zmienna | Opis |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm | Metoda instalacji |
OPENCLAW_VERSION=latest|next|main|<semver>|<spec> | Wersja npm, dist-tag albo spec pakietu |
OPENCLAW_BETA=0|1 | Użyj beta, jeśli jest dostępna |
OPENCLAW_GIT_DIR=<path> | Katalog checkoutu |
OPENCLAW_GIT_UPDATE=0|1 | Przełącz aktualizacje git |
OPENCLAW_NO_PROMPT=1 | Wyłącz prompty |
OPENCLAW_NO_ONBOARD=1 | Pomiń onboarding |
OPENCLAW_DRY_RUN=1 | Tryb dry run |
OPENCLAW_VERBOSE=1 | Tryb debugowania |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice | Poziom logowania npm |
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1 | Kontrola zachowania sharp/libvips (domyślnie: 1) |
install-cli.sh
Przeznaczone dla środowisk, w których chcesz mieć wszystko pod lokalnym prefiksem
(domyślnie
~/.openclaw) i bez systemowej zależności od Node. Domyślnie obsługuje instalacje npm,
a także instalacje z checkoutu git w ramach tego samego przepływu prefiksu.Przepływ (install-cli.sh)
Instalacja lokalnego runtime Node
Pobiera przypięty obsługiwany tarball Node LTS (wersja jest osadzona w skrypcie i aktualizowana niezależnie) do
<prefix>/tools/node-v<version> i weryfikuje SHA-256.Zapewnienie Git
Jeśli Git nie jest dostępny, próbuje go zainstalować przez apt/dnf/yum na Linux lub Homebrew na macOS.
Instalacja OpenClaw pod prefiksem
- metoda
npm(domyślna): instaluje pod prefiksem przez npm, a następnie zapisuje wrapper do<prefix>/bin/openclaw - metoda
git: klonuje/aktualizuje checkout (domyślnie~/openclaw) i nadal zapisuje wrapper do<prefix>/bin/openclaw
Przykłady (install-cli.sh)
- Domyślnie
- Niestandardowy prefiks + wersja
- Instalacja git
- Dane wyjściowe JSON dla automatyzacji
- Uruchom onboarding
Dokumentacja flag
Dokumentacja flag
| Flaga | Opis |
|---|---|
--prefix <path> | Prefiks instalacji (domyślnie: ~/.openclaw) |
--install-method npm|git | Wybór metody instalacji (domyślnie: npm). Alias: --method |
--npm | Skrót dla metody npm |
--git, --github | Skrót dla metody git |
--git-dir <path> | Katalog checkoutu git (domyślnie: ~/openclaw). Alias: --dir |
--version <ver> | Wersja OpenClaw albo dist-tag (domyślnie: latest) |
--node-version <ver> | Wersja Node (domyślnie: 22.22.0) |
--json | Emituj zdarzenia NDJSON |
--onboard | Uruchom openclaw onboard po instalacji |
--no-onboard | Pomiń onboarding (domyślnie) |
--set-npm-prefix | Na Linux wymuś prefiks npm ~/.npm-global, jeśli bieżący prefiks nie jest zapisywalny |
--help | Pokaż użycie (-h) |
Dokumentacja zmiennych środowiskowych
Dokumentacja zmiennych środowiskowych
| Zmienna | Opis |
|---|---|
OPENCLAW_PREFIX=<path> | Prefiks instalacji |
OPENCLAW_INSTALL_METHOD=git|npm | Metoda instalacji |
OPENCLAW_VERSION=<ver> | Wersja OpenClaw albo dist-tag |
OPENCLAW_NODE_VERSION=<ver> | Wersja Node |
OPENCLAW_GIT_DIR=<path> | Katalog checkoutu git dla instalacji git |
OPENCLAW_GIT_UPDATE=0|1 | Przełącz aktualizacje git dla istniejących checkoutów |
OPENCLAW_NO_ONBOARD=1 | Pomiń onboarding |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice | Poziom logowania npm |
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1 | Kontrola zachowania sharp/libvips (domyślnie: 1) |
install.ps1
Przepływ (install.ps1)
Zapewnienie Node.js 24 domyślnie
Jeśli go brakuje, próbuje instalacji przez winget, potem Chocolatey, a następnie Scoop. Node 22 LTS, obecnie
22.14+, pozostaje obsługiwany zgodnościowo.Instalacja OpenClaw
- metoda
npm(domyślna): globalna instalacja npm z użyciem wybranego-Tag - metoda
git: klonuje/aktualizuje repozytorium, instaluje/buduje przez pnpm i instaluje wrapper w%USERPROFILE%\.local\bin\openclaw.cmd
Przykłady (install.ps1)
- Domyślnie
- Instalacja git
- GitHub main przez npm
- Niestandardowy katalog git
- Dry run
- Ślad debugowania
Dokumentacja flag
Dokumentacja flag
| Flaga | Opis |
|---|---|
-InstallMethod npm|git | Metoda instalacji (domyślnie: npm) |
-Tag <tag|version|spec> | dist-tag npm, wersja albo spec pakietu (domyślnie: latest) |
-GitDir <path> | Katalog checkoutu (domyślnie: %USERPROFILE%\openclaw) |
-NoOnboard | Pomiń onboarding |
-NoGitUpdate | Pomiń git pull |
-DryRun | Tylko wypisz działania |
Dokumentacja zmiennych środowiskowych
Dokumentacja zmiennych środowiskowych
| Zmienna | Opis |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm | Metoda instalacji |
OPENCLAW_GIT_DIR=<path> | Katalog checkoutu |
OPENCLAW_NO_ONBOARD=1 | Pomiń onboarding |
OPENCLAW_GIT_UPDATE=0 | Wyłącz git pull |
OPENCLAW_DRY_RUN=1 | Tryb dry run |
Jeśli użyto
-InstallMethod git i brakuje Git, skrypt kończy działanie i wyświetla link do Git for Windows.CI i automatyzacja
Używaj nieinteraktywnych flag/zmiennych środowiskowych, aby uzyskać przewidywalne uruchomienia.- install.sh (nieinteraktywne npm)
- install.sh (nieinteraktywne git)
- install-cli.sh (JSON)
- install.ps1 (pomiń onboarding)
Rozwiązywanie problemów
Dlaczego Git jest wymagany?
Dlaczego Git jest wymagany?
Git jest wymagany dla metody instalacji
git. W przypadku instalacji npm Git nadal jest sprawdzany/instalowany, aby uniknąć błędów spawn git ENOENT, gdy zależności używają adresów URL git.Dlaczego npm trafia na EACCES na Linux?
Dlaczego npm trafia na EACCES na Linux?
Niektóre konfiguracje Linux kierują globalny prefiks npm do ścieżek należących do roota.
install.sh może przełączyć prefiks na ~/.npm-global i dopisać eksporty PATH do plików rc powłoki (gdy te pliki istnieją).Problemy sharp/libvips
Problemy sharp/libvips
Skrypty domyślnie ustawiają
SHARP_IGNORE_GLOBAL_LIBVIPS=1, aby uniknąć budowania sharp względem systemowego libvips. Aby to nadpisać:Windows: "npm error spawn git / ENOENT"
Windows: "npm error spawn git / ENOENT"
Zainstaluj Git for Windows, otwórz ponownie PowerShell i uruchom instalator jeszcze raz.
Windows: "openclaw is not recognized"
Windows: "openclaw is not recognized"
Uruchom
npm config get prefix i dodaj ten katalog do PATH użytkownika (na Windows nie potrzeba sufiksu \bin), a następnie otwórz ponownie PowerShell.Windows: jak uzyskać szczegółowe dane wyjściowe instalatora
Windows: jak uzyskać szczegółowe dane wyjściowe instalatora
install.ps1 obecnie nie udostępnia przełącznika -Verbose.
Użyj śledzenia PowerShell do diagnostyki na poziomie skryptu:Po instalacji nie znaleziono openclaw
Po instalacji nie znaleziono openclaw
Zwykle jest to problem z PATH. Zobacz rozwiązywanie problemów z Node.js.