# LibTmux::Capabilities

- **Package:** LibTmux
- **Language:** Raku
- **Kind:** class
- **Source:** https://github.com/libtmux/libtmux-raku/blob/e76160bcce6e03976d49424da15b7c31afb2c68e/lib/LibTmux/Capabilities.rakumod#L4
- **Page:** https://libtmux.org/en/raku/latest/reference/libtmux-capabilities/

# Capability observations
Construction consumes explicit observations and packaged catalogue data. It
never launches tmux. Replacing a daemon or negotiating connection flags needs
a new capability object. The engine binds these observations to actual
daemon identity; this class does not establish that identity by itself.

` supports ` and ` require ` describe native features. A fallback identifies an
alternative which the caller must choose explicitly. ` workaround ` describes
required handling; it never claims the repair was performed. Field support
does not mean the field was acquired or is available in every context.

## Members

### Common operations

- [`status`](/en/raku/latest/reference/libtmux-capabilities-status/) (method): Inspect one feature without I/O. Unknown names remain explicitly unknown.
- [`require`](/en/raku/latest/reference/libtmux-capabilities-require/) (method): Require native support or throw a typed, reason-bearing refusal.

### Other members

- [`client-version`](/en/raku/latest/reference/libtmux-capabilities-client-version/) (property): Independently observed executable version, retained for diagnostics.
- [`clone`](/en/raku/latest/reference/libtmux-capabilities-clone/) (method): Reconstruct copies so changed observations cannot retain stale parsed evidence.
- [`codec-profile`](/en/raku/latest/reference/libtmux-capabilities-codec-profile/) (method): Codec identifier selected through catalogue policy: qa or t6.
- [`daemon-version`](/en/raku/latest/reference/libtmux-capabilities-daemon-version/) (property): Version observed from the daemon; client version does not establish support.
- [`Decision`](/en/raku/latest/reference/libtmux-capabilities-decision/) (class): Evidence and required handling; a repair policy never means repair ran.
- [`features`](/en/raku/latest/reference/libtmux-capabilities-features/) (method): All discoverable feature decisions for this immutable observation.
- [`field-status`](/en/raku/latest/reference/libtmux-capabilities-field-status/) (method): Availability of a registered field, independent of acquisition completeness.
- [`incarnation`](/en/raku/latest/reference/libtmux-capabilities-incarnation/) (property): Opaque immutable identity supplied by the engine's explicit identity probe.
- [`layout-profile`](/en/raku/latest/reference/libtmux-capabilities-layout-profile/) (method): Default captured-layout dialect. Control negotiation remains explicit.
- [`negotiated-features`](/en/raku/latest/reference/libtmux-capabilities-negotiated-features/) (property): Flags already negotiated by an explicitly owned connection.
- [`output-repair`](/en/raku/latest/reference/libtmux-capabilities-output-repair/) (method): Required legacy decoding stage: vis or none. No repair has run here.
- [`parsed-client-version`](/en/raku/latest/reference/libtmux-capabilities-parsed-client-version/) (method): Parsed executable release retained for diagnostics, not daemon feature decisions.
- [`parsed-daemon-version`](/en/raku/latest/reference/libtmux-capabilities-parsed-daemon-version/) (method): Parsed daemon release; syntactic stability does not establish a support profile.
- [`require-field`](/en/raku/latest/reference/libtmux-capabilities-require-field/) (method): Return the supported field specification or throw Unsupported with its reason.
- [`source`](/en/raku/latest/reference/libtmux-capabilities-source/) (property): How the caller acquired the daemon observation.
- [`supports`](/en/raku/latest/reference/libtmux-capabilities-supports/) (method): Native support only; an available fallback does not make the feature native.
- [`supports-field`](/en/raku/latest/reference/libtmux-capabilities-supports-field/) (method): Whether the observed daemon supports the registered field; unknown means False.
- [`workaround`](/en/raku/latest/reference/libtmux-capabilities-workaround/) (method): Inspect an upstream defect. applies means handling is needed, not completed.
- [`workarounds`](/en/raku/latest/reference/libtmux-capabilities-workarounds/) (method): All declared defects, including those which do not apply to this release.
