# Troubleshooting (/docs/troubleshooting)



## Start with `cento doctor` [#start-with-cento-doctor]

```bash
cento doctor
```

`doctor` checks everything a working Cento machine needs — disk space, the
background daemon, automatic startup, pairing, and (on Windows) WSL — and
prints a structured report:

* **Exit code 0** — your machine is fully ready. There is no partial success.
* **Nonzero** — one or more gaps, each with what's missing and what to do.

Scripts and coding agents can consume the same report as JSON:

```bash
cento doctor --json
```

## Common fixes [#common-fixes]

| Symptom                                | Fix                                                                     |
| -------------------------------------- | ----------------------------------------------------------------------- |
| Machine shows offline in the dashboard | `cento host install` — it repairs missing bundle or startup supervision |
| Apply a newly published daemon build   | `cento host update` — it uses the daemon's generation-swap lifecycle    |
| Not paired / login expired             | `cento login`, then approve in the browser                              |
| Broken or partial install              | Re-run the install command — it converges rather than duplicates        |

## Re-running install is safe [#re-running-install-is-safe]

`cento host install` is idempotent. It fixes a missing or unhealthy runtime
spine and leaves an already healthy daemon and OS supervisor untouched.
