Install and load a workspace
@libtmux/workspace 0.1.0-alpha.12 · Source
Build the documented tmux-workspace revision, then load a small session on a
private socket. Use a Unix shell with tmux 3.3a or newer on PATH.
Build the command¶
Fetch the documented source revision, then build from its repository root.
Keep the exported PATH in this shell for the rest of the walkthrough.
$ git clone --filter=blob:none https://github.com/libtmux/libtmux-ts.git$ cd libtmux-ts$ git fetch --depth=1 origin f36d692552bb9a373b45338bb5fece854e57cc3d$ git checkout --detach FETCH_HEADUse Bun and Node.js 22 or newer. Install the locked dependencies and build the core package before the CLI:
$ bun install --frozen-lockfile$ bun run --cwd packages/libtmux build$ bun run --cwd packages/workspace-cli build$ WORKSPACE_BIN="$(mktemp -d)"$ ln -s "$PWD/packages/workspace-cli/dist/main.js" "$WORKSPACE_BIN/tmux-workspace"$ export PATH="$WORKSPACE_BIN:$PATH"The launcher runs the built JavaScript using Node. Keep the source directory in place while using it.
$ tmux-workspace --helpCreate the input¶
Keep this shell open. Create a temporary working directory on a filesystem that supports Unix sockets, then enter it:
$ WORKSPACE_TMP="$(mktemp -d)"$ cd "$WORKSPACE_TMP"Save this as workspace.yaml:
session_name: workspace-guidewindows: - window_name: editor layout: even-horizontal panes: [null, null]Load and inspect¶
$ tmux-workspace load \ -S "$WORKSPACE_TMP/tmux.sock" \ -f /dev/null \ -d \ --json \ workspace.yaml-d leaves the session detached. Inspect its panes using the same socket:
$ tmux -S "$WORKSPACE_TMP/tmux.sock" list-panes -t '=workspace-guide:editor'Attach interactively with tmux -S "$WORKSPACE_TMP/tmux.sock" attach-session -t '=workspace-guide'. Detach with your tmux detach binding before continuing.
Capture and clean up¶
$ tmux-workspace freeze -S "$WORKSPACE_TMP/tmux.sock" --json workspace-guideTry export and reload before cleanup. Capture cannot recover original scripts, command history or application state.
Remove only the session created by this walkthrough when finished:
$ tmux -S "$WORKSPACE_TMP/tmux.sock" kill-session -t '=workspace-guide'The configuration remains in the temporary directory. Keep the session running when following guides that continue this example.
Continue¶
Configuration describes execution fields; discovery finds saved files. Read the load reference and automation for attachment, output and failure handling.