Enabling recording
Recording is off by default. It can be enabled in settings, or forced with the environment variable
WROLP_RECORDING=1 (use 0 to force it off).
Where events are written
Events are written per session as NDJSON:
<data dir>/recordings/<workspace>/<group>/<connection>/<timestamp>_<session8>.jsonl
- Each line is one JSON event.
- The buffer is flushed every 5 seconds and when the session disconnects.
- SQLite stores only the index —
events_fileandevent_count— sowrolp.dbdoes not grow proportionally to recording length.
The recordings panel
A bottom panel provides:
- Browse recordings.
- Reveal the recording file in the file manager.
- Export to asciinema v2 (
.cast). - Replay.
- Delete.
- Migrate legacy data, and rebuild the index from the directory.
Handling recordings
Recordings capture terminal content, so treat the recordings/ directory as sensitive: it lives inside the
data directory covered in chapter 12 and moves with it.
Related chapters
- Chapter 12 — Data location, migration & backup.
- Chapter 3 — Sessions & tabs: session identity (
session_id) is part of the file name.