Manage saved work
Molt autosaves cell identity, type, order, and source. It does not save output or live execution state.
Locate the saved files
Section titled “Locate the saved files”On macOS, Molt uses the standard Application Support configuration directory:
~/Library/Application Support/molt/The directory contains:
| File | Purpose |
|---|---|
config.toml |
Interpreter and application settings |
notebooks.json |
Autosaved cell source for all four tabs |
Older repository prose refers to ~/.config/molt/, but the released code uses macOS’s Application Support directory.
Understand autosave
Section titled “Understand autosave”After a store change, Molt waits about 1.5 seconds and writes a new JSON snapshot when the persistable fields changed. It also attempts to flush a pending write when the React application unmounts.
Saved fields are limited to:
- File schema version.
- Tab index.
- Cell ID.
- Cell type.
- Cell source.
On relaunch, Molt resets outputs, execution labels, cell states, notebook counters, and all Python kernels.
Back up your scratchpads
Section titled “Back up your scratchpads”Quit Molt, then copy the persistence file:
mkdir -p "$HOME/Documents/Molt Backups"cp "$HOME/Library/Application Support/molt/notebooks.json" \ "$HOME/Documents/Molt Backups/notebooks-$(date +%Y-%m-%d-%H%M%S).json"A backup taken while Molt is running may miss the most recent 1.5-second debounce window.
Restore a backup
Section titled “Restore a backup”- Quit Molt.
- Preserve the current file.
- Copy the backup into place.
- Relaunch Molt.
mv "$HOME/Library/Application Support/molt/notebooks.json" \ "$HOME/Library/Application Support/molt/notebooks.before-restore.json"cp "$HOME/Documents/Molt Backups/notebooks-2026-08-31-190000.json" \ "$HOME/Library/Application Support/molt/notebooks.json"Molt loads the restored cell source on startup.
Reset all saved cells
Section titled “Reset all saved cells”Quit Molt and move the persistence file out of the way:
mv "$HOME/Library/Application Support/molt/notebooks.json" \ "$HOME/Library/Application Support/molt/notebooks.reset-backup.json"On the next launch, Molt starts each tab with one empty cell. The old file remains available for recovery.
Recover from malformed JSON
Section titled “Recover from malformed JSON”If notebooks.json cannot be parsed, Molt logs an error and opens with default empty notebooks. It does not show a dedicated recovery dialog. A later store change can cause those defaults to be written over the malformed file.
-
Quit Molt promptly and copy the malformed file for analysis if it still exists.
-
Preserve that copy before relaunching or editing.
-
Validate it with Python:
Terminal window python3 -m json.tool \"$HOME/Library/Application Support/molt/notebooks.json" -
Correct the JSON or restore a backup.
-
Relaunch Molt.
The Files and schemas reference provides the exact version 1 structure.
Recover one cell manually
Section titled “Recover one cell manually”Because source is plain JSON, you can extract text from a backup without restoring the entire file:
python3 - <<'PYTHON'import jsonfrom pathlib import Path
path = Path.home() / "Documents" / "Molt Backups" / "notebooks-backup.json"data = json.loads(path.read_text())for tab in data["tabs"]: for index, cell in enumerate(tab["cells"], start=1): print(f"--- Tab {tab['tabIndex'] + 1}, cell {index} ---") print(cell["source"])PYTHONCopy the required source back into Molt rather than hand-editing live data while the app is running.
