# `Jido.Debug`
[🔗](https://github.com/agentjido/jido/blob/v2.3.0/lib/jido/debug.ex#L1)

Per-instance debug mode for Jido agents.

Provides a single entrypoint to control observability verbosity
at runtime, scoped to a specific Jido instance.

## Debug Levels

- `:off` - No debug overrides, uses configured defaults
- `:on` - Developer-friendly verbosity (debug logging, keys_only args, minimal debug events)
- `:verbose` - Maximum detail (trace logging, full args, all debug events)

## Usage

    # Via instance module
    MyApp.Jido.debug(:on)
    MyApp.Jido.debug(:verbose)
    MyApp.Jido.debug(:off)
    MyApp.Jido.debug()          # => :off

    # Via top-level Jido module (applies to Jido.Default)
    Jido.debug(:on)

# `instance`

```elixir
@type instance() :: atom()
```

# `level`

```elixir
@type level() :: :off | :on | :verbose
```

# `disable`

```elixir
@spec disable(instance()) :: :ok
```

# `enable`

```elixir
@spec enable(instance(), level(), keyword()) :: :ok
```

# `enabled?`

```elixir
@spec enabled?(instance()) :: boolean()
```

# `level`

```elixir
@spec level(instance()) :: level()
```

# `maybe_enable_from_config`

```elixir
@spec maybe_enable_from_config(atom(), instance()) :: :ok
```

# `override`

```elixir
@spec override(instance(), atom()) :: term() | nil
```

# `reset`

```elixir
@spec reset(instance()) :: :ok
```

# `status`

```elixir
@spec status(instance()) :: map()
```

