Install overview

Внутреннее устройство установщика

OpenClaw поставляется с тремя сценариями установки, доступными по адресу openclaw.ai.

Сценарий Платформа Что он делает
install.sh macOS / Linux / WSL При необходимости устанавливает Node, устанавливает OpenClaw через npm (по умолчанию) или git, может запустить первоначальную настройку.
install-cli.sh macOS / Linux / WSL Устанавливает Node и OpenClaw в локальный префикс (~/.openclaw) через npm или git. Права root не требуются.
install.ps1 Windows (PowerShell) При необходимости устанавливает Node, устанавливает OpenClaw через npm (по умолчанию) или git, может запустить первоначальную настройку.

Все три поддерживают Node 22.22.3+, 24.15+ или 25.9+; для новых установок по умолчанию используется Node 24.

Быстрые команды

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

install.sh

Процесс (install.sh)

  • Определение ОС

    Поддерживаются macOS и Linux (включая WSL).

  • Установка Node.js 24 по умолчанию

    Проверяет версию Node и при необходимости устанавливает Node 24 (через Homebrew в macOS и сценарии настройки NodeSource в Linux с apt/dnf/yum). В macOS Homebrew устанавливается только тогда, когда он необходим установщику для Node или Git. Поддерживаются Node 22.22.3+, Node 24.15+ и Node 25.9+; Node 23 не поддерживается. В Alpine/musl Linux установщик использует пакеты apk вместо NodeSource и проверяет фактическую версию подключённой библиотеки SQLite. Текущие стабильные ветки пакетов Alpine могут предоставлять достаточно новую версию Node с уязвимой системной SQLite; в этом случае используйте официальный контейнер node:24-alpine или хост на основе glibc.

  • Установка Git

    Если Git отсутствует, устанавливает его с помощью обнаруженного диспетчера пакетов, включая Homebrew в macOS и apk в Alpine.

  • Установка OpenClaw

    • Метод npm (по умолчанию): глобальная установка через npm
    • Метод git: клонирование или обновление репозитория, установка зависимостей через pnpm, сборка, затем установка обёртки в ~/.local/bin/openclaw
  • Задачи после установки

    • Находит только что установленный исполняемый файл openclaw для последующих команд
    • Для ненастроенной установки запускает первоначальную настройку перед doctor или проверками Gateway. При наличии --no-onboard или отсутствии TTY выводит команду для завершения настройки позднее.
    • Для настроенной установки по возможности обновляет и перезапускает загруженную службу Gateway, а затем запускает doctor. При обновлении по возможности обновляет плагины либо выводит команду для ручного запуска в сеансе без графического интерфейса с включёнными запросами.
    • При запуске --verify проверяет установленную версию и состояние Gateway, только если конфигурация уже существует.
  • Обнаружение исходного рабочего дерева

    При запуске внутри рабочего дерева OpenClaw (package.json + pnpm-workspace.yaml) сценарий предлагает:

    • использовать рабочее дерево (git) или
    • использовать глобальную установку (npm)

    Если TTY недоступен и метод установки не задан, по умолчанию используется npm и выводится предупреждение.

    Сценарий завершается с кодом 2 при выборе недопустимого метода или недопустимых значениях --install-method.

    Примеры (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

    Рабочее дерево main с GitHub

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

    Пробный запуск

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

    Проверка после установки

    bash
    curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboard --verify
    Справочник по флагам
    Флаг Описание
    --install-method | --method npm|git Выбрать метод установки (по умолчанию: npm)
    --npm Сокращённый вариант для метода npm
    --git | --github Сокращённый вариант для метода git
    --version <version|dist-tag|spec> Версия npm, тег дистрибутива или спецификация пакета (по умолчанию: latest)
    --beta Использовать тег дистрибутива beta, если он доступен, иначе вернуться к latest
    --git-dir | --dir <path> Каталог рабочего дерева (по умолчанию: ~/openclaw)
    --no-git-update Пропустить git pull для существующего рабочего дерева
    --no-prompt Отключить запросы
    --no-onboard Пропустить первоначальную настройку
    --onboard Включить первоначальную настройку
    --verify Выполнить быструю проверку после установки (--version, состояние Gateway, если он загружен)
    --dry-run Вывести действия без применения изменений
    --verbose Включить отладочный вывод (set -x, журналы npm уровня notice)
    --help | -h Показать справку
    Справочник по переменным окружения
    Переменная Описание
    OPENCLAW_INSTALL_METHOD=git|npm Метод установки
    OPENCLAW_VERSION=latest|next|<semver>|<spec> Версия npm, тег дистрибутива или спецификация пакета
    OPENCLAW_BETA=0|1 Использовать beta, если она доступна
    OPENCLAW_HOME=<path> Базовый каталог для состояния OpenClaw и стандартных путей git/первоначальной настройки
    OPENCLAW_GIT_DIR=<path> Каталог рабочего дерева
    OPENCLAW_GIT_UPDATE=0|1 Переключатель обновлений git
    OPENCLAW_NO_PROMPT=1 Отключить запросы
    OPENCLAW_VERIFY_INSTALL=1 Выполнить быструю проверку после установки
    OPENCLAW_NO_ONBOARD=1 Пропустить первоначальную настройку
    OPENCLAW_DRY_RUN=1 Режим пробного запуска
    OPENCLAW_VERBOSE=1 Режим отладки
    OPENCLAW_NPM_LOGLEVEL=error|warn|notice Уровень журналирования npm (по умолчанию: error, скрывает сообщения npm об устаревании)

    install-cli.sh

    Процесс (install-cli.sh)

  • Установка локальной среды выполнения Node

    Загружает архив tar с закреплённой поддерживаемой версией Node LTS (версия встроена в сценарий и обновляется независимо, по умолчанию 24.15.0) в <prefix>/tools/node-v<version> и проверяет SHA-256. В Linux ARMv7 используется Node 22.22.3, поскольку официальные двоичные файлы Node 24+ для ARMv7 недоступны. В Alpine/musl Linux, для которой Node не публикует совместимые архивы tar закреплённой среды выполнения, устанавливает nodejs и npm с помощью apk, а затем проверяет Node и фактически подключённую библиотеку SQLite. Текущие стабильные ветки пакетов Alpine могут по-прежнему подключать уязвимую SQLite даже при достаточно новой версии Node; если проверка безопасности отклоняет пакет, используйте официальный контейнер node:24-alpine или хост на основе glibc.

  • Установка Git

    Если Git отсутствует, пытается установить его через apt/dnf/yum/apk в Linux или Homebrew в macOS.

  • Установка OpenClaw под префиксом

    • Метод npm (по умолчанию): устанавливает через npm под префиксом, затем записывает обёртку в <prefix>/bin/openclaw
    • Метод git: клонирует или обновляет рабочее дерево (по умолчанию ~/openclaw) и также записывает обёртку в <prefix>/bin/openclaw
  • Обновление загруженной службы Gateway

    Если служба Gateway уже загружена из того же префикса, сценарий запускает openclaw gateway install --force, что активирует заменённую службу, а затем по возможности проверяет состояние Gateway.

  • Примеры (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

    Установка через Git

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

    Вывод 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)
    --install-method | --method npm|git Выбор способа установки (по умолчанию: npm)
    --npm Сокращённый вариант для способа npm
    --git | --github Сокращённый вариант для способа git
    --git-dir | --dir <path> Каталог рабочей копии Git (по умолчанию: ~/openclaw)
    --version <ver> Версия или dist-tag OpenClaw (по умолчанию: latest)
    --node-version <ver> Версия Node (по умолчанию: 24.15.0; 22.22.3 в Linux ARMv7)
    --json Вывод событий NDJSON
    --onboard Запуск openclaw onboard после установки
    --no-onboard Пропуск первоначальной настройки (по умолчанию)
    --set-npm-prefix В Linux принудительно задать префикс npm как ~/.npm-global, если текущий префикс недоступен для записи
    --help | -h Показать справку
    Справочник переменных среды
    Переменная Описание
    OPENCLAW_PREFIX=<path> Префикс установки
    OPENCLAW_INSTALL_METHOD=git|npm Способ установки
    OPENCLAW_VERSION=<ver> Версия или dist-tag OpenClaw
    OPENCLAW_NODE_VERSION=<ver> Версия Node
    OPENCLAW_HOME=<path> Базовый каталог для состояния OpenClaw и стандартных путей git/первоначальной настройки
    OPENCLAW_GIT_DIR=<path> Каталог рабочей копии Git для установок через git
    OPENCLAW_GIT_UPDATE=0|1 Включение обновлений git для существующих рабочих копий
    OPENCLAW_NO_ONBOARD=1 Пропуск первоначальной настройки
    OPENCLAW_NPM_LOGLEVEL=error|warn|notice Уровень журналирования npm (по умолчанию: error)

    install.ps1

    Процесс (install.ps1)

  • Проверка среды PowerShell и Windows

    Требуется PowerShell 5+.

  • Проверка наличия Node.js 24 по умолчанию

    Если Node.js отсутствует, предпринимается попытка установки через winget, затем Chocolatey, затем Scoop. Если менеджер пакетов недоступен, скрипт загружает официальный ZIP-архив Node.js 24 для Windows в %LOCALAPPDATA%\OpenClaw\deps\portable-node и добавляет его в PATH текущего процесса и пользователя. Поддерживаются Node 22.22.3+, Node 24.15+ и Node 25.9+; Node 23 не поддерживается.

  • Установка OpenClaw

    • Способ npm (по умолчанию): глобальная установка через npm с использованием выбранного -Tag, запущенная из доступного для записи временного каталога установщика, чтобы оболочки, открытые в защищённых папках, таких как C:\, продолжали работать
    • Способ git: клонирование или обновление репозитория, установка и сборка с помощью pnpm, а также установка обёртки в %USERPROFILE%\.local\bin\openclaw.cmd. Если Git отсутствует, скрипт развёртывает локальный для пользователя MinGit в %LOCALAPPDATA%\OpenClaw\deps\portable-git и добавляет его в PATH текущего процесса и пользователя.
  • Задачи после установки

    • По возможности добавляет необходимый каталог с исполняемыми файлами в PATH пользователя
    • По возможности обновляет загруженную службу Gateway (openclaw gateway install --force, затем перезапуск)
    • Запускает openclaw doctor --non-interactive при обновлениях и установках через git (по возможности)
  • Обработка сбоев

    Установки через iwr ... | iex и блок скрипта сообщают о завершающей ошибке, не закрывая текущий сеанс PowerShell. Прямые установки через powershell -File / pwsh -File по-прежнему завершаются с ненулевым кодом для автоматизации.

  • Примеры (install.ps1)

    По умолчанию

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

    Установка через Git

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

    Рабочая копия основной ветки GitHub

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

    Пользовательский каталог 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
    Справочник флагов
    Флаг Описание
    -InstallMethod npm|git Способ установки (по умолчанию: npm)
    -Tag <tag|version|spec> dist-tag, версия или спецификация пакета npm (по умолчанию: latest)
    -GitDir <path> Каталог рабочей копии (по умолчанию: %USERPROFILE%\openclaw)
    -NoOnboard Пропуск первоначальной настройки
    -NoGitUpdate Пропуск git pull
    -DryRun Только вывод действий
    Справочник переменных среды
    Переменная Описание
    OPENCLAW_INSTALL_METHOD=git|npm Способ установки
    OPENCLAW_GIT_DIR=<path> Каталог рабочей копии
    OPENCLAW_NO_ONBOARD=1 Пропуск первоначальной настройки
    OPENCLAW_GIT_UPDATE=0 Отключение git pull
    OPENCLAW_DRY_RUN=1 Режим пробного запуска

    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 всё равно проверяется, и при необходимости он устанавливается, чтобы избежать сбоев spawn git ENOENT, когда зависимости используют URL-адреса git.

    Почему npm выдаёт EACCES в Linux?

    В некоторых конфигурациях Linux глобальный префикс npm указывает на пути, принадлежащие пользователю root. install.sh может изменить префикс на ~/.npm-global и добавить команды экспорта PATH в rc-файлы оболочки (если такие файлы существуют).

    Windows: "npm error spawn git / ENOENT"

    Повторно запустите установщик, чтобы он мог развернуть локальный для пользователя MinGit, либо установите Git for Windows и заново откройте PowerShell.

    Windows: "openclaw is not recognized"

    Выполните npm config get prefix и добавьте этот каталог в PATH пользователя (суффикс \bin в Windows не требуется), затем заново откройте PowerShell.

    Windows: как получить подробный вывод установщика

    install.ps1 не предоставляет флаг -Verbose. Для диагностики на уровне скрипта используйте трассировку PowerShell:

    powershell
    Set-PSDebug -Trace 1& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardSet-PSDebug -Trace 0
    openclaw не найден после установки

    Обычно проблема связана с PATH. См. раздел Устранение неполадок Node.js.

    Связанные материалы

    Was this useful?
    On this page

    On this page