Перейти до основного вмісту

openclaw update

Безпечно оновлюйте OpenClaw і перемикайтеся між каналами stable/beta/dev. Якщо ви встановили через npm/pnpm/bun (глобальне встановлення, без метаданих git), оновлення відбуваються через процес менеджера пакетів у Оновлення.

Використання

openclaw update
openclaw update status
openclaw update wizard
openclaw update --channel beta
openclaw update --channel dev
openclaw update --tag beta
openclaw update --tag main
openclaw update --dry-run
openclaw update --no-restart
openclaw update --yes
openclaw update --json
openclaw --update

Параметри

  • --no-restart: пропустити перезапуск служби Gateway після успішного оновлення.
  • --channel <stable|beta|dev>: установити канал оновлення (git + npm; зберігається в конфігурації).
  • --tag <dist-tag|version|spec>: перевизначити цільовий пакет лише для цього оновлення. Для встановлень через менеджер пакетів main відображається в github:openclaw/openclaw#main.
  • --dry-run: попередньо показати заплановані дії оновлення (канал/tag/цільовий об’єкт/процес перезапуску) без запису конфігурації, встановлення, синхронізації plugins або перезапуску.
  • --json: вивести машинозчитуваний JSON UpdateRunResult, включно з postUpdate.plugins.integrityDrifts, коли під час післяоновлювальної синхронізації plugins виявлено розходження цілісності артефактів npm plugin.
  • --timeout <seconds>: тайм-аут для кожного кроку (типово 1200 с).
  • --yes: пропустити запити на підтвердження (наприклад, підтвердження пониження версії)
Примітка: пониження версії вимагає підтвердження, оскільки старіші версії можуть зламати конфігурацію.

update status

Показати активний канал оновлення + git tag/branch/SHA (для checkout джерельного коду), а також доступність оновлення.
openclaw update status
openclaw update status --json
openclaw update status --timeout 10
Параметри:
  • --json: вивести машинозчитуваний JSON статусу.
  • --timeout <seconds>: тайм-аут для перевірок (типово 3 с).

update wizard

Інтерактивний процес для вибору каналу оновлення та підтвердження, чи потрібно перезапустити Gateway після оновлення (типово — перезапустити). Якщо ви виберете dev без checkout git, він запропонує створити його. Параметри:
  • --timeout <seconds>: тайм-аут для кожного кроку оновлення (типово 1200)

Що це робить

Коли ви явно перемикаєте канали (--channel ...), OpenClaw також підтримує узгодженість зі способом встановлення:
  • dev → забезпечує git checkout (типово: ~/openclaw, можна перевизначити через OPENCLAW_GIT_DIR), оновлює його та встановлює глобальний CLI з цього checkout.
  • stable → встановлює з npm, використовуючи latest.
  • beta → надає перевагу npm dist-tag beta, але повертається до latest, якщо beta відсутня або старіша за поточний stable release.
Автооновлювач ядра Gateway (коли увімкнений через конфігурацію) повторно використовує цей самий шлях оновлення. Для встановлень через менеджер пакетів openclaw update визначає цільову версію пакета перед викликом менеджера пакетів. Якщо встановлена версія точно збігається з цільовою і не потрібно зберігати зміну каналу оновлення, команда завершується як пропущена до встановлення пакета, синхронізації plugins, оновлення completion або перезапуску gateway.

Процес git checkout

Канали:
  • stable: checkout останнього non-beta tag, потім build + doctor.
  • beta: надає перевагу останньому tag -beta, але повертається до останнього stable tag, якщо beta відсутня або старіша.
  • dev: checkout main, потім fetch + rebase.
На високому рівні:
  1. Вимагає чистого worktree (без незакомічених змін).
  2. Перемикається на вибраний канал (tag або branch).
  3. Виконує fetch upstream (лише для dev).
  4. Лише для dev: виконує попередню перевірку lint + TypeScript build у тимчасовому worktree; якщо вершина не проходить, відступає до 10 комітів назад, щоб знайти найновіший чистий build.
  5. Виконує rebase на вибраний коміт (лише для dev).
  6. Встановлює залежності менеджером пакетів репозиторію. Для checkout з pnpm засіб оновлення завантажує pnpm за потреби (спочатку через corepack, потім через тимчасовий резервний варіант npm install pnpm@10) замість запуску npm run build усередині workspace pnpm.
  7. Виконує build + build Control UI.
  8. Запускає openclaw doctor як фінальну перевірку «безпечного оновлення».
  9. Синхронізує plugins з активним каналом (dev використовує вбудовані plugins; stable/beta використовують npm) та оновлює plugins, встановлені через npm.
Якщо оновлення точно зафіксованого npm plugin визначає артефакт, цілісність якого відрізняється від збереженого запису встановлення, openclaw update перериває це оновлення артефакту plugin замість його встановлення. Перевстановлюйте або оновлюйте plugin явно лише після перевірки, що ви довіряєте новому артефакту. Якщо завантаження pnpm усе ще не вдається, засіб оновлення тепер зупиняється раніше з помилкою, специфічною для менеджера пакетів, замість спроби виконати npm run build усередині checkout.

Скорочення --update

openclaw --update переписується в openclaw update (зручно для оболонок і скриптів запуску).

Див. також