2026-02-22 20:04:08 +01:00
---
summary: "CLI reference for `openclaw daemon` (legacy alias for gateway service management)"
read_when:
- You still use `openclaw daemon ...` in scripts
- You need service lifecycle commands (install/start/stop/restart/status)
title: "daemon"
---
# `openclaw daemon`
Legacy alias for Gateway service management commands.
`openclaw daemon ...` maps to the same service control surface as `openclaw gateway ...` service commands.
## Usage
```bash
openclaw daemon status
openclaw daemon install
openclaw daemon start
openclaw daemon stop
openclaw daemon restart
openclaw daemon uninstall
```
## Subcommands
- `status` : show service install state and probe Gateway health
- `install` : install service (`launchd` /`systemd` /`schtasks` )
- `uninstall` : remove service
- `start` : start service
- `stop` : stop service
- `restart` : restart service
## Common options
- `status` : `--url` , `--token` , `--password` , `--timeout` , `--no-probe` , `--deep` , `--json`
- `install` : `--port` , `--runtime <node|bun>` , `--token` , `--force` , `--json`
- lifecycle (`uninstall|start|stop|restart` ): `--json`
2026-03-05 12:53:56 -06:00
Notes:
- `status` resolves configured auth SecretRefs for probe auth when possible.
2026-03-07 18:28:32 -06:00
- On Linux systemd installs, `status` token-drift checks include both `Environment=` and `EnvironmentFile=` unit sources.
2026-03-05 12:53:56 -06:00
- When token auth requires a token and `gateway.auth.token` is SecretRef-managed, `install` validates that the SecretRef is resolvable but does not persist the resolved token into service environment metadata.
- If token auth requires a token and the configured token SecretRef is unresolved, install fails closed.
- If both `gateway.auth.token` and `gateway.auth.password` are configured and `gateway.auth.mode` is unset, install is blocked until mode is set explicitly.
2026-02-22 20:04:08 +01:00
## Prefer
Use [`openclaw gateway` ](/cli/gateway ) for current docs and examples.