# File Formats

Tensormorph reads a wide range of checkpoint formats (safetensors, ONNX, sharded checkpoints, and more - see [Working with Models](/docs/working-with-models/safetensors)), but it also has its own small family of file formats for the data it derives and produces itself. This page is the reference for those.

| Extension  | Contents                                                                                                                                                                                                                                                                        |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `.tmidx`   | The indexed tensor table for a checkpoint: the Semantic Model Graph plus precomputed [tile statistics](/docs/inspect-and-analyze/tensor-statistics) for every tensor. Produced by `tmorph index`.                                                                               |
| `.tmtiles` | Value-level tile data at multiple levels of detail (mip-style pyramids) - the actual sampled/aggregated values behind [level-of-detail streaming](/docs/core-concepts/level-of-detail-and-streaming), separate from the statistics in `.tmidx`.                                 |
| `.tmpair`  | Precomputed statistics for an aligned A/B pair of models - the artifact a [weight diff](/docs/compare-and-morph/weight-diff) or [comparison](/docs/editors/comparison-editor) is built from, so re-opening a comparison doesn't require realigning and re-diffing from scratch. |
| `.tmrun`   | A captured runtime profile - the artifact behind [Runtime Traces](/docs/profiling/runtime-traces), recorded from a `RuntimeProbe` session or replayed from a live run.                                                                                                          |
| `.tmproj`  | Project state: bookmarks, notes, saved [TQL](/docs/reference/expressions-and-queries) queries, and workspace layouts. This is the file that makes a Tensormorph session resumable and shareable, independent of the checkpoint(s) it references.                                |

## Index files are derived, not authoritative

Every format above except `.tmproj` is a derived cache, not a source of truth. A `.tmidx`/`.tmtiles`/`.tmpair`/`.tmrun` file can always be regenerated from the checkpoint (and, for `.tmrun`, the run) it was built from. Deleting one costs you re-indexing time, not data.

This is why `tmorph index` (see [Lob CLI](/docs/cli-and-automation/lob-cli)) is a safe, idempotent operation to re-run, and why these formats are reasonable to exclude from version control - unlike the checkpoint itself, they're not something anyone needs to review a diff of.

## Producing these files without the app

Each format is producible from the CLI, not only from an interactive session - see [Batch Inspection](/docs/cli-and-automation/batch-inspection) and [CI Validation](/docs/cli-and-automation/ci-validation) for indexing and diffing a checkpoint as part of a script or pipeline.

## Related resources

-   [Level of Detail and Streaming](/docs/core-concepts/level-of-detail-and-streaming) - the LOD pyramid `.tmtiles` stores.
-   [Lob CLI](/docs/cli-and-automation/lob-cli) - `tmorph index` and related commands.
-   [Settings](/docs/reference/settings) - where generated index files are cached on disk.
