# Libtmux_json.Workspace

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

- **Package:** libtmux-json
- **Language:** OCaml
- **Kind:** module
- **Source:** https://github.com/libtmux/libtmux-ocaml/blob/205dfda49742592b479247049d186956e4a4cfe9/json/libtmux_json.mli#L36
- **Public owner:** Libtmux_json
- **Page:** https://libtmux.org/en/ocaml/latest/workspace/reference/libtmux_json-workspace/

```ocaml
module Workspace
```

Validate workspace documents and describe plans and retained execution. Preview output never supplies executable targets.

## Members

### Common operations

- [`of_string`](/en/ocaml/latest/workspace/reference/libtmux_json-workspace-of_string/) (function): Decode `libtmux.workspace/1` with the query codec's 64 KiB, UTF-8 and 32-level JSON bounds. Reject duplicate and unknown properties, invalid argv/shell combinations and configuration errors. `directory` is the absolute document directory; these functions perform no filesystem I/O.

### Other members

- [`decode`](/en/ocaml/latest/workspace/reference/libtmux_json-workspace-decode/) (function)
- [`encode_plan`](/en/ocaml/latest/workspace/reference/libtmux_json-workspace-encode_plan/) (function): Describe `libtmux.workspace-plan/1` without I/O. The advisory preview contains command argv, cwd and environment names, excluding environment values, option values and startup text. It is not an execution script.
- [`encode_receipt`](/en/ocaml/latest/workspace/reference/libtmux_json-workspace-encode_receipt/) (function): Describe `libtmux.workspace-receipt/1` with ordered steps, outcome index lists, creation IDs, unbound hints and per-pane cleanup. Diagnostic messages are limited to 4096 bytes with an explicit truncation flag; command payloads are omitted.
