# `AtpClient.Isabelle.Session`
[🔗](https://github.com/jcschuster/AtpClient/blob/v0.2.0/lib/atp_client/isabelle/session.ex#L1)

Handle for an open Isabelle server session.

Wraps an `%IsabelleClient{}` from the `:isabelle_elixir` package — which
itself owns the underlying TCP socket and the server-assigned `session_id` —
together with the resolved configuration the session was opened with, so
follow-up calls can pick up the same `local_dir` / `isabelle_dir` without
being passed them again.

# `t`

```elixir
@type t() :: %AtpClient.Isabelle.Session{
  client: IsabelleClient.t(),
  config: keyword()
}
```

---

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