# `Incant.Session`
[🔗](https://github.com/elixir-vibe/incant/blob/v0.1.1/lib/incant/session.ex#L1)

Unified Incant admin session interface.

LiveView and other admin UI code should depend on this protocol rather
than knowing whether an admin surface is backed by local BEAM metadata or a
SafeRPC-discovered service entry.

# `t`

```elixir
@type t() :: term()
```

# `contract`

Returns the loaded transport-safe admin contract.

# `fetch_surface`

Fetches one contract surface by id.

# `index`

Indexes a resource surface.

# `list_surfaces`

Lists contract surfaces. Options may include `:kind`.

# `read`

Reads one resource item.

# `run_action`

Runs a resource action.

# `run_widget`

Runs a dashboard widget query.

---

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