Рекомендовано: openclaw update
Найшвидший спосіб оновлення. Він визначає тип інсталяції (npm або git), отримує найновішу версію, запускає openclaw doctor і перезапускає Gateway.
openclaw update не приймає --verbose. Для діагностики оновлення використовуйте
--dry-run, щоб переглянути заплановані дії, --json для структурованих результатів або
openclaw update status --json, щоб перевірити стан каналу та доступності. Інсталятор
має власний прапорець --verbose, але цей прапорець не є частиною
openclaw update.
--channel beta надає перевагу beta, але runtime повертається до stable/latest, коли
тег beta відсутній або старіший за найновіший stable-випуск. Використовуйте --tag beta,
якщо вам потрібен сирий npm beta dist-tag для одноразового оновлення пакета.
Використовуйте --channel dev для постійного рухомого GitHub checkout main. Для оновлень пакетів
--tag main зіставляється з github:openclaw/openclaw#main для одного запуску, а
специфікації джерел GitHub/git пакуються в тимчасовий tarball перед staged
npm install.
Для керованих plugins fallback beta-каналу є попередженням: оновлення core може
все одно пройти успішно, поки plugin використовує свій записаний default/latest випуск, оскільки
plugin beta недоступний.
Див. Канали розробки, щоб дізнатися про семантику каналів.
Перемикання між npm і git інсталяціями
Використовуйте канали, коли хочете змінити тип інсталяції. Оновлювач зберігає ваші state, config, credentials і workspace у~/.openclaw; він змінює лише те,
яку інсталяцію коду OpenClaw використовують CLI і Gateway.
--dry-run, щоб переглянути точне перемикання режиму інсталяції:
dev забезпечує git checkout, збирає його та встановлює глобальний CLI
з цього checkout. Канали stable і beta використовують пакетні інсталяції. Якщо
Gateway уже встановлено, openclaw update оновлює метадані сервісу
і перезапускає його, якщо ви не передали --no-restart.
Для пакетних інсталяцій із керованим сервісом Gateway openclaw update націлюється
на корінь пакета, який використовує цей сервіс. Якщо shell-команда openclaw надходить
з іншої інсталяції, оновлювач виводить обидва корені та шлях Node керованого сервісу.
Оновлення пакета використовує менеджер пакетів, який володіє коренем сервісу,
і перевіряє Node керованого сервісу щодо engine цільового випуску
перед заміною пакета.
Альтернатива: повторно запустіть інсталятор
--no-onboard, щоб пропустити onboarding. Щоб примусово вибрати конкретний тип інсталяції через
інсталятор, передайте --install-method git --no-onboard або
--install-method npm --no-onboard.
Якщо openclaw update завершується помилкою після фази npm package install, повторно запустіть
інсталятор. Інсталятор не викликає старий оновлювач; він запускає глобальну
інсталяцію пакета напряму і може відновити частково оновлену npm-інсталяцію.
--version:
Альтернатива: ручний npm, pnpm або bun
openclaw update для supervised install, оскільки він може координувати
заміну пакета із запущеним сервісом Gateway. Якщо ви оновлюєте вручну на
supervised install, зупиніть керований Gateway до запуску менеджера пакетів.
Менеджери пакетів замінюють файли на місці, і запущений Gateway інакше може спробувати
завантажити core або plugin-файли, поки дерево пакета тимчасово напівзамінене.
Перезапустіть Gateway після завершення роботи менеджера пакетів, щоб сервіс підхопив
нову інсталяцію.
Для root-owned Linux system-global install, якщо openclaw update завершується помилкою
EACCES і ви відновлюєтеся через системний npm, тримайте Gateway зупиненим протягом
ручної заміни пакета. Використовуйте ті самі прапорці профілю openclaw або середовище,
які ви зазвичай використовуєте для цього Gateway. Замініть /usr/bin/npm на системний npm,
який володіє root-owned global prefix на вашому host:
openclaw update керує глобальною npm-інсталяцією, він спочатку встановлює ціль
у тимчасовий npm prefix, перевіряє інвентар упакованого dist, а потім замінює
чисте дерево пакета в реальному global prefix. Це запобігає накладанню npm
нового пакета на застарілі файли зі старого пакета. Якщо команда інсталяції завершується помилкою,
OpenClaw повторює спробу один раз із --omit=optional. Ця повторна спроба допомагає host, де native
optional dependencies не можуть скомпілюватися, водночас зберігаючи видимою початкову помилку,
якщо fallback також завершується помилкою.
Команди OpenClaw-managed npm update і plugin-update також очищають npm
карантин min-release-age для дочірнього npm-процесу. npm може повідомляти цю
політику як похідний cutoff before; обидва корисні для загальних політик supply-chain
карантину, але явне оновлення OpenClaw означає «встановити вибраний
випуск OpenClaw зараз».
Розширені теми npm-інсталяції
Дерево пакета лише для читання
Дерево пакета лише для читання
OpenClaw розглядає упаковані глобальні інсталяції як read-only під час runtime, навіть коли глобальний каталог пакета доступний для запису поточному користувачу. Інсталяції plugin-пакетів розміщуються в npm/git-коренях, якими володіє OpenClaw, під каталогом користувацької config, а запуск Gateway не змінює дерево пакета OpenClaw.Деякі Linux npm setup встановлюють глобальні пакети в root-owned каталоги, як-от
/usr/lib/node_modules/openclaw. OpenClaw підтримує таку структуру, оскільки команди інсталяції/оновлення plugin пишуть поза цим глобальним каталогом пакета.Посилені systemd units
Посилені systemd units
Надайте OpenClaw доступ на запис до його config/state roots, щоб явні plugin installs, plugin updates і doctor cleanup могли зберігати свої зміни:
Попередня перевірка місця на диску
Попередня перевірка місця на диску
Перед оновленнями пакетів і явними plugin installs OpenClaw намагається виконати best-effort перевірку місця на диску для цільового тому. Нестача місця створює попередження з перевіреним шляхом, але не блокує оновлення, оскільки filesystem quotas, snapshots і network volumes можуть змінитися після перевірки. Фактична інсталяція менеджером пакетів і post-install verification залишаються авторитетними.
Автоматичний оновлювач
Автоматичний оновлювач вимкнено за замовчуванням. Увімкніть його в~/.openclaw/openclaw.json:
| Канал | Поведінка |
|---|---|
stable | Чекає stableDelayHours, потім застосовує з детермінованим jitter у межах stableJitterHours (розгорнуте розгортання). |
beta | Перевіряє кожні betaCheckIntervalHours (за замовчуванням: щогодини) і застосовує негайно. |
dev | Без автоматичного застосування. Використовуйте openclaw update вручну. |
update.checkOnStart: false).
Для downgrade або incident recovery встановіть OPENCLAW_NO_AUTO_UPDATE=1 у середовищі Gateway, щоб блокувати автоматичні застосування навіть коли налаштовано update.auto.enabled. Підказки оновлення під час запуску все одно можуть виконуватися, якщо також не вимкнено update.checkOnStart.
Оновлення через менеджер пакетів, запитані через live Gateway control-plane handler,
не замінюють дерево пакета всередині запущеного процесу Gateway. На керованих
сервісних інсталяціях Gateway запускає detached handoff, завершує роботу і дозволяє
звичайному CLI-шляху openclaw update --yes --json зупинити сервіс, замінити
пакет, оновити метадані сервісу, перезапустити, перевірити версію Gateway і
досяжність, а також за можливості відновити встановлений, але незавантажений macOS LaunchAgent.
Якщо Gateway не може безпечно виконати такий handoff, update.run повідомляє
безпечну shell-команду замість запуску менеджера пакетів in-process.
Після оновлення
Мігрує config, перевіряє DM policies і перевіряє стан Gateway. Докладніше: Doctor
Rollback
Закріпити версію (npm)
Закріпити commit (source)
git checkout main && git pull.
Якщо ви застрягли
- Запустіть
openclaw doctorще раз і уважно прочитайте вивід. - Для
openclaw update --channel devна source checkout оновлювач автоматично bootstrappnpm, коли це потрібно. Якщо ви бачите помилку bootstrap pnpm/corepack, встановітьpnpmвручну (або повторно увімкнітьcorepack) і повторіть оновлення. - Перевірте: Усунення несправностей
- Запитайте в Discord: https://discord.gg/clawd
Пов’язане
- Огляд інсталяції: усі способи інсталяції.
- Doctor: перевірки стану після оновлень.
- Міграція: посібники з міграції між major version.