Session snapshots¶
Run notebooks and write their serialized session snapshots.
Export from the command line¶
By default, snapshots are written to:
For example, exporting notebook.py writes:
Export a directory¶
marimo export session accepts one positional target: a notebook file or a directory.
To process multiple notebooks, pass a directory target.
Export every notebook in a directory:
Passing CLI args¶
Pass CLI args through to notebooks with --:
Staleness and force overwrite¶
By default, marimo only rewrites session snapshots when they are stale (for example, when notebook code changes or PEP 723 script metadata changes). Up-to-date snapshots are skipped.
To force rewriting all snapshots, even when they are up-to-date:
Error handling¶
If one notebook fails, marimo continues by default and exits non-zero after processing all targets.
Use --no-continue-on-error to stop at the first failure.
Sandboxed execution¶
To execute in a sandboxed environment, pass --sandbox:
--sandbox defaults to uv. Use --sandbox=uv or --sandbox=pixi to select
the backend explicitly; only the selected tool needs to be installed.
Use --no-sandbox to disable sandboxing and dependency prompts.
Each notebook executes in a separate process using its inline dependencies, whether you export a single file or a directory. Up-to-date snapshots are skipped before checking for the backend or preparing the notebook environment.