OpenClaw поставляется с тремя каналами обновлений:
- stable: npm dist-tag
latest. Рекомендуется для большинства пользователей.
- beta: npm dist-tag
beta, когда он актуален; если beta отсутствует или старее
последнего стабильного релиза, поток обновления откатывается к latest.
- dev: движущаяся вершина
main (git). npm dist-tag: dev (когда опубликован).
Ветка main предназначена для экспериментов и активной разработки. Она может содержать
незавершенные функции или критические изменения. Не используйте ее для производственных gateways.
Обычно мы сначала публикуем стабильные сборки в beta, тестируем их там, а затем запускаем
явный шаг продвижения, который перемещает проверенную сборку в latest без
изменения номера версии. Сопровождающие также могут при необходимости опубликовать стабильный релиз
напрямую в latest. Dist-tags являются источником истины для установок npm.
Переключение каналов
openclaw update --channel stable
openclaw update --channel beta
openclaw update --channel dev
--channel сохраняет ваш выбор в конфигурации (update.channel) и выравнивает
метод установки:
stable (установки пакета): обновляется через npm dist-tag latest.
beta (установки пакета): предпочитает npm dist-tag beta, но откатывается к
latest, когда beta отсутствует или старее текущего стабильного тега.
stable (установки git): переключается на последний стабильный git-тег, исключая
prerelease-теги semver, такие как -alpha.N, -beta.N, -rc.N, -dev.N,
-next.N, -preview.N, -canary.N, -nightly.N и другие prerelease-
суффиксы.
beta (установки git): предпочитает последний beta git-тег, но откатывается к
последнему стабильному git-тегу, когда beta отсутствует или старее.
dev: обеспечивает git checkout (по умолчанию ~/openclaw или
$OPENCLAW_HOME/openclaw, когда задан OPENCLAW_HOME; переопределяется через
OPENCLAW_GIT_DIR), переключается на main, выполняет rebase на upstream, собирает и
устанавливает глобальный CLI из этого checkout.
Если вы хотите использовать stable и dev параллельно, держите два клона и направьте свой gateway на стабильный.
Разовое указание версии или тега
Используйте --tag, чтобы указать конкретный dist-tag, версию или спецификацию пакета для одного
обновления без изменения сохраненного канала:
# Установить конкретную версию
openclaw update --tag 2026.4.1-beta.1
# Установить из beta dist-tag (разово, не сохраняется)
openclaw update --tag beta
# Переключиться на движущийся GitHub main checkout
openclaw update --channel dev
# Установить конкретную спецификацию npm-пакета
openclaw update --tag openclaw@2026.4.1-beta.1
# Установить из GitHub main один раз без сохранения канала
openclaw update --tag main
Примечания:
--tag применяется только к установкам пакета (npm). Установки git игнорируют его.
- Тег не сохраняется. Следующий
openclaw update использует ваш настроенный
канал как обычно.
- Для установок пакета OpenClaw предварительно упаковывает спецификации исходников GitHub/git во
временный tarball перед staged npm install. Используйте
--channel dev или
--install-method git --version main, когда вам нужен движущийся checkout main
как постоянная установка.
- Защита от понижения версии: если целевая версия старее вашей текущей версии,
OpenClaw запрашивает подтверждение (пропустите с
--yes).
--channel beta отличается от --tag beta: поток канала может откатиться
к stable/latest, когда beta отсутствует или старее, тогда как --tag beta указывает на
необработанный dist-tag beta для этого одного запуска.
Пробный запуск
Предварительно просмотрите, что сделал бы openclaw update, не внося изменений:
openclaw update --dry-run
openclaw update --channel beta --dry-run
openclaw update --tag 2026.4.1-beta.1 --dry-run
openclaw update --dry-run --json
Пробный запуск показывает эффективный канал, целевую версию, запланированные действия и
потребуется ли подтверждение понижения версии.
Plugins и каналы
Когда вы переключаете каналы с помощью openclaw update, OpenClaw также синхронизирует
источники plugins:
dev предпочитает bundled plugins из git checkout.
stable и beta восстанавливают npm-installed plugin packages.
- npm-installed plugins обновляются после завершения обновления core.
Проверка текущего состояния
Показывает активный канал, тип установки (git или пакет), текущую версию и
источник (конфигурация, git-тег, git-ветка или значение по умолчанию).
Рекомендации по тегированию
- Помечайте тегами релизы, на которые должны попадать git checkouts (
vYYYY.M.PATCH для stable,
vYYYY.M.PATCH-beta.N для beta; именованные prerelease-суффиксы semver, такие как
-alpha.N, -rc.N и -next.N, не являются стабильными целями).
- Устаревшие числовые стабильные теги, такие как
vYYYY.M.PATCH-1 и v1.0.1-1, по-прежнему
распознаются как стабильные git-теги для совместимости.
vYYYY.M.PATCH.beta.N также распознается для совместимости, но предпочитайте -beta.N.
- Держите теги неизменяемыми: никогда не перемещайте и не используйте тег повторно.
- npm dist-tags остаются источником истины для установок npm:
latest -> stable
beta -> кандидатная сборка или стабильная сборка, сначала опубликованная в beta
dev -> снимок main (необязательно)
Доступность приложения macOS
Сборки beta и dev могут не включать релиз приложения macOS. Это нормально:
- Git-тег и npm dist-tag все равно можно опубликовать.
- Укажите “нет сборки macOS для этой beta” в заметках к релизу или changelog.
Связанные материалы