# `ADK.Session.InMemory`
[🔗](https://github.com/JohnSmall/adk_ex/blob/v0.2.0/lib/adk/session/in_memory.ex#L1)

In-memory session service backed by ETS tables.

Uses a GenServer to own three ETS tables:
- `sessions` — stores session data keyed by `{app_name, user_id, session_id}`
- `app_state` — app-level state keyed by `app_name`
- `user_state` — user-level state keyed by `{app_name, user_id}`

Reads go directly to ETS (with `read_concurrency: true`).
Writes are serialized through GenServer calls.

# `child_spec`

Returns a specification to start this module under a supervisor.

See `Supervisor`.

# `start_link`

Starts the InMemorySessionService.

---

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