Core LibraryHome

Choose documentation 3

latest

Current version

latest
English

Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

Julia

Drive a real tmux from Julia.

LibTmux

You are reading the latest documentation. Use the version control in the header to move between releases, or the port dropdown to find a corresponding page in another language.

Install

Library LibTmux

using Pkg
Pkg.activate(".")
Pkg.add(PackageSpec(
    url="https://github.com/libtmux/libtmux-julia.git",
    rev="v0.1.0-alpha.1",
))

Run in Julia with tmux on PATH. This alpha release is installed from Git; it is not registered in General.

Workspace Manager LibTmuxWorkspace

The workspace package is separate from the core library.

using Pkg
Pkg.activate(".")
repo = "https://github.com/libtmux/libtmux-julia.git"
tag = "v0.1.0-alpha.1"
Pkg.add([
    PackageSpec(url=repo, rev=tag),
    PackageSpec(url=repo, rev=tag, subdir="packages/LibTmuxWorkspace"),
])

Run in Julia. The core and workspace packages must use the same source release; neither is registered in General.

MCP LibTmuxMCP

Choose your client and configuration scope, then run the command or paste the configuration.

With Julia Pkg (Git) installed:

$ claude mcp add tmux -- /absolute/path/to/project/bin/libtmux-mcp --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ~/.claude.json (this project)

With Julia Pkg (Git) installed:

$ claude mcp add tmux --scope user -- /absolute/path/to/project/bin/libtmux-mcp --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ~/.claude.json (all projects)

With Julia Pkg (Git) installed:

$ claude mcp add tmux --scope project -- /absolute/path/to/project/bin/libtmux-mcp --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: .mcp.json (in repo, version-controlled)

With Julia Pkg (Git) installed:

{
    "mcpServers": {
        "tmux": {
            "command": "/absolute/path/to/project/bin/libtmux-mcp",
            "args": ["--socket", "/absolute/path/to/tmux.sock"]
        }
    }
}

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: claude_desktop_config.json

With Julia Pkg (Git) installed:

$ codex mcp add tmux -- /absolute/path/to/project/bin/libtmux-mcp --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ~/.codex/config.toml

With Julia Pkg (Git) installed:

Codex's CLI doesn't support project scope yet — paste this into .codex/config.toml at the repo root.

[mcp_servers.tmux]
command = "/absolute/path/to/project/bin/libtmux-mcp"
args = ["--socket", "/absolute/path/to/tmux.sock"]

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: .codex/config.toml (in repo)

With Julia Pkg (Git) installed:

$ gemini mcp add --scope user tmux /absolute/path/to/project/bin/libtmux-mcp -- --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ~/.gemini/settings.json

With Julia Pkg (Git) installed:

$ gemini mcp add --scope project tmux /absolute/path/to/project/bin/libtmux-mcp -- --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: .gemini/settings.json (in repo)

With Julia Pkg (Git) installed:

{
    "mcpServers": {
        "tmux": {
            "command": "/absolute/path/to/project/bin/libtmux-mcp",
            "args": ["--socket", "/absolute/path/to/tmux.sock"]
        }
    }
}

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: .cursor/mcp.json (in repo)

With Julia Pkg (Git) installed:

{
    "mcpServers": {
        "tmux": {
            "command": "/absolute/path/to/project/bin/libtmux-mcp",
            "args": ["--socket", "/absolute/path/to/tmux.sock"]
        }
    }
}

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ~/.cursor/mcp.json

With Julia Pkg (Git) installed:

$ grok mcp add --scope user tmux -- /absolute/path/to/project/bin/libtmux-mcp --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ~/.grok/config.toml

With Julia Pkg (Git) installed:

$ grok mcp add --scope project tmux -- /absolute/path/to/project/bin/libtmux-mcp --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ./.grok/config.toml (in repo)

With Julia Pkg (Git) installed:

{
    "mcpServers": {
        "tmux": {
            "command": "/absolute/path/to/project/bin/libtmux-mcp",
            "args": ["--socket", "/absolute/path/to/tmux.sock"]
        }
    }
}

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ~/.gemini/config/mcp_config.json

With Julia Pkg (Git) installed:

$ opencode mcp add tmux -- /absolute/path/to/project/bin/libtmux-mcp --socket /absolute/path/to/tmux.sock

Run the setup in a consumer project directory. Replace the launcher and socket paths with absolute paths on your machine. The server borrows an existing tmux daemon. Configure tool permissions as described in the MCP server guide.

Config file: ~/.config/opencode/opencode.jsonc

Packages and integrations

API references

All Julia versions and install instructions

Esc

Type to search.

Reference preview Open reference