tmux workspace manager, forged in Java.
Session manager for tmux. Load, freeze, and convert tmux sessions through YAML/JSON configuration files. Powered by libtmux for Java.
Install
Install the workspace package separately from the core library.
Run from a libtmux-java checkout with JDK 25 or newer. The launcher is libtmux-workspace-cli/build/install/tmux-workspace/bin/tmux-workspace; keep its adjacent libraries.
CLI Manual
Commands, options and machine output.
Configuration
Workspace fields, normalization and execution.
Install and load
Load a workspace on a private socket, then capture it.
Example gallery
Workspace files to start from, with their prerequisites.
Runtime support
Runtime requirements and supported behavior.
Internals
The workspace library, for building sessions from code.
tmux-workspace creates tmux sessions from YAML or JSON. A file describes
windows, panes, commands, directories and environment. Load it from a terminal
or request machine output for automation.
Load a workspace from the terminal¶
- Install the command and load a workspace.
- Configure windows and panes.
- Capture and reload a session.
The CLI manual covers discovery, search, editing, loading, capture, conversion and import. Examples provide complete configurations with their prerequisites.
Automate and inspect¶
Use load -d when the caller should return without attaching. --json returns
a result, and --ndjson supports a stream of records. Read
automation for retry and cleanup decisions and
errors for failure handling.
Loaded workspaces are ordinary tmux sessions. Select the same socket when inspecting them from tmux or the MCP server.
Build from application code¶
The workspace library has its own API and configuration
contract. Use it when a program needs direct control over construction. The
CLI task guides here describe the tmux-workspace executable and link to its
documented source revision.
Tested example workspace files for this port are coming.