# tinker_cookbook.stores

| Class | Description |
| --- | --- |
| [`StorageStat`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/storagestat/) | File metadata. |
| [`Storage`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/storage/) | Sync byte-level file I/O. |
| [`AsyncStorage`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/asyncstorage/) | Async byte-level file I/O. |
| [`LocalStorage`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/localstorage/) | File-based storage rooted at a local directory. |
| [`FsspecStorage`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/fsspecstorage/) | Storage backend wrapping any `fsspec.AbstractFileSystem`. |
| [`RunInfo`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/runinfo/) | Metadata about a discovered training run. |
| [`RunRegistry`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/runregistry/) | Discovers training runs and provides stores for each. |
| [`TrainingRunStore`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/trainingrunstore/) | Typed read/write access to one training run's data. |
| [`EvalStore`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/evalstore/) | Manages evaluation runs across checkpoints. |
| [`IncrementalReader`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/incrementalreader/) | Reads a JSONL file incrementally, tracking the byte offset. |

| Function | Description |
| --- | --- |
| [`storage_from_uri()`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/storage_from_uri/) | Create a Storage backend from a URI string. |
| [`storage_join()`](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/stores/storage_join/) | Join storage path segments, normalizing the result.
