OpenClaw install.sh vs npm global on Cloud Mac 2026: choose, verify, and upgrade safely
OpenClaw ships multiple install paths. On a rented Apple Silicon cloud Mac you usually want reproducible upgrades, a single source of truth for the gateway binary, and logs that match your runbooks.
Read OpenClaw deployment guide, gateway daemon troubleshooting, Node prerequisites on cloud Mac, and production cutover health checks & rollback before changing production gateways.
When install.sh wins
- You want the vendor-tested bundle that matches current documentation and default paths.
- Operators are junior or rotating—fewer manual PATH tweaks mean fewer incidents.
- You are pairing with launchd templates from MacLogin playbooks and need predictable locations.
When npm global wins
- You already standardize on a pinned Node major via nvm or asdf across the fleet.
- You need multiple CLI majors side by side for canary testing.
- Your security team mandates npm audit workflows for every install.
Side-by-side comparison
| Topic | install.sh | npm -g |
|---|---|---|
| PATH surprises | Lower—script sets expected locations | Higher—shell profile order matters |
| Upgrades | Re-run script; watch release notes | npm update -g; verify semver |
| Gateway recovery | Aligns with upstream docs | Confirm which node executes launchd |
Verification checklist
- Run
node -vand confirm it matches the gateway plist expectation. - Run
which openclaw(or the documented binary name) from a non-login SSH session—the path should be stable. - Hit the local gateway health endpoint or CLI status command from the cloud Mac itself before testing laptop tunnels.
- Tail gateway logs while restarting launchd to catch port collisions early.
Upgrade paths without orphan binaries
Snapshot the old binary path, uninstall or archive the previous npm global package, then reinstall. If launchd fails, follow gateway troubleshooting and cross-check environment variables from deployment guide.
FAQ
Answers below align with the FAQ schema on this page.
Can I mix install.sh for gateway and npm for plugins? Only if you deliberately separate prefixes and document which interpreter owns each binary; otherwise expect double installs.
Does MacLogin pin Node for me? You still own the runtime inside your lease—treat Node like any other compliance-controlled dependency.
What if SSH tunnels break after upgrade? Re-check LocalForward ports and confirm the gateway is listening on the expected loopback interface.
Run OpenClaw on dedicated Apple Silicon
Add MacLogin nodes per region and keep install choices in your internal wiki.