Supported versions
The exact engines expression is
>=24.16.0 <25 || >=26.1.0. It is enforced by package.json engines during npm installation, the startup runtime guard for every openclaw command, and the installer scripts.
Why the floors exist
The SQLite WAL-reset corruption bug requires a safe loaded library: SQLite 3.51.3+, 3.50.7+ within 3.50.x, or 3.44.6+ within 3.44.x. OpenClaw validates the library actually loaded because Node builds linked to shared system SQLite can use a different version from Node’s own metadata. Separately, thenode:sqlite TEXT decoder in Node 22.23.x, 24.15.0, 25.9.0, and 26.0.0 silently truncates values at embedded NUL characters. The first fixed releases are Node 24.16.0 and 26.1.0; a WAL-safe SQLite library does not fix this decoder. Node 23 was excluded earlier for incompatible node:sqlite behavior.
Platform consequences
Official Node 24+ binaries require macOS 13.5+, so macOS 11 through 13.4 no longer support the Node-based CLI or Gateway. The companion app has separate macOS requirements. Supported Node lines have no official Linux ARMv7 builds. Use a 64-bit operating system on compatible ARM hardware, or another supported host. On RPM-based distributions, the installer preserves a supported distro-owned Node package that links unsafe system SQLite and provisions a separate user-space runtime for OpenClaw.What the installer provisions
Recommended, supported, and provisioned are three different things.
See Installer internals for provisioning details.
Check your runtime
openclaw requires Node >=24.16.0 <25, or >=26.1.0.