Actualizar
Referencia CLI para openclaw update (fuentes seguras + reinicio automático de gateway).
Actualiza OpenClaw de forma segura y cambia entre canales stable/beta/dev.
Si instalaste via ''npm/pnpm'' (instalación global, sin metadatos git), las actualizaciones ocurren via el flujo del gestor de paquetes en ''Actualizando''.
Uso
openclaw update openclaw update status openclaw update wizard openclaw update --channel beta openclaw update --channel dev openclaw update --tag beta openclaw update --no-restart openclaw update --json openclaw --update
Opciones
- ''--no-restart'': Omitir reiniciar el servicio de gateway después de una actualización exitosa.
- ''--channel <stable|beta|dev>'': Establecer canal de actualización (git + npm; persistido en config).
- ''--tag <dist-tag|version>'': Anular dist-tag de npm o versión solo para esta actualización.
- ''--json'': Imprimir JSON ''UpdateRunResult'' legible por máquina.
- ''--timeout <seconds>'': Timeout por paso (predeterminado 1200s).
Nota: Las degradaciones requieren confirmación porque versiones más antiguas pueden romper la configuración.
`update status`
Muestra el canal de actualización activo + tag/branch/SHA de git (para checkout de código fuente) y disponibilidad de actualización.
openclaw update status openclaw update status --json openclaw update status --timeout 10
Opciones:
- ''--json'': Imprimir JSON de estado legible por máquina.
- ''--timeout <seconds>'': Timeout de verificación (predeterminado 3s).
`update wizard`
Flujo interactivo para seleccionar canal de actualización y confirmar si reiniciar gateway
después de actualizar (predeterminado es reiniciar). Si seleccionas ''dev'' sin un checkout de git,
propone crear uno.
Qué hace
Cuando cambias explícitamente de canales (''--channel ...''), OpenClaw también mantiene
el método de instalación alineado:
- ''dev'' → asegura checkout de git (predeterminado: ''~/openclaw'', anular con ''OPENCLAW_GIT_DIR''),
lo actualiza, e instala CLI global desde ese checkout.
- ''stable''/''beta'' → instala desde npm usando dist-tag correspondiente.
Flujo de checkout de Git
Canales:
- ''stable'': hace checkout del tag no-beta más reciente, luego build + doctor.
- ''beta'': hace checkout del tag ''-beta'' más reciente, luego build + doctor.
- ''dev'': hace checkout de ''main'', luego fetch + rebase.
A alto nivel:
1. Requiere un árbol de trabajo limpio (sin cambios sin commitear).
2. Cambiar al canal seleccionado (tag o branch).
3. Fetch upstream (solo dev).
4. Solo dev: pre-verificar lint + build de TypeScript en worktree temporal; si el prompt falla, retroceder hasta 10 commits para encontrar el último build limpio.
5. Rebase al commit seleccionado (solo dev).
6. Instalar dependencias (pnpm preferido; npm como fallback).
7. Build + build de UI de control.
8. Ejecutar ''openclaw doctor'' como verificación final de "actualización segura".
9. Sincronizar plugins al canal activo (dev usa extensiones empaquetadas; stable/beta usan npm) y actualizar plugins instalados via npm.
`--update` shorthand
''openclaw --update'' se reescribe como ''openclaw update'' (útil para scripts de shell y launcher).
Ver también
- ''openclaw doctor'' (ofrecido para ejecutar primero en checkouts de git)
- ''Actualizando''
- ''Referencia CLI''