# `Snakepit.EnvDoctor`
[🔗](https://github.com/nshkrdotcom/snakepit/blob/v0.13.0/lib/snakepit/env_doctor.ex#L1)

Environment diagnostics for the Python bridge.

Provides both a Mix task integration (`mix snakepit.doctor`) and runtime
guardrails via `ensure_python!/1`.

# `check_result`

```elixir
@type check_result() :: %{
  name: atom(),
  status: :ok | :warning | :error,
  message: String.t()
}
```

# `ensure_python!`

```elixir
@spec ensure_python!(Keyword.t()) :: :ok | no_return()
```

Ensure the Python runtime is ready. Raises if any critical check fails.

# `run`

```elixir
@spec run(Keyword.t()) :: {:ok, [check_result()]} | {:error, [check_result()]}
```

Run the full doctor suite. Returns `{:ok, results}` or `{:error, results}`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
