Installationsprogrammens internals¶
OpenClaw levereras med tre installationsskript som tillhandahålls från openclaw.ai.
| Skript | Plattform | Vad det gör |
|---|---|---|
install.sh |
macOS / Linux / WSL | Installerar Node vid behov, installerar OpenClaw via npm (standard) eller git och kan köra introduktion. |
install-cli.sh |
macOS / Linux / WSL | Installerar Node + OpenClaw i ett lokalt prefix (~/.openclaw). Ingen rot krävs. |
install.ps1 |
Windows (PowerShell) | Installerar Node vid behov, installerar OpenClaw via npm (standard) eller git och kan köra introduktion. |
Snabba kommandon¶
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
```
````
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
```
````
powershell
iwr -useb https://openclaw.ai/install.ps1 | iex
````
```powershell
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -Tag beta -NoOnboard -DryRun
```
````
openclaw inte hittas i en ny terminal, se Node.js-felsökning.
install.sh¶
Flöde (install.sh)¶
npm-metod (standard): global npm-installation
- git-metod: klona/uppdatera repo, installera beroenden med pnpm, bygg och installera sedan wrapper i ~/.local/bin/openclaw
openclaw doctor --non-interactive vid uppgraderingar och git-installationer (best effort)
- Försöker köra introduktion när det är lämpligt (TTY tillgänglig, introduktion inte inaktiverad och bootstrap-/konfigkontroller passerar)
- Standardvärde SHARP_IGNORE_GLOBAL_LIBVIPS=1
Detektering av källcheckout¶
Om skriptet körs inuti en OpenClaw-checkout (package.json + pnpm-workspace.yaml), erbjuder skriptet:
- använd checkout (
git), eller - använd global installation (
npm)
Om ingen TTY är tillgänglig och ingen installationsmetod är satt, används som standard npm och en varning visas.
Skriptet avslutas med kod 2 vid ogiltigt metodval eller ogiltiga värden för --install-method.
Exempel (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
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
| Flagga | Beskrivning |
|---|---|
--install-method npm\\|git |
Välj installationsmetod (standard: npm). Alias: --metod |
--npm |
Genväg för npm-metoden |
--git |
Genväg för git-metoden. Alias: --github |
--version <version\\|dist-tag> |
npm-version eller dist-tag (standard: latest) |
--beta |
Använd beta dist-tag om tillgänglig, annars fallback till latest |
--git-dir <path> |
Kassakatalog (standard: ~/openclaw). Alias: --dir |
--no-git-update |
Hoppa över git pull för befintlig checkout |
--no-prompt |
Inaktivera frågor |
--no-onboard |
Hoppa över introduktion |
--onboard |
Aktivera introduktion |
--dry-run |
Skriv ut åtgärder utan att tillämpa ändringar |
--verbose |
Aktivera debug-utdata (set -x, npm-logger på notice-nivå) |
--help |
Visa användning (-h) |
| Variabel | Beskrivning |
|---|---|
OPENCLAW_INSTALL_METHOD=git\\|npm |
Installationsmetod |
OPENCLAW_VERSION=latest\\|next\\|<semver> |
npm-version eller dist-tag |
OPENCLAW_BETA=0\\|1 |
Använd beta om tillgänglig |
OPENCLAW_GIT_DIR=<path> |
Checkout-katalog |
OPENCLAW_GIT_UPDATE=0\\|1 |
Växla git-uppdateringar |
OPENCLAW_NO_PROMPT=1 |
Inaktivera frågor |
OPENCLAW_NO_ONBOARD=1 |
Hoppa över introduktion |
OPENCLAW_DRY_RUN=1 |
Torrkörningsläge |
OPENCLAW_VERBOSE=1 |
Debug-läge |
OPENCLAW_NPM_LOGLEVEL=error\\|warn\\|notice |
npm-loggnivå |
SHARP_IGNORE_GLOBAL_LIBVIPS=0\\|1 |
Styr sharp/libvips-beteende (standard: 1) |
install-cli.sh¶
~/.openclaw) och inget systemberoende av Node.
Flöde (install-cli.sh)¶
22.22.0) till <prefix>/tools/node-v<version> och verifierar SHA-256.
--prefix <prefix>, och skriver sedan wrapper till <prefix>/bin/openclaw.
Exempel (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
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
| Flagga | Beskrivning |
|---|---|
--prefix <path> |
Installationsprefix (standard: ~/.openclaw) |
--version <ver> |
OpenClaw-version eller dist-tag (standard: latest) |
--node-version <ver> |
Node-version (standard: 22.22.0) |
--json |
Emittera NDJSON-händelser |
--onboard |
Kör openclaw onboard efter installation |
--no-onboard |
Hoppa över introduktion (standard) |
--set-npm-prefix |
På Linux, tvinga npm-prefix till ~/.npm-global om nuvarande prefix inte är skrivbart |
--help |
Visa användning (-h) |
| Variabel | Beskrivning |
|---|---|
OPENCLAW_PREFIX=<path> |
Installationsprefix |
OPENCLAW_VERSION=<ver> |
OpenClaw-version eller dist-tag |
OPENCLAW_NODE_VERSION=<ver> |
Node-version |
OPENCLAW_NO_ONBOARD=1 |
Hoppa över introduktion |
OPENCLAW_NPM_LOGLEVEL=error\\|warn\\|notice |
npm-loggnivå |
OPENCLAW_GIT_DIR=<path> |
Äldre rensningssökväg (används vid borttagning av gammal Peekaboo-submodule-checkout) |
SHARP_IGNORE_GLOBAL_LIBVIPS=0\\|1 |
Styr sharp/libvips-beteende (standard: 1) |
install.ps1¶
Flöde (install.ps1)¶
npm-metod (standard): global npm-installation med vald -Tag
- git-metod: klona/uppdatera repo, installera/bygga med pnpm och installera wrapper i %USERPROFILE%\.local\bin\openclaw.cmd
openclaw doctor --non-interactive vid uppgraderingar och git-installationer (best effort).
Exempel (install.ps1)¶
powershell
iwr -useb https://openclaw.ai/install.ps1 | iex
powershell
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod 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
| Flagga | Beskrivning |
|---|---|
-InstallMethod npm\\|git |
Installationsmetod (standard: npm) |
-Tag <tag> |
npm dist-tag (standard: latest) |
-GitDir <path> |
Checkout-katalog (standard: %USERPROFILE%\openclaw) |
-NoOnboard |
Hoppa över introduktion |
-NoGitUpdate |
Hoppa över git pull |
-DryRun |
Skriv endast ut åtgärder |
| Variabel | Beskrivning |
|---|---|
OPENCLAW_INSTALL_METHOD=git\\|npm |
Installationsmetod |
OPENCLAW_GIT_DIR=<path> |
Checkout-katalog |
OPENCLAW_NO_ONBOARD=1 |
Hoppa över introduktion |
OPENCLAW_GIT_UPDATE=0 |
Inaktivera git pull |
OPENCLAW_DRY_RUN=1 |
Torrkörningsläge |
-InstallMethod git används och Git saknas avslutas skriptet och skriver ut länken till Git for Windows.
CI och automatisering¶
Använd icke-interaktiva flaggor/miljövariabler för förutsägbara körningar.
bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-prompt --no-onboard
bash
OPENCLAW_INSTALL_METHOD=git OPENCLAW_NO_PROMPT=1 \
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclaw
powershell
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
Felsökning¶
git-installationsmetod. För npm-installationer är Git fortfarande kontrollerad/installerad för att undvika spawn git ENOENT-fel när beroenden använder git-URL:er.
install.sh kan växla prefix till ~/.npm-global och lägga till PATH export till shell rc filer (när dessa filer finns).
SHARP_IGNORE_GLOBAL_LIBVIPS=1 för att undvika skarp byggnad mot systemet libvips. Att åsidosätta:
````
```bash
SHARP_IGNORE_GLOBAL_LIBVIPS=0 curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
```
````
npm config get prefix, lägg till \bin, lägg till den katalogen i användarens PATH och öppna sedan PowerShell igen.