> ## Documentation Index
> Fetch the complete documentation index at: https://docs.px0.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Status

> Whether anything needs attention, in one screen, with no network or model call.

```bash theme={null}
px0 status
```

Answering "is anything broken?" used to take three commands: `px0 daemon status` for whether the scheduler is alive, `px0 runs list --failed` for what went wrong, and `px0 doctor` for whether the install is sound. `px0 status` assembles the parts of those that matter into one screen, and makes no network or model call, so it is cheap enough to run whenever you wonder.

## What it reports

| Line      | What it tells you                                                   |
| :-------- | :------------------------------------------------------------------ |
| scheduler | Whether the daemon is running, and on which platform                |
| workflows | How many exist, are scheduled, are watched, are disabled            |
| next      | The next fire time per scheduled workflow, soonest first            |
| runs      | How many ran in the window, how many failed, how many are in flight |
| failures  | Each failed run with its first line of error                        |

## `--hours N`

How far back a failure still counts as news.

* **Default:** 24.

```bash theme={null}
px0 status --hours 72
```

## `--json`

The same information as one object: daemon state, workflow counts, next fire times, recent runs, failures, the notification policy, and the problems found.

```bash theme={null}
px0 status --json | jq '.problems'
```

## The problems it looks for

| Problem                                               | Fix it prints                              |
| :---------------------------------------------------- | :----------------------------------------- |
| Workflows are scheduled but the daemon is not running | `px0 daemon start`                         |
| A run failed in the window                            | `px0 runs why <run-id>`                    |
| A run failed and `notify.on_failure` is `none`        | `px0 config set notify.on_failure desktop` |
| A workflow file does not parse                        | `px0 workflows validate`                   |

Each problem prints the exact command that addresses it, the same discipline `px0 doctor` follows - a line you cannot act on is not useful output.

## Exit codes

| Code | When                           |
| :--- | :----------------------------- |
| `0`  | Nothing needs attention        |
| `1`  | At least one problem was found |

That makes `px0 status` usable as a cheap health check in a hook or a script, the same way `px0 doctor` is - but without invoking your model backend or making a network call, so it is safe to run often.

## Related configuration

| Key                 | Effect                                                                                               |
| :------------------ | :--------------------------------------------------------------------------------------------------- |
| `notify.on_failure` | Whether a failed run tells you anything. `status` flags it when failures happened and this is `none` |
| `logs.path`         | Where the run records it reads live                                                                  |

## Related pages

<CardGroup cols={2}>
  <Card title="Schedules and the daemon" icon="clock" href="/workflows/schedule">
    What the scheduler does, and how retries and failure notifications work.
  </Card>

  <Card title="Troubleshooting" icon="stethoscope" href="/reference/troubleshooting">
    Every `px0 doctor` check, in depth.
  </Card>
</CardGroup>
