@@ -483,11 +483,13 @@ openclaw gateway restart
|
483 | 483 | - `gateway status`: `--url`, `--token`, `--password`, `--timeout`, `--no-probe`, `--require-rpc`, `--deep`, `--json` |
484 | 484 | - `gateway install`: `--port`, `--runtime <node|bun>`, `--token`, `--wrapper <path>`, `--force`, `--json` |
485 | 485 | - `gateway restart`: `--safe`, `--force`, `--wait <duration>`, `--json` |
486 | | -- `gateway uninstall|start|stop`: `--json` |
| 486 | +- `gateway uninstall|start`: `--json` |
| 487 | +- `gateway stop`: `--disable`, `--json` |
487 | 488 | |
488 | 489 | </Accordion> |
489 | 490 | <Accordion title="Lifecycle behavior"> |
490 | | -- Use `gateway restart` to restart a managed service. Do not chain `gateway stop` and `gateway start` as a restart substitute; on macOS, `gateway stop` intentionally disables the LaunchAgent before stopping it. |
| 491 | +- Use `gateway restart` to restart a managed service. Do not chain `gateway stop` and `gateway start` as a restart substitute. |
| 492 | +- On macOS, `gateway stop` uses `launchctl bootout` by default, which removes the LaunchAgent from the current boot session without persisting a disable — KeepAlive auto-recovery remains active for future crashes and `gateway start` re-enables cleanly without a manual `launchctl enable`. Pass `--disable` to persistently suppress KeepAlive and RunAtLoad so the gateway does not respawn until the next explicit `gateway start`; use this when a manual stop should survive reboots or system restarts. |
491 | 493 | - `gateway restart --safe` asks the running Gateway to preflight active OpenClaw work and defer the restart until reply delivery, embedded runs, and task runs drain. `--safe` cannot be combined with `--force` or `--wait`. |
492 | 494 | - `gateway restart --wait 30s` overrides the configured restart drain budget for that restart. Bare numbers are milliseconds; units such as `s`, `m`, and `h` are accepted. `--wait 0` waits indefinitely. |
493 | 495 | - `gateway restart --force` skips the active-work drain and restarts immediately. Use it when an operator has already inspected the listed task blockers and wants the gateway back now. |
|