# libtmux.workspace.cli

**Workspace Manager concept example** A working example of the core library. It can change without notice.

- **Package:** libtmux/workspace/cli
- **Language:** Common Lisp
- **Kind:** module
- **Source:** https://github.com/libtmux/libtmux-lisp/blob/c2e5fc4ed3befda21f45dfa5d5868c38fd138311/src/workspace-cli.lisp#L1
- **Page:** https://libtmux.org/en/lisp/latest/workspace/reference/libtmux-workspace-cli/

Command-line adapter for bounded libtmux workspace documents.
VALIDATE and PLAN are local. APPLY requires an explicit socket path and uses a
scoped libtmux client. Output is one JSON summary; failures return a nonzero
status without entering the debugger.

## Members

### Common operations

- [`main`](/en/lisp/latest/workspace/reference/libtmux-workspace-cli-main/) (function): Run the workspace CLI for ARGUMENTS and return process status 0, 1, or 2.
VALIDATE and PLAN parse one bounded file without tmux I/O. APPLY requires
--socket-path and optionally accepts --program; it scopes and closes its own
client without terminating the server. STDOUT receives one JSON result or help.
STDERR receives usage text or one JSON error retaining condition causes, failed
step data, and command outcomes, including byte arrays and unknown dispatch
status. An unavailable exit code or failed step is omitted. MAIN does not call
UIOP:QUIT, close caller streams, or enter the debugger.
Nested diagnostic details stop after eight levels and mark detailsTruncated.
