> ## Documentation Index
> Fetch the complete documentation index at: https://ctrlrun.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# InMemoryStateStore

> Everything held in process memory: for tests and `ctrlrun demo`.

`ctrlrun.InMemoryStateStore` — class, defined at `src/ctrlrun/state.py:579`

```python theme={null}
from ctrlrun import InMemoryStateStore
```

```python theme={null}
class InMemoryStateStore
    def __init__(*, clock: Callable[[], datetime] = _utc_now)
```

Everything held in process memory: for tests and `ctrlrun demo`.

Nothing here survives the process, and nothing here is shared between processes, so this
store cannot provide the cross-process half of SPEC-v0.1 §5.3 E1 — `SQLiteStateStore` is
the store for anything that matters. Within one process it refuses exactly what SQLite
refuses: the same `plan_reservation` and `check_consumable` decide, under one lock that
covers each whole check-and-write.

## Next

* [Python API index](/reference/api/index).
* [Get started](/get-started/quickstart) · [Why](/why).


## Related topics

- [Python API](/reference/api/index.md)
- [StateStore](/reference/api/StateStore.md)
- [SQLiteStateStore](/reference/api/SQLiteStateStore.md)
- [PostgresStateStore](/reference/api/postgres-PostgresStateStore.md)
- [EffectState](/reference/api/EffectState.md)
