docs/guides/exporting/sessions.md
Run notebooks and write their serialized session snapshots.
marimo export session notebook.py
By default, snapshots are written to:
<notebook_dir>/__marimo__/session/<notebook_filename>.json
For example, exporting notebook.py writes:
__marimo__/session/notebook.py.json
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:
marimo export session folder/
Pass CLI args through to notebooks with --:
marimo export session notebook.py -- --foo 123
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:
marimo export session folder/ --force-overwrite
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.
To execute in a sandboxed environment, pass --sandbox:
marimo export session notebook.py --sandbox