All commands accept --instance <name> (or -I <name>) to target a named instance. See instances.
hexe mux new [--name <name>] [--debug] [--logfile <path>] [--test-only]Start a new mux session. --test-only starts an isolated stack with a generated instance name.
hexe mux attach <name-or-uuid-prefix>Attach to an existing session.
hexe mux float [options]Spawn a one-off floating pane.
| Flag | Description |
|---|---|
--command <cmd> |
Command to run |
--title <text> |
Border title |
--cwd <path> |
Working directory |
--size WxH,X,Y |
Size (%) and position (%) |
--focus |
Focus the float immediately |
--isolation <profile> |
none / minimal / default / sandbox / full |
--key <key> |
Key sent to pane on dismiss |
--result-file <path> |
Write exit output here |
--pass-env |
Pass current environment |
--extra-env K=V |
Additional env vars |
hexe mux notify <message> [--uuid <pane>] [--broadcast] [--last]Send a notification to a pane or broadcast to all.
hexe mux send <text> [--uuid <pane>] [--name <name>] [--target <t>]Send keystrokes to a pane.
hexe mux focus left|right|up|down [--uuid <pane>]Move pane focus directionally (useful for editor integration).
hexe ses daemon [--debug] [--logfile <path>] [--foreground]Start the session daemon. Usually started automatically by hexe mux new.
hexe ses list [--details] [--json]List all sessions with their panes.
hexe ses statusShow daemon version and uptime.
hexe ses kill <uuid>Kill a detached session and its panes.
hexe ses clear [--force]Kill all detached sessions.
hexe ses export <uuid>Export session layout and pane state as JSON.
hexe ses statsShow resource usage for all sessions and pods.
hexe ses open <target>[:<tab>] [--debug] [--logfile <path>]Open a session from a .hexe.lua config. Target can be a directory, .lua file, or session name. See session_manager.
hexe ses freezeSnapshot current session as .hexe.lua to stdout.
hexe pod list [--where <path>] [--alive] [--json]List discoverable pods.
hexe pod new [--name <name>] [--shell <shell>] [--cwd <path>] [--alias]Create a standalone pod not attached to any session.
hexe pod attach [--uuid <u>] [--name <n>] [--socket <path>] [--detach <key>] [--record <file.cast>] [--capture-input]Raw TTY attach to a pod (like screen -r but for a single PTY).
hexe pod record [--uuid <u>] [--name <n>] [--socket <path>] --out <file.cast> [--capture-input]Observe a pod and write an asciicast recording without replacing the active VT attach client.
hexe pod send <text> [--uuid <u>] [--name <n>] [--enter] [--ctrl]Send text or keystrokes to a pod.
hexe pod kill <uuid-or-name> [--signal <sig>] [--force]Kill a pod.
hexe pod gc [--dry-run]Remove stale pod socket/metadata files left by crashed pods.
hexe shp init bash|zsh|fishPrint shell initialization code. Eval this in your shell RC file:
eval "$(hexe shp init bash)"hexe shp prompt [--status <n>] [--duration <ms>] [--jobs <n>] [--right] [--shell <sh>]Render the prompt for the given context. Called automatically by the shell integration.
hexe record start --scope pod|mux [--uuid <u>|--name <n>|--socket <path>] [--out <file.cast>] [--capture-input]Start background recording for the given scope/target.
For --scope pod, if no explicit target is provided, hexe tries to resolve the active pod (HEXE_PANE_UUID, then hexe mux info --last).
hexe record stop --scope pod|muxStop background recording for the given scope.
hexe record status --scope pod|mux [--json]Print 1 when active and 0 when inactive (or JSON with --json).
hexe record toggle --scope pod|mux [--uuid <u>|--name <n>|--socket <path>] [--out <file.cast>] [--capture-input]Toggle background recording for the given scope/target.
hexe multiplexer record --out <file.cast> [--capture-input]Record a mux attach stream directly into asciicast output.
hexe config validateParse and validate ~/.config/hexe/init.lua without starting anything.
hexe comPrint a tree of all running mux sessions, tabs, panes, and pods.
| Flag | Description |
|---|---|
-I / --instance <name> |
Target named instance |
--debug |
Enable debug logging |
--logfile <path> |
Write logs to file |