# LibTmux::Entity

- **Module:** LibTmux
- **Package:** LibTmux
- **Language:** Perl
- **Kind:** class
- **Source:** https://github.com/libtmux/libtmux-perl/blob/352715a4fa66a96eed7763b90daaa536aa2f121d/packages/core/lib/LibTmux/Entity.pm#L1
- **Page:** https://libtmux.org/en/perl/latest/reference/libtmux-entity/

```
package LibTmux::Entity;
```

Read-only handle retaining a captured graph


## DESCRIPTION

Field readers and relationships resolve locally in the retained graph. [`"to_record"`](/en/perl/latest/reference/libtmux-entity-to_record/) returns detached scalar record data. Handles retain no transport.


## EXECUTION

All methods in this module operate on local captured data and perform no tmux I/O. Ordering is deterministic; public query methods do not mutate membership. Typed validation/evaluation errors propagate. See [`"snapshot" in LibTmux::Server`](/en/perl/latest/reference/libtmux-server-snapshot/) for explicit acquisition and [`LibTmux::X`](/en/perl/latest/reference/libtmux-x/) for machine-readable failures.



## Members

### Other members

- [`generation`](/en/perl/latest/reference/libtmux-entity-generation/) (method): Return the captured generation. Restarted daemons cannot silently reuse this handle.
- [`identity`](/en/perl/latest/reference/libtmux-entity-identity/) (method): Return an opaque identity key scoped by server, generation, kind, and string ID. It is suitable for local equality; duplicate selection occurrences remain separate occurrences.
- [`kind`](/en/perl/latest/reference/libtmux-entity-kind/) (method): Return the schema entity-kind string. Concrete public field readers belong to [`LibTmux::Pane`](/en/perl/latest/reference/libtmux-pane/), [`LibTmux::Window`](/en/perl/latest/reference/libtmux-window/), [`LibTmux::WindowLink`](/en/perl/latest/reference/libtmux-windowlink/), [`LibTmux::Session`](/en/perl/latest/reference/libtmux-session/), and [`LibTmux::Client`](/en/perl/latest/reference/libtmux-client/).
- [`server_id`](/en/perl/latest/reference/libtmux-entity-server_id/) (method): Return the captured server scope. No daemon discovery or refresh occurs.
- [`to_record`](/en/perl/latest/reference/libtmux-entity-to_record/) (method): Return a fresh hash reference of captured scalar fields and adjacency IDs. Editing it does not change the retained graph. Retaining the entity retains its captured graph, with no transport ownership or reference cycle.
