Adapted community discussion: Paraphrased and condensed from an anonymized public OpenClaw Discord support conversation from August 2026. Technical guidance was reviewed for OpenClaw 2026.9.3.
openclaw update --channel stable --dry-run refuses to run. It says the persisted plugin records are invalid, then says my OpenClaw state database uses a newer schema than this CLI supports. Doctor refuses to continue for the same reason.
It looks like the state was written by a newer build, while the openclaw in my shell is an older beta installed through Node. What is the safe way out?
This is a split-brain installation, not a bad update-channel flag. The older CLI cannot safely repair state written by the newer build. First identify every OpenClaw executable and the one used by the Gateway:
openclaw --version
which -a openclaw
openclaw gateway status --deep
Do not run Doctor’s repair mode with the older binary, and do not delete the SQLite database. Update the same package-manager installation that should own the state. For a global npm installation, that means updating that global package first. After the authoritative CLI is current, confirm the stable update path with:
openclaw update --channel stable --dry-run
The safe principle is to move forward with a build that supports the existing schema, then repair plugin records from that compatible build.
Confirmed. I found the older global npm binary, updated that installation first, and then openclaw update --channel stable completed normally. I did not touch the database.
That confirms the old-binary and newer-state mismatch. Updating the owning installation first was the key step, and preserving the state database avoided turning a version problem into data loss.