If you've ever run openclaw gateway stop and then tried to bring things back with openclaw gateway start, only to be greeted by a cryptic "not loaded" message and silence — you're not alone. That workflow was silently broken, and as of PR #54087, it's fixed.
What Was Broken
The root cause lived in src/cli/daemon-cli/lifecycle-core.ts. When gateway start detected that the service wasn't loaded (which is always true after a gateway stop / launchctl bootout), it called handleServiceNotLoaded — a function that only printed hints to the console and exited. It never attempted to re-bootstrap the service.
The result: after a clean gateway stop, the only way to start the service again was to run openclaw gateway install. A plain gateway start simply wouldn't work.
The Fix
The fix routes the "not loaded" path through the same service.restart() call that the gateway already used for recoverable restarts. That restart path (restartLaunchAgent in launchd.ts) already handles re-bootstrapping via bootstrapLaunchAgentOrThrow — it just wasn't being reached from the start command.
The updated flow:
gateway startdetects service is not loaded- Now: attempts
service.restart()first, which handles re-bootstrapping on all platforms (macOS launchd, Linux systemd/pm2, Windows service) - If restart fails (e.g., the plist was deleted, not just booted out), falls back to the existing hint output
The PR also moved config validation to run before the restart attempt, so an invalid config is caught before OpenClaw tries to boot — not after.
Why This Matters
The gateway stop + gateway start cycle is a natural pattern when troubleshooting or applying config changes. Having start silently fail after stop was a footgun that sent users down confusing paths. This fix aligns gateway start with reasonable expectations: if you stopped the service, start should bring it back.
If you've been relying on gateway install as a workaround, you can switch back to the simpler start/stop commands once this ships in the next release.
Related Issue
This fix closes #53878. The patch landed on March 25, 2026, and is expected to ship in the next release.
Until Then
If you're on the current stable release and hitting this issue:
# Workaround until the fix ships:
openclaw gateway stop
openclaw gateway install # re-bootstraps the service
Watch the releases page for the next tagged version that includes this fix.