--output table|json. JSON upgrade, downgrade, and rollback require --force and never prompt.
Commands
The destructive uninstall workflow has been removed.
Status
github_available: false, latest_version: null, and update_available: null.
Upgrade
Install the latest stable release:up_to_date and no installation occurs.
The command rejects invalid versions and targets older than the current version. System-package installations must be upgraded through their package manager.
Downgrade
List available releases:current_version and release items, each with a current boolean.
Install an older release:
--list and --version are mutually exclusive. The target must be older than the current version and at least the CLI version floor. System-package installations must use their package manager.
Releases before 1.10.4 are pinned by disabling their legacy automatic-update setting. The JSON result reports this as automatic_updates_disabled.
Rollback
~/.observal/bin/observal.prev. It acquires the same version-change lock as upgrade and downgrade, copies the backup to a temporary file, restores executable permissions, and atomically replaces the current binary.
Package-managed installations must install their previous version through the package manager.
Installation safety
Upgrade and downgrade:- Acquire a process lock so version changes cannot overlap.
- Use the detected installation method.
- Verify standalone binary downloads against the published SHA-256 checksum.
- Replace standalone binaries atomically and retain the previous binary for rollback.
- Execute the installed binary and verify that it reports the requested version.
Exit codes
Related
observal server: manage server stack versions separately- Upgrades: server and CLI upgrade procedures
- Environment variables: update-check settings

