Repository navigation
Tape Recording
Record what you do in TUIOS into a tape you can edit and replay.
TUIOS can record what you do into a .tape file. A recording holds actions, such as "open a window" and "type this text", not terminal output. The result is a plain text tape that you can read, edit and replay.
Press Ctrl+B T r. Type a name, or keep the suggested recording_<date>_<time>, and press Enter.
The dock shows [REC] while recording is on. If a window is focused, TUIOS switches to terminal mode so your typing is recorded.
Open windows, type commands, switch workspaces. Each action is added to the recording.
Press Ctrl+B T s. TUIOS writes the tape to disk and shows the file name.
tuios tape play "$(tuios tape dir)/my-workflow.tape"The tape prefix is Ctrl+B T, followed by:
| Key | Action |
|---|---|
| r | Start recording (asks for a name) |
| s | Stop recording and save |
| m | Open the tape manager |
| t | Review a detected project tape |
| Esc | Cancel the prefix |
The tape manager lists your recordings. Use j and k or the arrow keys to select, Enter to play in the current session, r to record and d to delete.
# my-workflow
# Recorded: 2026-09-22T10:15:04+04:00
# Disable animations for consistent playback
DisableAnimations
EnableTiling
WindowManagementMode
NewWindow
Sleep 1.204s
TerminalMode
Type "ls -la"
Sleep 612ms
Enter
# Re-enable animations
EnableAnimationsEvery recording has the same frame:
- A header comment with the name and the start time.
-
DisableAnimationsat the start andEnableAnimationsat the end, so playback does not depend on your animation setting. - The state at the moment you started:
SwitchWorkspaceif you were not on workspace 1, thenEnableTilingorDisableTiling, then the mode.
Between actions, a pause longer than 100 ms becomes a Sleep, rounded to the millisecond.
Printable keys you type into a pane are joined into one Type command. The text is written out when the next non-text key, action, mode switch or workspace switch happens, or when you stop recording.
| Recorded | As |
|---|---|
| New, close, next and previous window |
NewWindow, CloseWindow, NextWindow, PrevWindow
|
| Minimize | MinimizeWindow |
| Toggle tiling | ToggleTiling |
| Every other action you run with a key |
Action <name>, such as Action toggle_zoom or Action prefix_split_vertical
|
| Workspace switch | SwitchWorkspace <n> |
| Mode switch |
TerminalMode, WindowManagementMode
|
| Text typed into a pane | Type "..." |
| Special keys and key combinations sent to a pane |
Enter, Tab, Up, ctrl+c and so on |
An Action line does what the key did, so splits, zoom, snaps, layouts, the scratch pane and the rest replay the same way. See Any action.
Not recorded:
- Mouse actions: clicks, drags and resizes.
- Keys you type into a dialog or an overlay. An action that opens a dialog, such as
rename_window, replays as the open dialog. Replace it withRenameWindow "name"by hand. - The keys that only open a prefix, and the tape keys themselves.
tuios tape list # name, size and date of each recording
tuios tape show my-workflow # print a recording
tuios tape delete my-workflow
tuios tape dir # print the recordings directoryshow and delete take the name with or without .tape. delete asks for confirmation.
Recordings are saved in the tuios folder of your data directory, which tuios tape dir prints:
| Platform | Default location |
|---|---|
| Linux and BSD | ~/.local/share/tuios/ |
| macOS | ~/Library/Application Support/tuios/ |
Setting XDG_DATA_HOME moves it on every platform. Only files ending in .tape are listed.
A recording is a normal tape, so you can:
- add comments,
- replace the exact
Sleepvalues with round ones, - add
WaitForso playback waits for real output, - add
Expectlines that check the result, - replace an opened rename dialog with
RenameWindow "name", - delete mistakes.
For example, a recording that starts a dev server can wait for it before opening a second pane:
EnableTiling
NewWindow
RenameWindow "server"
Type "npm start"
Enter
WaitFor text "listening on" 15s
SmartSplit
WaitFor panes 2
RenameWindow "shell"Run tuios tape validate on the file after editing. tuios tape play and tuios tape exec both honour the waits.
- Turn tiling on before you record. Tiled layouts replay the same way at any terminal size. Floating window positions are not recorded.
- Keep one task per tape. Short tapes are easier to fix than a whole afternoon.
- Start from a known state.
tape playstarts with no windows, so a recording made in a busy session will not replay the same way. - Recording writes the file once, when you stop. Nothing is written per keystroke.
- Tape Scripting: Every tape command, and how to run tapes
- Showkeys: Show your keypresses while you record a demo
- Keybindings: The tape prefix and every other binding
- Introduction
- Getting Started
- Learn tuios, hands on
- Keybindings
- Hints
- Finding a Pane
- Links
- TUIOS vs Others
Windows and Layout
Sessions and Machines
Agents
- Agents
- Inbox and Review
- Agent Messaging
- Program Status
- Worktrees
- Checkpoints
- Ship
- Push Notifications
- Turn Off Agent Features
Scripting
Recording
Reference