Core LibraryunreleasedTopics

Choose documentation 1

latest

Current version

latest
English

Unreleased libtmux_erlang has not been released. Its API may change during development. This site's structure and URLs may change too.

Project policy

This port provides an Erlang core and a workspace consumer. An MCP package, server or SDK integration is excluded from implementation and release scope.

The architecture decision record explains the selected design, alternatives, consequences and conditions for reconsideration.

OTP application boundaries

Develop the applications together in the Rebar3 umbrella. Each application is an independent package boundary with its own metadata, license and changelog.

ApplicationResponsibilityLibrary dependencies
libtmux_erlangtmux transport, operations, domain objects, snapshots and queriesOTP applications
libtmux_erlang_workspaceJSON workspace loading, plans, apply and CLIPublic core API and OTP applications

The workspace application declares its core dependency in its application metadata. It uses public APIs through installed packages; source paths and private core modules are not integration boundaries. The core is independent of the workspace application. Additional core packages need their own reusable responsibility and explicit consumer dependencies.

Package qualification must install each consumer outside the umbrella against the produced core package. A successful umbrella build alone does not prove that an independently installed workspace package works. Qualification builds the workspace CLI from those source packages and runs it outside the checkout; see current support.

Runtime dependencies

Use the latest stable Erlang/OTP baseline and native OTP facilities. Use OTP JSON for documents and the standard argument parser for the workspace CLI. Prefer module functions, native records, specs, tagged results and supervised processes where ownership requires them.

Keep Erlang runtime dependencies within OTP. An exception requires a concrete capability need, maintenance assessment and recorded architecture decision. Test, build and documentation tools are separate from runtime dependencies.

Support covers tmux 3.3a–3.8, including intermediate releases, on Linux x86_64 and arm64. CI uses only the latest stable Erlang/OTP release and samples the oldest supported and newest stable tmux releases. Verify upstream releases before updating the exact pins. Historical results retain their recorded scope.

The Linux transport uses the bundled C11 executable for bounded I/O and owned process retirement. It is built from packaged source with recorded provenance. Workspace code uses that transport through the public core API.

The layout follows Rebar3 application organization and OTP application boundaries and dependencies.

Esc

Type to search.

Reference previewOpen reference