# API reference

Source: https://libtmux.org/en/raku/latest/reference/

> Types, methods, and functions in libtmux for Raku.

Browse the Raku types and operations for working with tmux. Start with the core objects below, or search for a type or member.

Server 4 types

[Server](https://libtmux.org/en/raku/latest/reference/libtmux-server/) class 46 members

[Endpoint](https://libtmux.org/en/raku/latest/reference/libtmux-engine-endpoint/) class 10 members

Immutable connection settings. Construction performs no tmux operation.

[Incarnation](https://libtmux.org/en/raku/latest/reference/libtmux-engine-incarnation/) class 7 members

Value-only daemon identity. Retaining it keeps no process or executor alive.

[Observation](https://libtmux.org/en/raku/latest/reference/libtmux-engine-observation/) class 3 members

One immutable pairing of daemon identity and capability evidence.

Session 5 types, 1 function or constant

[Session](https://libtmux.org/en/raku/latest/reference/libtmux-model-session/) class 22 members

Captured session with local window-link and group relationships.

[SessionGroup](https://libtmux.org/en/raku/latest/reference/libtmux-model-sessiongroup/) class 14 members

Captured session group whose members are resolved within this graph.

[SessionGroupSelection](https://libtmux.org/en/raku/latest/reference/libtmux-model-sessiongroupselection/) class 23 members

Replayable typed sessiongroup membership with local filtering.

[SessionRef](https://libtmux.org/en/raku/latest/reference/libtmux-model-sessionref/) class 16 members

Value-only command target for a session in one daemon incarnation.

[SessionSelection](https://libtmux.org/en/raku/latest/reference/libtmux-model-sessionselection/) class 23 members

Replayable typed session membership with local filtering.

[SessionId](https://libtmux.org/en/raku/latest/reference/libtmux-types-sessionid/) type alias

A session identifier's spelling; existence and daemon ownership are separate.

Window 6 types, 1 function or constant

[Window](https://libtmux.org/en/raku/latest/reference/libtmux-model-window/) class 24 members

Captured physical window; session-relative indices belong to WindowLink.

[WindowLink](https://libtmux.org/en/raku/latest/reference/libtmux-model-windowlink/) class 20 members

One captured session/index association with an expected physical window.

[WindowLinkRef](https://libtmux.org/en/raku/latest/reference/libtmux-model-windowlinkref/) class 10 members

A session/index target with an expected window. Renumbering checks are not atomic.

[WindowLinkSelection](https://libtmux.org/en/raku/latest/reference/libtmux-model-windowlinkselection/) class 23 members

Replayable typed window-link membership with local filtering.

[WindowRef](https://libtmux.org/en/raku/latest/reference/libtmux-model-windowref/) class 18 members

Value-only command target for a physical window, independent of its links.

[WindowSelection](https://libtmux.org/en/raku/latest/reference/libtmux-model-windowselection/) class 23 members

Replayable typed window membership with local filtering.

[WindowId](https://libtmux.org/en/raku/latest/reference/libtmux-types-windowid/) type alias

A physical window identifier. An index in a session is a different value.

Pane 3 types, 1 function or constant

[Pane](https://libtmux.org/en/raku/latest/reference/libtmux-model-pane/) class 45 members

Captured pane fields and its local physical-window relationship.

[PaneRef](https://libtmux.org/en/raku/latest/reference/libtmux-model-paneref/) class 38 members

Value-only command target for a physical pane in one daemon incarnation.

[PaneSelection](https://libtmux.org/en/raku/latest/reference/libtmux-model-paneselection/) class 23 members

Replayable typed pane membership with local filtering.

[PaneId](https://libtmux.org/en/raku/latest/reference/libtmux-types-paneid/) type alias

A pane identifier scoped to a captured daemon incarnation.

Client 7 types

[Client](https://libtmux.org/en/raku/latest/reference/libtmux-client/) module In LibTmux 3 members

[Client](https://libtmux.org/en/raku/latest/reference/libtmux-model-client/) class In LibTmux::Model 24 members

Captured attached-client fields; commands use its separate reference.

[Attachment](https://libtmux.org/en/raku/latest/reference/libtmux-attachment/) class 14 members

[ClientTarget](https://libtmux.org/en/raku/latest/reference/libtmux-client-clienttarget/) class 26 members

A value-only client target. No subprocess or connection is retained.

[MenuItem](https://libtmux.org/en/raku/latest/reference/libtmux-client-menuitem/) class 5 members

A menu entry. Empty labels are separators; labels retain tmux display styles.

[ClientRef](https://libtmux.org/en/raku/latest/reference/libtmux-model-clientref/) class 24 members

A captured client identity with explicit inspection and inherited client commands.

[ClientSelection](https://libtmux.org/en/raku/latest/reference/libtmux-model-clientselection/) class 23 members

Replayable typed client membership with local filtering.

Hooks 1 type

[Hooks](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-hooks/) class 6 members

Named hook command arrays. Reading a hook never executes its command source.

Options 2 types

[OptionSpec](https://libtmux.org/en/raku/latest/reference/libtmux-catalogue-optionspec/) class 12 members

One source-qualified option type, scope and operand range.

[OptionValue](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-optionvalue/) class 4 members

One observed option value. The source schema determines its native scalar type.

Keys and bindings 2 types

[KeyBinding](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-keybinding/) class 6 members

Captured binding metadata. Legacy listings leave note-state Unloaded.

[KeyBindings](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-keybindings/) class 5 members

Server key tables. Invocation keeps stored command arguments distinct.

Buffers 4 types

[BufferInfo](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-bufferinfo/) class 4 members

Buffer metadata is separate from explicitly acquired binary contents.

[Buffers](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-buffers/) class 7 members

Server-scoped paste buffers with binary load and save operations.

[Buffer](https://libtmux.org/en/raku/latest/reference/libtmux-model-buffer/) class 14 members

Captured buffer metadata; it does not retain or implicitly load buffer content.

[BufferSelection](https://libtmux.org/en/raku/latest/reference/libtmux-model-bufferselection/) class 23 members

Replayable typed buffer membership with local filtering.

Layout and geometry 2 types, 1 function or constant

[Layout](https://libtmux.org/en/raku/latest/reference/libtmux-layout/) module In LibTmux 3 members

[Layout](https://libtmux.org/en/raku/latest/reference/libtmux-layout-layout/) class In LibTmux::Layout 12 members

Decoded layout plus exact source bytes, including unsupported future versions.

[decode-layout](https://libtmux.org/en/raku/latest/reference/libtmux-layout-decode-layout/) function

Decode a declared dialect. Unknown versions retain bytes without a guessed tree.

Environment 2 types

[Environment](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-environment/) class 6 members

Session or global environment, including hidden and removed entries.

[EnvironmentValue](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-environmentvalue/) class 6 members

Environment absence and an explicit removed marker are different states.

Terminal capabilities 1 type

[Capabilities](https://libtmux.org/en/raku/latest/reference/libtmux-capabilities/) class 21 members

Versions 5 types, 3 functions and constants

[Catalogue](https://libtmux.org/en/raku/latest/reference/libtmux-catalogue/) module 7 members

Packaged, source-qualified fields, relationships, options and release profiles.

[CatalogueData](https://libtmux.org/en/raku/latest/reference/libtmux-catalogue-cataloguedata/) class 14 members

Typed schema lookup used by acquisition, local criteria and documentation.

[SupportPolicy](https://libtmux.org/en/raku/latest/reference/libtmux-catalogue-supportpolicy/) class 5 members

Ordered release profiles are the sole source of the floor and CI endpoints.

[TmuxVersion](https://libtmux.org/en/raku/latest/reference/libtmux-catalogue-tmuxversion/) class 7 members

Parsed release spelling; an exact release can still lack a support profile.

[SupportState](https://libtmux.org/en/raku/latest/reference/libtmux-types-supportstate/) enum 3 members

Capability evidence never treats an unprobed feature as supported.

[catalogue](https://libtmux.org/en/raku/latest/reference/libtmux-catalogue-catalogue/) function

Return the validated packaged catalogue; no tmux command is executed.

[parse-tmux-version](https://libtmux.org/en/raku/latest/reference/libtmux-catalogue-parse-tmux-version/) function

Preserve the raw string and reject vendor/development suffixes as unqualified.

[support-policy](https://libtmux.org/en/raku/latest/reference/libtmux-catalogue-support-policy/) function

Return the immutable release policy without reading configuration or contacting tmux.

Commands 11 types

[Batch](https://libtmux.org/en/raku/latest/reference/libtmux-batch/) module In LibTmux 5 members

[Batch](https://libtmux.org/en/raku/latest/reference/libtmux-batch-batch/) class In LibTmux::Batch 8 members

A finite replayable sequence of explicit commands, without transaction semantics.

[Evidence](https://libtmux.org/en/raku/latest/reference/libtmux-batch-evidence/) class 4 members

Caller-supplied evidence for one named operation, not a command acknowledgement.

[Operation](https://libtmux.org/en/raku/latest/reference/libtmux-batch-operation/) class 5 members

One immutable command and an explicit completion contract.

[Report](https://libtmux.org/en/raku/latest/reference/libtmux-batch-report/) class 10 members

Captured per-operation results. No runtime, control owner or caller task is retained.

[CommandTemplate](https://libtmux.org/en/raku/latest/reference/libtmux-client-commandtemplate/) class 2 members

Explicit tmux command-template syntax, including percent substitutions.

[Command](https://libtmux.org/en/raku/latest/reference/libtmux-command/) module In LibTmux 1 member

[Invocation](https://libtmux.org/en/raku/latest/reference/libtmux-command-invocation/) class 3 members

One copied tmux command with distinct argv and command-language encodings.

[Transport](https://libtmux.org/en/raku/latest/reference/libtmux-transport/) module 2 members

[Cancellation](https://libtmux.org/en/raku/latest/reference/libtmux-transport-cancellation/) class 4 members

One-shot cancellation shared by explicitly selected operations.

[Outcome](https://libtmux.org/en/raku/latest/reference/libtmux-types-outcome/) enum 5 members

What the caller knows about an operation's effects.

Control mode 6 types

[Control](https://libtmux.org/en/raku/latest/reference/libtmux-control/) module 7 members

[Connection](https://libtmux.org/en/raku/latest/reference/libtmux-control-connection/) class 34 members

[Decoder](https://libtmux.org/en/raku/latest/reference/libtmux-control-decoder/) class 7 members

Incremental LF framing with exact response guards and bounded retained data.

[PaneOutput](https://libtmux.org/en/raku/latest/reference/libtmux-control-paneoutput/) class 4 members

Pane output is terminal bytes, not an independently decodable UTF-8 string.

[Response](https://libtmux.org/en/raku/latest/reference/libtmux-control-response/) class 6 members

A matched command guard pair acknowledges execution, not asynchronous effects.

[UnframedOutput](https://libtmux.org/en/raku/latest/reference/libtmux-control-unframedoutput/) class 1 member

Some queued jobs print after their end guard; preserve that unframed line.

Formats 4 types

[Format](https://libtmux.org/en/raku/latest/reference/libtmux-format/) module 3 members

[DecodedRow](https://libtmux.org/en/raku/latest/reference/libtmux-format-decodedrow/) class 9 members

Exact captured field bytes and scalar values. Text conversion is explicit.

[FrameDecoder](https://libtmux.org/en/raku/latest/reference/libtmux-format-framedecoder/) class 8 members

Incremental LF framing over bytes with terminal failure and explicit limits.

[Projection](https://libtmux.org/en/raku/latest/reference/libtmux-format-projection/) class 11 members

Ordered registered fields with an explicit acquisition context and codec.

Queries 7 types

[Query](https://libtmux.org/en/raku/latest/reference/libtmux-query/) module 3 members

[Filter](https://libtmux.org/en/raku/latest/reference/libtmux-query-filter/) class 11 members

A schema-validated local matcher with copied, immutable criteria and AST.

[Limits](https://libtmux.org/en/raku/latest/reference/libtmux-query-limits/) class 4 members

Immutable resource limits applied before recursive validation or JSON parsing.

[Plan](https://libtmux.org/en/raku/latest/reference/libtmux-query-plan/) module In LibTmux::Query 1 member

[Plan](https://libtmux.org/en/raku/latest/reference/libtmux-query-plan-plan/) class In LibTmux::Query::Plan 18 members

Pure, inspectable source restrictions plus the original local filter.

[Selection](https://libtmux.org/en/raku/latest/reference/libtmux-selection/) module In LibTmux 1 member

[Selection](https://libtmux.org/en/raku/latest/reference/libtmux-selection-selection/) trait In LibTmux::Selection 23 members

Eager captured membership; transformations perform no acquisition or commands.

Queries — Expressions 1 type

[LayoutNode](https://libtmux.org/en/raku/latest/reference/libtmux-layout-layoutnode/) class 15 members

An immutable observed layout cell; floating leaves need not tile their parent.

Snapshots 3 types

[Snapshot](https://libtmux.org/en/raku/latest/reference/libtmux-model-snapshot/) class 17 members

Captured records and indexed relations; it retains no transport or live owner.

[View](https://libtmux.org/en/raku/latest/reference/libtmux-model-view/) class 12 members

A local view of one captured record. Accessors and relations never perform I/O.

[ValueState](https://libtmux.org/en/raku/latest/reference/libtmux-types-valuestate/) enum 5 members

Availability states preserve absence without conflating false, zero or empty text.

Errors 10 types

[Exceptions](https://libtmux.org/en/raku/latest/reference/libtmux-exceptions/) module 9 members

Typed acquisition, decoding, query, ownership and command failures.

[LibTmux](https://libtmux.org/en/raku/latest/reference/x-libtmux/) exception In X 1 member

Base for explicit library failures; operational failures are never absence.

[Cardinality](https://libtmux.org/en/raku/latest/reference/x-libtmux-cardinality/) exception 2 members

Exact or optional cardinality was violated.

[Command](https://libtmux.org/en/raku/latest/reference/x-libtmux-command/) exception In X::LibTmux 10 members

A child command failed; outcome states whether an effect may have occurred.

[Decode](https://libtmux.org/en/raku/latest/reference/x-libtmux-decode/) exception 4 members

Captured bytes violate the declared projection or field codec.

[InconsistentSnapshot](https://libtmux.org/en/raku/latest/reference/x-libtmux-inconsistentsnapshot/) exception 2 members

Contextual rows disagree about one physical entity in a capture interval.

[InvalidFilter](https://libtmux.org/en/raku/latest/reference/x-libtmux-invalidfilter/) exception 1 member

Criteria are invalid before any collection traversal occurs.

[MissingData](https://libtmux.org/en/raku/latest/reference/x-libtmux-missingdata/) exception 2 members

A requested local field or relation was not acquired in this observation.

[StaleReference](https://libtmux.org/en/raku/latest/reference/x-libtmux-stalereference/) exception

A target belongs to a daemon incarnation which is no longer current.

[Unsupported](https://libtmux.org/en/raku/latest/reference/x-libtmux-unsupported/) exception 3 members

A capability is unavailable or not established for the connected daemon.

Constants and enums 5 types

[OperationResult](https://libtmux.org/en/raku/latest/reference/libtmux-batch-operationresult/) class 14 members

One position's outcome, preserving its acknowledgement and original exception.

[Options](https://libtmux.org/en/raku/latest/reference/libtmux-configuration-options/) class 8 members

Typed native options. Reads and writes are explicit daemon operations.

[Event](https://libtmux.org/en/raku/latest/reference/libtmux-control-event/) class 3 members

One notification, retaining its original bytes without the record terminator.

[UnknownEvent](https://libtmux.org/en/raku/latest/reference/libtmux-control-unknownevent/) class 1 member

An unrecognized notification remains inspectable without interpreting its body.

[Result](https://libtmux.org/en/raku/latest/reference/libtmux-transport-result/) class 9 members

Captured child output. Complete means process completion, not application effects.

Other 5 types, 2 functions and constants

[LibTmux](https://libtmux.org/en/raku/latest/reference/libtmux/) module 18 members

[Configuration](https://libtmux.org/en/raku/latest/reference/libtmux-configuration/) module 9 members

[Engine](https://libtmux.org/en/raku/latest/reference/libtmux-engine/) module 3 members

[Model](https://libtmux.org/en/raku/latest/reference/libtmux-model/) module 21 members

[Types](https://libtmux.org/en/raku/latest/reference/libtmux-types/) module 8 members

[Count](https://libtmux.org/en/raku/latest/reference/libtmux-types-count/) type alias

A nonnegative count or dimension. Bool is deliberately not a number here.

[Positive](https://libtmux.org/en/raku/latest/reference/libtmux-types-positive/) type alias

A positive dimension or resource limit.
