Maintenance

Canais de lançamento

OpenClaw distribui três canais de atualização:

  • stable: dist-tag npm latest. Recomendado para a maioria dos usuários.
  • beta: dist-tag npm beta quando está atual; se o beta estiver ausente ou for mais antigo que a versão estável mais recente, o fluxo de atualização recorre a latest.
  • dev: ponta móvel de main (git). dist-tag npm: dev (quando publicado). A branch main é para experimentação e desenvolvimento ativo. Ela pode conter recursos incompletos ou alterações incompatíveis. Não a use para gateways de produção.

Normalmente publicamos builds estáveis primeiro em beta, testamos lá e então executamos uma etapa explícita de promoção que move o build validado para latest sem alterar o número da versão. Os mantenedores também podem publicar uma versão estável diretamente em latest quando necessário. Dist-tags são a fonte da verdade para instalações npm.

Alternando canais

bash
openclaw update --channel stableopenclaw update --channel betaopenclaw update --channel dev

--channel persiste sua escolha na configuração (update.channel) e alinha o método de instalação:

  • stable (instalações por pacote): atualiza via dist-tag npm latest.
  • beta (instalações por pacote): prefere a dist-tag npm beta, mas recorre a latest quando beta está ausente ou é mais antigo que a tag estável atual.
  • stable (instalações git): faz checkout da tag git estável mais recente, excluindo tags de pré-lançamento semver como -alpha.N, -beta.N, -rc.N, -dev.N, -next.N, -preview.N, -canary.N, -nightly.N e outros sufixos de pré-lançamento.
  • beta (instalações git): prefere a tag git beta mais recente, mas recorre à tag git estável mais recente quando o beta está ausente ou é mais antigo.
  • dev: garante um checkout git (padrão ~/openclaw, ou $OPENCLAW_HOME/openclaw quando OPENCLAW_HOME está definido; substitua com OPENCLAW_GIT_DIR), alterna para main, faz rebase no upstream, compila e instala a CLI global a partir desse checkout.

Direcionamento avulso de versão ou tag

Use --tag para direcionar uma dist-tag, versão ou especificação de pacote específica para uma única atualização sem alterar seu canal persistido:

bash
# Install a specific versionopenclaw update --tag 2026.4.1-beta.1 # Install from the beta dist-tag (one-off, does not persist)openclaw update --tag beta # Switch to the moving GitHub main checkoutopenclaw update --channel dev # Install a specific npm package specopenclaw update --tag openclaw@2026.4.1-beta.1 # Install from GitHub main once without persisting the channelopenclaw update --tag main

Observações:

  • --tag se aplica somente a instalações por pacote (npm). Instalações git o ignoram.
  • A tag não é persistida. Seu próximo openclaw update usa seu canal configurado como de costume.
  • Para instalações por pacote, o OpenClaw pré-empacota especificações de origem GitHub/git em um tarball temporário antes da instalação npm em staging. Use --channel dev ou --install-method git --version main quando quiser o checkout móvel de main como sua instalação persistente.
  • Proteção contra downgrade: se a versão de destino for mais antiga que sua versão atual, o OpenClaw solicita confirmação (ignore com --yes).
  • --channel beta é diferente de --tag beta: o fluxo do canal pode recorrer a stable/latest quando o beta está ausente ou é mais antigo, enquanto --tag beta direciona a dist-tag bruta beta para aquela execução.

Simulação

Pré-visualize o que openclaw update faria sem aplicar alterações:

bash
openclaw update --dry-runopenclaw update --channel beta --dry-runopenclaw update --tag 2026.4.1-beta.1 --dry-runopenclaw update --dry-run --json

A simulação mostra o canal efetivo, a versão de destino, as ações planejadas e se uma confirmação de downgrade seria necessária.

Plugins e canais

Quando você alterna canais com openclaw update, o OpenClaw também sincroniza fontes de plugins:

  • dev prefere plugins incluídos do checkout git.
  • stable e beta restauram pacotes de plugins instalados via npm.
  • Plugins instalados via npm são atualizados depois que a atualização do core é concluída.

Verificando o status atual

bash
openclaw update status

Mostra o canal ativo, o tipo de instalação (git ou pacote), a versão atual e a fonte (configuração, tag git, branch git ou padrão).

Boas práticas de tags

  • Marque releases nos quais você quer que checkouts git parem (vYYYY.M.PATCH para stable, vYYYY.M.PATCH-beta.N para beta; sufixos nomeados de pré-lançamento semver como -alpha.N, -rc.N e -next.N não são alvos estáveis).
  • Tags estáveis numéricas legadas como vYYYY.M.PATCH-1 e v1.0.1-1 ainda são reconhecidas como tags git estáveis para compatibilidade.
  • vYYYY.M.PATCH.beta.N também é reconhecida por compatibilidade, mas prefira -beta.N.
  • Mantenha tags imutáveis: nunca mova nem reutilize uma tag.
  • Dist-tags npm continuam sendo a fonte da verdade para instalações npm:
    • latest -> stable
    • beta -> build candidato ou build estável beta-first
    • dev -> snapshot de main (opcional)

Disponibilidade do app para macOS

Builds beta e dev podem não incluir uma versão do app para macOS. Isso não é problema:

  • A tag git e a dist-tag npm ainda podem ser publicadas.
  • Informe "sem build para macOS neste beta" nas notas de release ou no changelog.

Relacionados

Was this useful?
On this page

On this page