mpmux by Mighty Painting
~/mpmux/docs ❯ less reference/cli-help/contents ↓

Command-line help#

Generated by scripts/gen-cli-help-reference.sh; do not edit by hand. The mpmux-cli reference explains the commands with examples.

mpmux#

Usage:
  mpmux [--config <path>] [--pie-menus <path>] [--write-default-config <path>] [--write-default-pie-menus <path>] [--cwd <dir>] [--command <program> [args...]]
  mpmux [--config <path>] [--write-default-config <path>] [--cwd <dir>] -- <program> [args...]
  mpmux --help
  mpmux --version

Options:
  --config <path>                 Load mpmux runtime config from a TOML file
  --pie-menus <path>              Load static pie menu definitions from a JSON file
  --write-default-config <path>  Write a default mpmux TOML config file and exit
  --write-default-pie-menus <path> Write default static pie menu JSON and exit
  --cwd <dir>                    Launch the shell or child command in the given directory
  --command <program> [args...]  Run the given program inside mpmux instead of the default shell
  --container [name]             Start/connect to a Podman mpmux-sessiond container and reuse/create a same-named session
  --container-lan                Bind the container on 0.0.0.0 with sessiond auth enabled for trusted LAN pairing
  --container-iroh               Enable relay-only Iroh exposure for the container backend
  --container-iroh-relay-url <url> Override the Iroh relay URL (default relay.mightypainting.dev)
  --container-iroh-key <path>    Override the host-stored sessiond Iroh key path
  --container-bind <address>     Override the container host bind address (default 127.0.0.1)
  --sessiond-endpoint <host:port> Connect to an existing sessiond TCP endpoint
  --sessiond-tcp <host:port>      Alias for --sessiond-endpoint
  --sessiond-socket <path>        Connect to an existing local sessiond Unix socket
  --sessiond-iroh <target>        Connect to an existing sessiond Iroh endpoint/invite
  --session <id>                  Attach a specific hosted session
  --create-session                Create and attach a new hosted session
  --session-label <label>         Label for --create-session
  --session-client-name <name>    Client name shown in sessiond attachment state
  --sessiond-device-id <id>       Paired device id for auth-enabled sessiond
  --sessiond-device-token-file <path> File containing the paired device token
  --sessiond-admin-token-file <path> Admin token file for management/pairing flows
  --help                         Show this help text

Default config lookup:
  $XDG_CONFIG_HOME/mpmux/config.toml
  ~/.config/mpmux/config.toml

Config example (the defaults; --write-default-config writes them):
  [terminal]
  scrollback-lines = 100000
  inline-image-display-scale = 1.0
  inline-image-preview-enabled = true

  [host-ui]
  verbose-level = 0
  enable-host-shortcuts = true
  show-tab-bar = true
  mouse-scroll-multiplier-precision = 3.0
  mouse-scroll-multiplier-discrete = 3.0
  mouse-scroll-invert = false
  max-pane-nesting-level = 4
  pane-maximize-animation-secs = 0.5
  dialog-scale = 1.0
  dialog-vertical-margin-fraction = 0.08
  toast-font-size = 16.0
  toast-placement = "center"
  show-active-pane-border = true
  active-pane-border-color = "#9edfff33"
  active-pane-border-width = 1.0
  active-pane-tint-color = "#00000000"
  inactive-pane-dim-color = "#08111d"
  inactive-pane-dim-opacity = 0.3
  status-message-duration-secs = 5.0
  message-history-limit = 32
  message-sidebar-default-open = false
  show-status-bar-messages = true
  always-show-status-bar = false
  scroll-map = false
  mpmux-keyboard-height-portrait-ratio = 0.33
  mpmux-keyboard-height-landscape-ratio = 0.33
  dock-position = "right"

  [keybindings]
  command-palette = "ctrl-shift-p"
  toggle-message-sidebar = "ctrl-shift-f12"
  new-tab = "ctrl-shift-t"
  toggle-pane-maximize = "ctrl-shift-return"
  split-pane-right = "ctrl-shift-o"
  split-pane-down = "ctrl-shift-e"
  focus-split-left = "ctrl-alt-left"
  focus-split-right = "ctrl-alt-right"
  focus-split-up = "ctrl-alt-up"
  focus-split-down = "ctrl-alt-down"
  toggle-overview = "ctrl-alt-o"
  jump-to-previous-prompt = "ctrl-shift-pageup"
  jump-to-next-prompt = "ctrl-shift-pagedown"

  [overview]
  max-zoom = 12.0
  layout-mode = "auto"

  [voice]
  engine = "auto"
  language = "auto"
  keywords = [
      "mpmux",
      "git",
      "cargo",
      "clippy",
      "rustfmt",
      "tmux",
      "ssh",
      "sudo",
      "grep",
      "npm",
      "Claude",
      "Makepad",
  ]
  pane-keywords = true
  save-recordings = false
  final-pass = "auto"

Examples:
  mpmux --write-default-config ~/.config/mpmux/config.toml
  mpmux --config ~/.config/mpmux/config.toml
  mpmux --cwd ~/src
  mpmux --command cat
  mpmux --command python3 -q
  mpmux -- yazi

Environment-based startup smoke/debug toggles:
  MPMUX_TERMINAL_PI_IMAGE_DELAYED_SMOKE=1  Startup-only late pi-style image repro
  MPMUX_TERMINAL_PI_IMAGE_INTERLEAVE_SMOKE=1  Startup-only richer pi text/image interleave repro
  MPMUX_TERMINAL_PI_IMAGE_MULTI_INTERLEAVE_SMOKE=1  Startup-only multi-image late-placement interleave repro
  MPMUX_TERMINAL_PI_IMAGE_SMOKE=1     Startup-only exact pi-tui renderImage() Kitty path
  MPMUX_TERMINAL_KITTY_SMOKE=1        Startup-only Kitty graphics smoke reference card
  MPMUX_TERMINAL_INPUT_PLAYBACK=<name>  Legacy startup playback hook (prefer `mpmux-cli run-playback <name>`)

mpmux-sessiond#

mpmux-sessiond [--version] [--socket PATH|--tcp HOST:PORT] [--tcp-allow-non-loopback] [--auth-store PATH] [--admin-token-file PATH] [--iroh-listen] [--iroh-relay-url URL] [--iroh-key PATH] [--iroh-allow-direct] [--json] [serve|ping|status|metadata|list-sessions|create-session|attach-session|detach-session|delete-session|snapshot-session|send-session-text|resize-session] [session-id]

Default command: serve

Examples:
  mpmux-sessiond serve
  mpmux-sessiond --tcp 127.0.0.1:4075 serve
  mpmux-sessiond --tcp 0.0.0.0:4075 --tcp-allow-non-loopback serve
  mpmux-sessiond --auth-store /tmp/mpmux-auth.json --iroh-listen --iroh-key /tmp/mpmux-sessiond.key serve
  mpmux-sessiond ping
  mpmux-sessiond status --json
  mpmux-sessiond list-sessions
  mpmux-sessiond create-session --label 'dev shell'
  mpmux-sessiond rename-session session-1 'build logs'
  mpmux-sessiond attach-session session-1 --client-name desktop
  mpmux-sessiond detach-session session-1
  mpmux-sessiond delete-session session-1
  mpmux-sessiond snapshot-session session-1 --json
  mpmux-sessiond send-session-text session-1 --text 'printf hello\n'
  mpmux-sessiond resize-session session-1 120 40 --cell-width-px 12 --cell-height-px 22

mpmux-cli#

Command-line interface for the mpmux host-control socket

Usage: mpmux-cli [OPTIONS] <COMMAND>

Commands:
  version                            Show the versions of mpmux-cli, the installed mpmux and mpmux-sessiond, and the running app and session host
  run-monitor                        Show an agent's run in mpmux: plan, progress, approvals (see `run-monitor --help`)
  media                              Show images, tables and documents in mpmux's Viewer (see `media --help`)
  agents                             The agent integrations that come with mpmux: install them into Claude Code and Pi
  todos-sidebar                      Show this project's todos in the mpmux sidebar (needs Node 22.18 or newer)
  session                            Talk to the detachable-session headless host control plane
  pair                               Create easy one-time pairing offers with safe defaults
  service                            Run the session host as a user service (systemd on Linux, launchd on macOS)
  tui                                Open the optional terminal session manager TUI
  status                             Show current runtime status
  metadata                           Show stable host-control metadata
  env                                Print shell exports for the selected host-control endpoint
  attach                             Register an explicit host-control client identity
  detach                             Detach an explicit host-control client identity
  acquire-control                    Acquire the active controller lease for an attached controller client
  release-control                    Release the active controller lease held by the current controller client
  heartbeat                          Refresh attached-client liveness and keep a controller lease from expiring
  subscribe                          Subscribe an attached client to host-control events
  unsubscribe                        Remove host-control event subscriptions from an attached client
  poll-events                        Drain queued subscribed host-control events for an attached client
  wait-for-events                    Block until at least one subscribed host-control event is available for an attached client
  transfer-control                   Transfer the active controller lease to another attached controller client
  show-control-state                 Show attached host-control clients and current control-owner placeholder state
  has-session                        Return success only when the running app has an active session
  show-ui-state                      Show structured command palette / picker / dialog overlay state
  show-hot-reload-bridge             Show Makepad `--hot` bridge state for the generated UI script mirror
  sync-hot-reload-bridge             Regenerate the watched UI script mirror used by Makepad `--hot`
  reload-config                      Reload mpmux runtime config from the original config lookup path
  set-verbose-level                  Set the current runtime verbose level without restarting
  list-buffers                       List app-owned host buffers known to the running app
  list-clients                       List clients known to the running app
  list-panes                         List panes known to the running app
  new-tab                            Create a new tab in the running app; `-- PROGRAM ARGS…` runs a program in it instead of the shell
  split-pane                         Split the current window into a second pane; `-- PROGRAM ARGS…` runs a program in it instead of the shell (`-- nvim notes.md`) [alias: split-window]
  select-tab                         Select the active tab by tab id
  select-pane                        Select the active pane by pane id
  resize-pane                        Resize a pane toward one edge by a number of cells
  kill-pane                          Close a pane by pane id, or the active pane when omitted
  list-windows                       List windows known to the running app
  list-sessions                      List sessions known to the running app
  clear-history                      Clear pane history/scrollback in the running app
  reset-terminal                     Reset a pane's terminal like Ghostty's Reset (--clear: Clear Screen)
  show-options                       Show current app/global options
  show-window-options                Show current window-oriented options
  show-hooks                         Show configured hooks
  show-prompt-history                Show prompt history
  show-buffer                        Show the current app-owned host buffer contents
  set-buffer                         Replace the current app-owned host buffer contents
  copy-to-clipboard                  Copy text to the app/system clipboard and app-owned host buffer
  delete-buffer                      Clear the current app-owned host buffer contents
  show-environment                   Show an allowlisted environment snapshot from the running app
  load-buffer                        Load the app-owned host buffer from a file
  save-buffer                        Save the current app-owned host buffer to a file
  paste-buffer                       Paste the current app-owned host buffer into the terminal
  send-keys                          Send tmux-style key/text items through the host app
  show-messages                      Show retained host/app message history
  display-message                    Show a host/app message in mpmux UI surfaces
  display-dialog                     Show a centered modal dialog in mpmux UI surfaces
  set-custom-dialog-field            Update one active custom dialog field through the typed host-control surface
  invoke-custom-dialog-action        Invoke one active custom dialog footer action through the typed host-control surface
  open-command-palette               Open the command palette through the typed host-control surface
  set-command-palette-query          Set the command palette query text through the typed host-control surface
  move-command-palette-selection     Move the command palette selection by a row delta
  confirm-command-palette-selection  Confirm the current command palette selection
  dismiss-command-palette            Dismiss the active command palette overlay
  open-pie-menu                      Open the overlay pie menu through host control
  pie-menu                           Discover and control pie menus through host control
  extension                          Discover and control runtime extension overlays through host control
  activate-pie-menu-direction        Activate a pie menu direction by name, clock hour (1.5h), or degrees (45)
  move-picker-selection              Move the active picker selection by a row delta
  confirm-picker-selection           Confirm the current picker selection
  dismiss-overlay                    Dismiss a typed overlay
  dismiss-dialog                     Dismiss the active mpmux dialog overlay
  toggle-message-sidebar             Toggle the host message sidebar in mpmux UI
  set-message-sidebar-width          Set the host message sidebar width in pixels through the splitter path
  set-message-sidebar-position       Move the dock (message and custom sidebars) to a window edge; saved
  set-custom-sidebar-filter          Set a custom sidebar's filter query (the one with the keys, or --sidebar-id)
  move-custom-sidebar-selection      Move a custom sidebar's selection by a row delta
  invoke-custom-sidebar-selection    Invoke a custom sidebar's selection
  invoke-custom-sidebar-action       Press a button of a custom sidebar's actions section, by its id
  clear-custom-sidebar               Remove a custom sidebar [default: the one in the dock's main half]
  set-dock-split                     Split the dock to show custom sidebar ID below what it shows; without an ID, join the halves again
  set-app-time-override              Override the app clock with an explicit virtual time in microseconds
  clear-app-time-override            Clear the explicit app clock override and return to wall-clock time
  load-terminal-replay-session       Load an indexed terminal JSONL replay session onto a pane for offline frame stepping
  apply-terminal-replay-frame        Apply one loaded terminal replay frame to a pane and update app virtual time
  clear-terminal-replay-session      Clear the loaded terminal replay session from a pane
  start-terminal-segment-recording   Begin recording the next terminal-output segment until an explicit checkpoint is reached
  finish-terminal-segment-recording  Finish the active terminal-output segment recording and return the captured payload
  capture-pane                       Capture visible pane text from the current terminal viewport
  capture-ui                         Capture composited host or pane UI as an image or video artifact
  focus-terminal                     Focus the terminal overlay
  send-text                          Send terminal text through the host app
  send-key                           Send a logical key through the host app
  run-playback                       Run a playback scenario inside mpmux
  window-action                      Run a supported window action
  scroll-viewport                    Scroll the terminal viewport by a terminal delta
  select-cells                       Apply a visible cell selection
  cleanup-processes                  Clean up tracked PTY processes from abandoned earlier runs
  help                               Print this message or the help of the given subcommand(s)

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help
  -V, --version                       Print version

mpmux-cli version#

Show the versions of mpmux-cli, the installed mpmux and mpmux-sessiond, and the running app and session host

Usage: mpmux-cli version [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor#

Show an agent's run in mpmux: plan, progress, approvals (see `run-monitor --help`)

Usage: mpmux-cli run-monitor [OPTIONS] <COMMAND>

Commands:
  start   Start a run: show the sidebar with its title (replaces an older run)
  plan    Set the plan: one step per argument (keeps the status of steps that stay)
  step    Set a step's status, by number (1 is the first) or title
  note    Say what is happening now (the summary's "Now" line)
  ask     Ask the person to approve something and wait for the answer
  check   Report the result of the sidebar's buttons since the last check
  finish  Finish the run (the sidebar stays until cleared or a new run)
  clear   Remove the sidebar and forget the run
  status  Print the run as JSON
  hook    Act as a Claude Code hook: read the hook's JSON from stdin
  help    Print this message or the help of the given subcommand(s)

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor start#

Start a run: show the sidebar with its title (replaces an older run)

Usage: mpmux-cli run-monitor start [OPTIONS] <TITLE>

Arguments:
  <TITLE>  What the run is for, e.g. the task

Options:
      --agent <AGENT>                 Who runs it, shown in the sidebar's header [default: Agent]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --no-watch                      Do not start the background watcher for the sidebar's buttons
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor plan#

Set the plan: one step per argument (keeps the status of steps that stay)

Usage: mpmux-cli run-monitor plan [OPTIONS] <STEPS>...

Arguments:
  <STEPS>...  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor step#

Set a step's status, by number (1 is the first) or title

Usage: mpmux-cli run-monitor step [OPTIONS] <STEP> <STATUS>

Arguments:
  <STEP>    
  <STATUS>  [possible values: pending, running, waiting, done, failed, skipped]

Options:
      --detail <DETAIL>               A second line, e.g. the command the step runs
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --progress <PROGRESS>           0..=100 for a progress bar under the step
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor note#

Say what is happening now (the summary's "Now" line)

Usage: mpmux-cli run-monitor note [OPTIONS] <TEXT>

Arguments:
  <TEXT>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor ask#

Ask the person to approve something and wait for the answer

Usage: mpmux-cli run-monitor ask [OPTIONS] <TITLE>

Arguments:
  <TITLE>  The question, e.g. "Push to origin?"

Options:
      --detail <DETAIL>                Lines that show what would happen (a command in `backticks`)
      --socket <SOCKET>                Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>   TCP endpoint for the mpmux host-control bridge, as host:port
      --warning <WARNING>              A warning above the details
      --approve-label <APPROVE_LABEL>  [default: Approve]
      --client-id <CLIENT_ID>          Optional stable host-control client id attached to requests
      --deny-label <DENY_LABEL>        [default: Deny]
      --json                           Output full response JSON
      --timeout <TIMEOUT>              Give up after this many seconds (counts as dismissed)
  -h, --help                           Print help

mpmux-cli run-monitor check#

Report the result of the sidebar's buttons since the last check

Usage: mpmux-cli run-monitor check [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor finish#

Finish the run (the sidebar stays until cleared or a new run)

Usage: mpmux-cli run-monitor finish [OPTIONS] [SUMMARY]

Arguments:
  [SUMMARY]  One line about the result

Options:
      --failed                        
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor clear#

Remove the sidebar and forget the run

Usage: mpmux-cli run-monitor clear [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor status#

Print the run as JSON

Usage: mpmux-cli run-monitor status [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli run-monitor hook#

Act as a Claude Code hook: read the hook's JSON from stdin

Usage: mpmux-cli run-monitor hook [OPTIONS]

Options:
      --approve <APPROVE>             Also ask before a Bash command containing this text (repeatable)
      --socket <SOCKET>               Path to the mpmux host-control socket
      --approve-all-bash              Ask before every Bash command
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --agent <AGENT>                 The agent's name in the sidebar (the Pi extension passes Pi) [default: Claude]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --agent-reports-plan            The agent has no task list the hooks can read and reports its plan with `run-monitor plan`/`step` (Pi)
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli media#

Show images, tables and documents in mpmux's Viewer (see `media --help`)

Usage: mpmux-cli media [OPTIONS] <COMMAND>

Commands:
  show     Show a file in the Viewer (`-` reads standard input; a folder is a page: its index.html with the folder's other files; a Markdown or HTML file brings the files it links to; an http(s):// address is a web link, the page itself)
  demo     Show sample objects: a chart, a table, a document and an interactive page (written to DIR, default a temporary folder)
  list     List the Viewer's objects
  console  Print what a page in the Viewer wrote to its console (console.log, errors), oldest first: object ID, or the one shown. The page runs only while the Viewer shows it, so this shows it (the desktop web engine or the Android WebView)
  close    Remove an object from the Viewer (the one it shows without an id)
  clear    Remove every object from the Viewer
  help     Print this message or the help of the given subcommand(s)

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli media show#

Show a file in the Viewer (`-` reads standard input; a folder is a page: its index.html with the folder's other files; a Markdown or HTML file brings the files it links to; an http(s):// address is a web link, the page itself)

Usage: mpmux-cli media show [OPTIONS] <PATH>

Arguments:
  <PATH>  

Options:
      --socket <SOCKET>
          Path to the mpmux host-control socket
      --title <TITLE>
          The title in the Viewer (default: the file name)
      --host-control-tcp <HOST:PORT>
          TCP endpoint for the mpmux host-control bridge, as host:port
      --type <MEDIA_TYPE>
          The media type, e.g. image/png, text/markdown, text/csv (default: from the file extension)
      --client-id <CLIENT_ID>
          Optional stable host-control client id attached to requests
      --id <ID>
          The object's id, for links and updates (default: from the file name)
      --background
          Add the object without opening the Viewer on it
      --json
          Output full response JSON
      --no-link
          Do not print the media link
      --thumbnail <THUMBNAIL>
          Draw a PNG as a thumbnail above the link: in an mpmux terminal (auto), always, or never [default: auto] [possible values: auto, always, never]
      --thumbnail-rows <THUMBNAIL_ROWS>
          The thumbnail's height in terminal rows [default: 8]
  -h, --help
          Print help

mpmux-cli media demo#

Show sample objects: a chart, a table, a document and an interactive page (written to DIR, default a temporary folder)

Usage: mpmux-cli media demo [OPTIONS]

Options:
      --dir <DIR>                     
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli media list#

List the Viewer's objects

Usage: mpmux-cli media list [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli media console#

Print what a page in the Viewer wrote to its console (console.log, errors), oldest first: object ID, or the one shown. The page runs only while the Viewer shows it, so this shows it (the desktop web engine or the Android WebView)

Usage: mpmux-cli media console [OPTIONS] [ID]

Arguments:
  [ID]  

Options:
      --clear                         Empty the page's console after printing it
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --wait <SECONDS>                Wait up to this many seconds for the page to finish loading [default: 5]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --settle <SECONDS>              Then this many seconds more, for what the page's scripts log after it has loaded (fetches, timers, animation frames) [default: 1]
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli media close#

Remove an object from the Viewer (the one it shows without an id)

Usage: mpmux-cli media close [OPTIONS] [ID]

Arguments:
  [ID]  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli media clear#

Remove every object from the Viewer

Usage: mpmux-cli media clear [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli agents#

The agent integrations that come with mpmux: install them into Claude Code and Pi

Usage: mpmux-cli agents [OPTIONS] <COMMAND>

Commands:
  status     Show where the integrations are and what Claude Code and Pi have of them
  install    Register them with Claude Code and Pi (both, where installed)
  uninstall  Remove them from Claude Code and Pi
  help       Print this message or the help of the given subcommand(s)

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli agents status#

Show where the integrations are and what Claude Code and Pi have of them

Usage: mpmux-cli agents status [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli agents install#

Register them with Claude Code and Pi (both, where installed)

Usage: mpmux-cli agents install [OPTIONS] [HARNESS]

Arguments:
  [HARNESS]  Only this harness [possible values: claude, pi]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --with <WITH>                   Claude Code: also these plugins (the run monitor's hooks run on every tool call; prompt marks need the inline TUI) [possible values: run-monitor, prompt-marks]
      --dry-run                       Print the commands without running them
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli agents uninstall#

Remove them from Claude Code and Pi

Usage: mpmux-cli agents uninstall [OPTIONS] [HARNESS]

Arguments:
  [HARNESS]  [possible values: claude, pi]

Options:
      --dry-run                       
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli todos-sidebar#

Show this project's todos in the mpmux sidebar (needs Node 22.18 or newer)

Usage: mpmux-cli todos-sidebar [OPTIONS] [ARGS]...

Arguments:
  [ARGS]...  Passed to the sidebar: [filter | TODO-id] [--cwd DIR] [--pane PANE_ID] [--session-id ID] [--detach], or --clear [--cwd DIR]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session#

Talk to the detachable-session headless host control plane

Usage: mpmux-cli session [OPTIONS] <COMMAND>

Commands:
  status           Show current headless-host status
  metadata         Show stable headless-host metadata
  list             List local hosted sessions
  create           Create a new local hosted session record
  rename           Rename an existing hosted session
  attach           Mark a local session as interactively attached
  detach           Mark a local session as detached
  takeover         Atomically take over a hosted workspace
  takeover-status  Show workspace ownership, membership, and attachment state
  snapshot         Fetch the current terminal snapshot/state for a hosted session
  send-text        Send terminal text to a hosted session
  send-key         Send a logical key to a hosted session
  resize           Resize a hosted session terminal grid
  pair             Complete an Iroh pairing invite and optionally persist device credentials
  create-qr-code   Create a managed short-code pairing offer and render/save it as a QR code
  help             Print this message or the help of the given subcommand(s)

Options:
      --sessiond-socket <SESSIOND_SOCKET>
          Path to the mpmux-sessiond control socket
      --socket <SOCKET>
          Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>
          TCP endpoint for the mpmux host-control bridge, as host:port
      --sessiond-tcp <HOST:PORT>
          TCP endpoint for mpmux-sessiond, as host:port
      --client-id <CLIENT_ID>
          Optional stable host-control client id attached to requests
      --sessiond-iroh <TARGET>
          Iroh endpoint id, endpoint token, or pairing invite for mpmux-sessiond
      --json
          Output full response JSON
      --sessiond-iroh-file <PATH>
          File containing an Iroh endpoint id, endpoint token, endpoint JSON, or pairing invite
      --sessiond-iroh-key <PATH>
          Stable Iroh client key file. Defaults to ~/.config/mpmux/iroh/client.key when using Iroh
      --sessiond-admin-token-file <PATH>
          File containing an admin token for auth-enabled sessiond commands. Env fallback: MPMUX_SESSIOND_ADMIN_TOKEN_FILE or MPMUX_SESSIOND_ADMIN_TOKEN
      --sessiond-device-id <DEVICE_ID>
          Paired-device id for auth-enabled sessiond commands. Env fallback: MPMUX_SESSIOND_DEVICE_ID
      --sessiond-device-token-file <PATH>
          File containing a paired-device token for auth-enabled sessiond commands. Env fallback: MPMUX_SESSIOND_DEVICE_TOKEN_FILE or MPMUX_SESSIOND_DEVICE_TOKEN
  -h, --help
          Print help

mpmux-cli session status#

Show current headless-host status

Usage: mpmux-cli session status [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session metadata#

Show stable headless-host metadata

Usage: mpmux-cli session metadata [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session list#

List local hosted sessions

Usage: mpmux-cli session list [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session create#

Create a new local hosted session record

Usage: mpmux-cli session create [OPTIONS]

Options:
      --label <LABEL>                 
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session rename#

Rename an existing hosted session

Usage: mpmux-cli session rename [OPTIONS] <SESSION_ID> <LABEL>

Arguments:
  <SESSION_ID>  
  <LABEL>       

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session attach#

Mark a local session as interactively attached

Usage: mpmux-cli session attach [OPTIONS] <SESSION_ID>

Arguments:
  <SESSION_ID>  

Options:
      --client-name <CLIENT_NAME>     
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session detach#

Mark a local session as detached

Usage: mpmux-cli session detach [OPTIONS] <SESSION_ID>

Arguments:
  <SESSION_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session takeover#

Atomically take over a hosted workspace

Uses the ownership revisions reported by `session takeover-status`. Reusing an operation id with different contents is refused.

Usage: mpmux-cli session takeover [OPTIONS] <WORKSPACE_ID>

Arguments:
  <WORKSPACE_ID>


Options:
      --expected-ownership-revision <EXPECTED_OWNERSHIP_REVISION>
          [default: 0]

      --socket <SOCKET>
          Path to the mpmux host-control socket

      --expected-membership-revision <EXPECTED_MEMBERSHIP_REVISION>
          [default: 0]

      --host-control-tcp <HOST:PORT>
          TCP endpoint for the mpmux host-control bridge, as host:port

      --client-id <CLIENT_ID>
          Optional stable host-control client id attached to requests

      --device-id <DEVICE_ID>
          Take over as a paired device instead of the local Unix principal

      --json
          Output full response JSON

      --operation-id <OPERATION_ID>
          Opaque operation id; generated when omitted

  -h, --help
          Print help (see a summary with '-h')

mpmux-cli session takeover-status#

Show workspace ownership, membership, and attachment state

Usage: mpmux-cli session takeover-status [OPTIONS] <WORKSPACE_ID>

Arguments:
  <WORKSPACE_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session snapshot#

Fetch the current terminal snapshot/state for a hosted session

Usage: mpmux-cli session snapshot [OPTIONS] <SESSION_ID>

Arguments:
  <SESSION_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session send-text#

Send terminal text to a hosted session

Usage: mpmux-cli session send-text [OPTIONS] <SESSION_ID> <TEXT>

Arguments:
  <SESSION_ID>  
  <TEXT>        

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli session send-key#

Send a logical key to a hosted session

Usage: mpmux-cli session send-key [OPTIONS] <SESSION_ID> <KEY>

Arguments:
  <SESSION_ID>  
  <KEY>         Logical key name (for example: enter, escape, left, r, 1)

Options:
      --shift                         
      --socket <SOCKET>               Path to the mpmux host-control socket
      --ctrl                          
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --alt                           
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
      --logo                          
  -h, --help                          Print help

mpmux-cli session resize#

Resize a hosted session terminal grid

Usage: mpmux-cli session resize [OPTIONS] <SESSION_ID> <COLS> <ROWS>

Arguments:
  <SESSION_ID>  
  <COLS>        
  <ROWS>        

Options:
      --cell-width-px <CELL_WIDTH_PX>
          [default: 12]
      --socket <SOCKET>
          Path to the mpmux host-control socket
      --cell-height-px <CELL_HEIGHT_PX>
          [default: 22]
      --host-control-tcp <HOST:PORT>
          TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>
          Optional stable host-control client id attached to requests
      --json
          Output full response JSON
  -h, --help
          Print help

mpmux-cli session pair#

Complete an Iroh pairing invite and optionally persist device credentials

Usage: mpmux-cli session pair [OPTIONS]

Options:
      --device-label <DEVICE_LABEL>   Human-readable label for this client/device on the host [default: desktop]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --host-label <LABEL>            Human-readable label for the paired host in local TUI discovery
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --save-dir <DIR>                Directory that receives endpoint.target, device.id, device.token, and host.label. Defaults to ~/.config/mpmux/auth/<host-label-or-endpoint>-device
      --json                          Output full response JSON
      --no-save                       Complete pairing without saving credentials for future TUI reconnects
  -h, --help                          Print help

mpmux-cli session create-qr-code#

Create a managed short-code pairing offer and render/save it as a QR code

Usage: mpmux-cli session create-qr-code [OPTIONS] [DEVICE_LABEL]

Arguments:
  [DEVICE_LABEL]  Label for the device expected to consume the generated one-time pairing invite

Options:
      --device-label <DEVICE_LABEL>   Label for the device expected to consume the generated one-time pairing invite
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --ttl-seconds <TTL_SECONDS>     One-time offer lifetime in seconds [default: 300]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --relay <HOST:PORT|WS_URL>      Override the managed short-code relay address or WebSocket URL
      --json                          Output full response JSON
      --relay-iroh-target <TARGET>    Iroh endpoint target for an Iroh-native short-code rendezvous service
      --output <PATH>                 File that receives the generated QR PNG. Refuses to overwrite existing files
  -h, --help                          Print help

mpmux-cli pair#

Create easy one-time pairing offers with safe defaults

Usage: mpmux-cli pair [OPTIONS] <COMMAND>

Commands:
  url         Print a one-time pairing URL and copy it to the clipboard when possible
  qr-code     Render a QR code containing the one-time pairing URL
  short-code  Print a managed short-code pairing offer using the default Iroh rendezvous relay
  help        Print this message or the help of the given subcommand(s)

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

Run these on the host. Its session host must run with device auth, which `mpmux-cli service install --remote` sets up; a plain `service install` or the packaged service cannot pair devices.

mpmux-cli pair url#

Print a one-time pairing URL and copy it to the clipboard when possible

Usage: mpmux-cli pair url [OPTIONS]

Options:
      --device-label <DEVICE_LABEL>   Label for the device expected to consume the generated one-time pairing invite [default: "Android mpmux"]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --ttl-seconds <TTL_SECONDS>     One-time invite lifetime in seconds [default: 600]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --no-copy                       Do not try to copy the URL to the system clipboard
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli pair qr-code#

Render a QR code containing the one-time pairing URL

Usage: mpmux-cli pair qr-code [OPTIONS]

Options:
      --device-label <DEVICE_LABEL>   Label for the device expected to consume the generated one-time pairing invite [default: "Android mpmux"]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --ttl-seconds <TTL_SECONDS>     One-time invite lifetime in seconds [default: 600]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --output <PATH>                 File that receives the generated QR PNG. Refuses to overwrite existing files
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli pair short-code#

Print a managed short-code pairing offer using the default Iroh rendezvous relay

Usage: mpmux-cli pair short-code [OPTIONS]

Options:
      --device-label <DEVICE_LABEL>   Label for the device expected to consume the generated one-time pairing invite [default: "Android mpmux"]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --ttl-seconds <TTL_SECONDS>     One-time offer lifetime in seconds [default: 300]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --code-output-file <PATH>       File that receives the full generated short code. Refuses to overwrite existing files
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli service#

Run the session host as a user service (systemd on Linux, launchd on macOS)

Usage: mpmux-cli service [OPTIONS] <COMMAND>

Commands:
  install    Install the session host as a user service and start it
  uninstall  Stop the service and remove it; its shells end, pairings stay
  status     Show whether the service is installed and running
  help       Print this message or the help of the given subcommand(s)

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli service install#

Install the session host as a user service and start it

Usage: mpmux-cli service install [OPTIONS]

Options:
      --remote                        Let paired devices connect over Iroh (device auth and an Iroh listener); `mpmux-cli pair` needs it
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --relay-url <URL>               Iroh relay used with --remote [default: https://relay.mightypainting.dev]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --relay-only                    With --remote: connect through the relay only, never directly
      --json                          Output full response JSON
      --sessiond <PATH>               mpmux-sessiond to run [default: next to mpmux-cli, else from PATH]
      --restart                       Restart a running service to apply changed settings; its shells end
      --dry-run                       Print the service file and commands without changing anything
  -h, --help                          Print help

mpmux-cli service uninstall#

Stop the service and remove it; its shells end, pairings stay

Usage: mpmux-cli service uninstall [OPTIONS]

Options:
      --dry-run                       Print what would be done without changing anything
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli service status#

Show whether the service is installed and running

Usage: mpmux-cli service status [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli tui#

Open the optional terminal session manager TUI

Usage: mpmux-cli tui [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli status#

Show current runtime status

Usage: mpmux-cli status [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli metadata#

Show stable host-control metadata

Usage: mpmux-cli metadata [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli env#

Print shell exports for the selected host-control endpoint

Usage: mpmux-cli env [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli attach#

Register an explicit host-control client identity

Usage: mpmux-cli attach [OPTIONS]

Options:
      --name <NAME>                   
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --role <ROLE>                   [default: controller] [possible values: observer, controller]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli detach#

Detach an explicit host-control client identity

Usage: mpmux-cli detach [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli acquire-control#

Acquire the active controller lease for an attached controller client

Usage: mpmux-cli acquire-control [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli release-control#

Release the active controller lease held by the current controller client

Usage: mpmux-cli release-control [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli heartbeat#

Refresh attached-client liveness and keep a controller lease from expiring

Usage: mpmux-cli heartbeat [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli subscribe#

Subscribe an attached client to host-control events

Usage: mpmux-cli subscribe [OPTIONS] [EVENTS]...

Arguments:
  [EVENTS]...  [possible values: control-owner-changed, ui-state-changed, dialog-state-changed, custom-sidebar-state-changed]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli unsubscribe#

Remove host-control event subscriptions from an attached client

Usage: mpmux-cli unsubscribe [OPTIONS] [EVENTS]...

Arguments:
  [EVENTS]...  [possible values: control-owner-changed, ui-state-changed, dialog-state-changed, custom-sidebar-state-changed]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli poll-events#

Drain queued subscribed host-control events for an attached client

Usage: mpmux-cli poll-events [OPTIONS]

Options:
      --max-events <MAX_EVENTS>       
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli wait-for-events#

Block until at least one subscribed host-control event is available for an attached client

Usage: mpmux-cli wait-for-events [OPTIONS]

Options:
      --max-events <MAX_EVENTS>       
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli transfer-control#

Transfer the active controller lease to another attached controller client

Usage: mpmux-cli transfer-control [OPTIONS] <TO_CLIENT_ID>

Arguments:
  <TO_CLIENT_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-control-state#

Show attached host-control clients and current control-owner placeholder state

Usage: mpmux-cli show-control-state [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli has-session#

Return success only when the running app has an active session

Usage: mpmux-cli has-session [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-ui-state#

Show structured command palette / picker / dialog overlay state

Usage: mpmux-cli show-ui-state [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-hot-reload-bridge#

Show Makepad `--hot` bridge state for the generated UI script mirror

Usage: mpmux-cli show-hot-reload-bridge [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli sync-hot-reload-bridge#

Regenerate the watched UI script mirror used by Makepad `--hot`

Usage: mpmux-cli sync-hot-reload-bridge [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli reload-config#

Reload mpmux runtime config from the original config lookup path

Usage: mpmux-cli reload-config [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli set-verbose-level#

Set the current runtime verbose level without restarting

Usage: mpmux-cli set-verbose-level [OPTIONS] <LEVEL>

Arguments:
  <LEVEL>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli list-buffers#

List app-owned host buffers known to the running app

Usage: mpmux-cli list-buffers [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli list-clients#

List clients known to the running app

Usage: mpmux-cli list-clients [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli list-panes#

List panes known to the running app

Usage: mpmux-cli list-panes [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli new-tab#

Create a new tab in the running app; `-- PROGRAM ARGS…` runs a program in it instead of the shell

Usage: mpmux-cli new-tab [OPTIONS] [-- <RUN>...]

Arguments:
  [RUN]...  The program and its arguments, after `--`

Options:
      --cwd <CWD>                     Directory the program (or shell) starts in
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli split-pane#

Split the current window into a second pane; `-- PROGRAM ARGS…` runs a program in it instead of the shell (`-- nvim notes.md`)

Usage: mpmux-cli split-pane [OPTIONS] [-- <RUN>...]

Arguments:
  [RUN]...  The program and its arguments, after `--`

Options:
      --direction <DIRECTION>         [default: right] [possible values: right, down]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --cwd <CWD>                     Directory the program (or shell) starts in
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli select-tab#

Select the active tab by tab id

Usage: mpmux-cli select-tab [OPTIONS] <TAB_ID>

Arguments:
  <TAB_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli select-pane#

Select the active pane by pane id

Usage: mpmux-cli select-pane [OPTIONS] <PANE_ID>

Arguments:
  <PANE_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli resize-pane#

Resize a pane toward one edge by a number of cells

Usage: mpmux-cli resize-pane [OPTIONS] --direction <DIRECTION>

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --direction <DIRECTION>         [possible values: left, right, up, down]
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --amount <AMOUNT>               [default: 5]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli kill-pane#

Close a pane by pane id, or the active pane when omitted

Usage: mpmux-cli kill-pane [OPTIONS]

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli list-windows#

List windows known to the running app

Usage: mpmux-cli list-windows [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli list-sessions#

List sessions known to the running app

Usage: mpmux-cli list-sessions [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli clear-history#

Clear pane history/scrollback in the running app

Usage: mpmux-cli clear-history [OPTIONS]

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli reset-terminal#

Reset a pane's terminal like Ghostty's Reset (--clear: Clear Screen)

Usage: mpmux-cli reset-terminal [OPTIONS]

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --clear                         Clear the screen and scrollback instead of a full reset
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-options#

Show current app/global options

Usage: mpmux-cli show-options [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-window-options#

Show current window-oriented options

Usage: mpmux-cli show-window-options [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-hooks#

Show configured hooks

Usage: mpmux-cli show-hooks [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-prompt-history#

Show prompt history

Usage: mpmux-cli show-prompt-history [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-buffer#

Show the current app-owned host buffer contents

Usage: mpmux-cli show-buffer [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli set-buffer#

Replace the current app-owned host buffer contents

Usage: mpmux-cli set-buffer [OPTIONS] <TEXT>

Arguments:
  <TEXT>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli copy-to-clipboard#

Copy text to the app/system clipboard and app-owned host buffer

Usage: mpmux-cli copy-to-clipboard [OPTIONS] <TEXT>

Arguments:
  <TEXT>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli delete-buffer#

Clear the current app-owned host buffer contents

Usage: mpmux-cli delete-buffer [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-environment#

Show an allowlisted environment snapshot from the running app

Usage: mpmux-cli show-environment [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli load-buffer#

Load the app-owned host buffer from a file

Usage: mpmux-cli load-buffer [OPTIONS] <PATH>

Arguments:
  <PATH>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli save-buffer#

Save the current app-owned host buffer to a file

Usage: mpmux-cli save-buffer [OPTIONS] <PATH>

Arguments:
  <PATH>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli paste-buffer#

Paste the current app-owned host buffer into the terminal

Usage: mpmux-cli paste-buffer [OPTIONS]

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli send-keys#

Send tmux-style key/text items through the host app

Usage: mpmux-cli send-keys [OPTIONS] [ITEMS]...

Arguments:
  [ITEMS]...  Sequence of tmux-style key names or literal text items

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
  -l, --literal                       Send all items literally as text instead of parsing tmux-style key names
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli show-messages#

Show retained host/app message history

Usage: mpmux-cli show-messages [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli display-message#

Show a host/app message in mpmux UI surfaces

Usage: mpmux-cli display-message [OPTIONS] <MESSAGE>

Arguments:
  <MESSAGE>  Message text to display

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli display-dialog#

Show a centered modal dialog in mpmux UI surfaces

Usage: mpmux-cli display-dialog [OPTIONS] <TITLE> <MESSAGE>

Arguments:
  <TITLE>    Dialog title text
  <MESSAGE>  Dialog body text

Options:
      --primary-label <PRIMARY_LABEL>  Optional primary button label
      --socket <SOCKET>                Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>   TCP endpoint for the mpmux host-control bridge, as host:port
      --wait                           Wait until the dialog is dismissed and return the result payload
      --client-id <CLIENT_ID>          Optional stable host-control client id attached to requests
      --json                           Output full response JSON
  -h, --help                           Print help

mpmux-cli set-custom-dialog-field#

Update one active custom dialog field through the typed host-control surface

Usage: mpmux-cli set-custom-dialog-field [OPTIONS] --kind <KIND> <FIELD_ID>

Arguments:
  <FIELD_ID>  

Options:
      --dialog-id <DIALOG_ID>         
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --kind <KIND>                   [possible values: text, textarea, select, checkbox, switch, radio-group, toggle-group]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --text <TEXT>                   
      --json                          Output full response JSON
      --selected-id <SELECTED_ID>     
      --checked <CHECKED>             [possible values: true, false]
  -h, --help                          Print help

mpmux-cli invoke-custom-dialog-action#

Invoke one active custom dialog footer action through the typed host-control surface

Usage: mpmux-cli invoke-custom-dialog-action [OPTIONS] <ACTION_ID>

Arguments:
  <ACTION_ID>  

Options:
      --dialog-id <DIALOG_ID>         
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli open-command-palette#

Open the command palette through the typed host-control surface

Usage: mpmux-cli open-command-palette [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli set-command-palette-query#

Set the command palette query text through the typed host-control surface

Usage: mpmux-cli set-command-palette-query [OPTIONS] <TEXT>

Arguments:
  <TEXT>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli move-command-palette-selection#

Move the command palette selection by a row delta

Usage: mpmux-cli move-command-palette-selection [OPTIONS] <DELTA>

Arguments:
  <DELTA>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli confirm-command-palette-selection#

Confirm the current command palette selection

Usage: mpmux-cli confirm-command-palette-selection [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli dismiss-command-palette#

Dismiss the active command palette overlay

Usage: mpmux-cli dismiss-command-palette [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli open-pie-menu#

Open the overlay pie menu through host control

Usage: mpmux-cli open-pie-menu [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli pie-menu#

Discover and control pie menus through host control

Usage: mpmux-cli pie-menu [OPTIONS] <COMMAND>

Commands:
  list      List available static pie menus and redacted item actions
  active    Show the currently active pie menu, if any
  open      Open a static pie menu by id, or the root menu when omitted
  patch     Patch safe presentation fields for one runtime pie menu item
  activate  Activate the current pie menu item by id, direction, clock hour, or degrees
  help      Print this message or the help of the given subcommand(s)

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli pie-menu list#

List available static pie menus and redacted item actions

Usage: mpmux-cli pie-menu list [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli pie-menu active#

Show the currently active pie menu, if any

Usage: mpmux-cli pie-menu active [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli pie-menu open#

Open a static pie menu by id, or the root menu when omitted

Usage: mpmux-cli pie-menu open [OPTIONS] [MENU_ID]

Arguments:
  [MENU_ID]  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli pie-menu patch#

Patch safe presentation fields for one runtime pie menu item

Usage: mpmux-cli pie-menu patch [OPTIONS] <MENU_ID> <ITEM_ID>

Arguments:
  <MENU_ID>  
  <ITEM_ID>  

Options:
      --label <LABEL>                 
      --socket <SOCKET>               Path to the mpmux host-control socket
      --detail <DETAIL>               
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --enabled <ENABLED>             [possible values: true, false]
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli pie-menu activate#

Activate the current pie menu item by id, direction, clock hour, or degrees

Usage: mpmux-cli pie-menu activate [OPTIONS] <ITEM_ID_OR_DIRECTION>

Arguments:
  <ITEM_ID_OR_DIRECTION>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli extension#

Discover and control runtime extension overlays through host control

Usage: mpmux-cli extension [OPTIONS] <COMMAND>

Commands:
  list      List available runtime extensions and overlays
  reload    Reload runtime extension manifests from MPMUX_EXTENSION_PATHS
  enable    Enable a runtime extension for this app session
  disable   Disable a runtime extension for this app session
  open      Open one extension overlay by extension id and optional overlay id
  activate  Activate an item in the currently active extension overlay
  dismiss   Dismiss the active extension overlay
  help      Print this message or the help of the given subcommand(s)

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli extension list#

List available runtime extensions and overlays

Usage: mpmux-cli extension list [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli extension reload#

Reload runtime extension manifests from MPMUX_EXTENSION_PATHS

Usage: mpmux-cli extension reload [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli extension enable#

Enable a runtime extension for this app session

Usage: mpmux-cli extension enable [OPTIONS] <EXTENSION_ID>

Arguments:
  <EXTENSION_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli extension disable#

Disable a runtime extension for this app session

Usage: mpmux-cli extension disable [OPTIONS] <EXTENSION_ID>

Arguments:
  <EXTENSION_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli extension open#

Open one extension overlay by extension id and optional overlay id

Usage: mpmux-cli extension open [OPTIONS] <EXTENSION_ID> [OVERLAY_ID]

Arguments:
  <EXTENSION_ID>  
  [OVERLAY_ID]    

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli extension activate#

Activate an item in the currently active extension overlay

Usage: mpmux-cli extension activate [OPTIONS] <ITEM_ID>

Arguments:
  <ITEM_ID>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli extension dismiss#

Dismiss the active extension overlay

Usage: mpmux-cli extension dismiss [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli activate-pie-menu-direction#

Activate a pie menu direction by name, clock hour (1.5h), or degrees (45)

Usage: mpmux-cli activate-pie-menu-direction [OPTIONS] <DIRECTION>

Arguments:
  <DIRECTION>  Direction name, clock hour (for example 1.5h), or clockwise degrees from north

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli move-picker-selection#

Move the active picker selection by a row delta

Usage: mpmux-cli move-picker-selection [OPTIONS] <DELTA>

Arguments:
  <DELTA>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli confirm-picker-selection#

Confirm the current picker selection

Usage: mpmux-cli confirm-picker-selection [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli dismiss-overlay#

Dismiss a typed overlay

Usage: mpmux-cli dismiss-overlay [OPTIONS] <OVERLAY>

Arguments:
  <OVERLAY>  [possible values: command-palette, picker, dialog, custom-dialog]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli dismiss-dialog#

Dismiss the active mpmux dialog overlay

Usage: mpmux-cli dismiss-dialog [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli toggle-message-sidebar#

Toggle the host message sidebar in mpmux UI

Usage: mpmux-cli toggle-message-sidebar [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli set-message-sidebar-width#

Set the host message sidebar width in pixels through the splitter path

Usage: mpmux-cli set-message-sidebar-width [OPTIONS] <WIDTH_PX>

Arguments:
  <WIDTH_PX>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli set-message-sidebar-position#

Move the dock (message and custom sidebars) to a window edge; saved

Usage: mpmux-cli set-message-sidebar-position [OPTIONS] <POSITION>

Arguments:
  <POSITION>  [possible values: left, right, top, bottom]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli set-custom-sidebar-filter#

Set a custom sidebar's filter query (the one with the keys, or --sidebar-id)

Usage: mpmux-cli set-custom-sidebar-filter [OPTIONS] <QUERY>

Arguments:
  <QUERY>  

Options:
      --sidebar-id <ID>               The sidebar, by its id [default: the one with the keys]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli move-custom-sidebar-selection#

Move a custom sidebar's selection by a row delta

Usage: mpmux-cli move-custom-sidebar-selection [OPTIONS] <DELTA>

Arguments:
  <DELTA>  

Options:
      --sidebar-id <ID>               The sidebar, by its id [default: the one with the keys]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli invoke-custom-sidebar-selection#

Invoke a custom sidebar's selection

Usage: mpmux-cli invoke-custom-sidebar-selection [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --source <SOURCE>               
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --sidebar-id <ID>               The sidebar, by its id [default: the one with the keys]
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli invoke-custom-sidebar-action#

Press a button of a custom sidebar's actions section, by its id

Usage: mpmux-cli invoke-custom-sidebar-action [OPTIONS] <ACTION_ID>

Arguments:
  <ACTION_ID>  

Options:
      --sidebar-id <ID>               The sidebar, by its id [default: the one with the keys]
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli clear-custom-sidebar#

Remove a custom sidebar [default: the one in the dock's main half]

Usage: mpmux-cli clear-custom-sidebar [OPTIONS]

Options:
      --sidebar-id <ID>               The sidebar, by its id
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli set-dock-split#

Split the dock to show custom sidebar ID below what it shows; without an ID, join the halves again

Usage: mpmux-cli set-dock-split [OPTIONS] [ID]

Arguments:
  [ID]  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli set-app-time-override#

Override the app clock with an explicit virtual time in microseconds

Usage: mpmux-cli set-app-time-override [OPTIONS] <APP_TIME_MICROS>

Arguments:
  <APP_TIME_MICROS>  

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli clear-app-time-override#

Clear the explicit app clock override and return to wall-clock time

Usage: mpmux-cli clear-app-time-override [OPTIONS]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli load-terminal-replay-session#

Load an indexed terminal JSONL replay session onto a pane for offline frame stepping

Usage: mpmux-cli load-terminal-replay-session [OPTIONS] <PATH>

Arguments:
  <PATH>  Path to the JSONL replay session artifact

Options:
      --pane-id <PANE_ID>

      --socket <SOCKET>
          Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>
          TCP endpoint for the mpmux host-control bridge, as host:port
      --inter-segment-pause-micros <INTER_SEGMENT_PAUSE_MICROS>
          Virtual pause between segments in microseconds when replaying [default: 500000]
      --client-id <CLIENT_ID>
          Optional stable host-control client id attached to requests
      --sample-fps <SAMPLE_FPS>
          Optional deterministic fixed-FPS replay sampling. When set, the replay session is expanded into piecewise-constant sample frames at this FPS, including inter-segment pause frames
      --json
          Output full response JSON
  -h, --help
          Print help

mpmux-cli apply-terminal-replay-frame#

Apply one loaded terminal replay frame to a pane and update app virtual time

Usage: mpmux-cli apply-terminal-replay-frame [OPTIONS] <FRAME_INDEX>

Arguments:
  <FRAME_INDEX>  

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli clear-terminal-replay-session#

Clear the loaded terminal replay session from a pane

Usage: mpmux-cli clear-terminal-replay-session [OPTIONS]

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli start-terminal-segment-recording#

Begin recording the next terminal-output segment until an explicit checkpoint is reached

Usage: mpmux-cli start-terminal-segment-recording [OPTIONS] <TRIGGER>

Arguments:
  <TRIGGER>  Human-readable description of the triggering action for this segment

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --preserve-trailing-spaces      Preserve trailing spaces in the start snapshot
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli finish-terminal-segment-recording#

Finish the active terminal-output segment recording and return the captured payload

Usage: mpmux-cli finish-terminal-segment-recording [OPTIONS]

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli capture-pane#

Capture visible pane text from the current terminal viewport

Usage: mpmux-cli capture-pane [OPTIONS]

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --start-line <START_LINE>       Start line within the visible viewport. Negative values are relative to the bottom
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --end-line <END_LINE>           End line within the visible viewport. Negative values are relative to the bottom
      --json                          Output full response JSON
      --preserve-trailing-spaces      Preserve trailing spaces on each captured line
  -h, --help                          Print help

mpmux-cli capture-ui#

Capture composited host or pane UI as an image or video artifact

Usage: mpmux-cli capture-ui [OPTIONS] <OUTPUT>

Arguments:
  <OUTPUT>  Output artifact path, for example captures/ui.png or captures/ui.mkv

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --surface <SURFACE>             Capture the full host UI or only one pane surface [default: host] [possible values: host, pane]
      --format <FORMAT>               Capture one still image or an encoded video clip [default: image] [possible values: image, video]
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --pane-id <PANE_ID>             Optional pane id when capturing `--surface pane`
      --fps <FPS>                     Frame rate used for video capture and encoding
      --json                          Output full response JSON
      --frames <FRAMES>               Number of frames to capture for video output
      --encoder <ENCODER>             Encoder selection for ffmpeg video capture [possible values: auto, lib-svt-av1, lib-aom-av1]
      --crf <CRF>                     Quality target passed to the AV1 encoder for video capture
      --preset <PRESET>               Speed preset passed to the AV1 encoder for video capture
  -h, --help                          Print help

mpmux-cli focus-terminal#

Focus the terminal overlay

Usage: mpmux-cli focus-terminal [OPTIONS]

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli send-text#

Send terminal text through the host app

Usage: mpmux-cli send-text [OPTIONS] <TEXT>

Arguments:
  <TEXT>  Text to send to the terminal

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli send-key#

Send a logical key through the host app

Usage: mpmux-cli send-key [OPTIONS] <KEY>

Arguments:
  <KEY>  Logical key name (for example: enter, escape, left, r, 1)

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --shift                         
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --ctrl                          
      --alt                           
      --json                          Output full response JSON
      --logo                          
  -h, --help                          Print help

mpmux-cli run-playback#

Run a playback scenario inside mpmux

Usage: mpmux-cli run-playback [OPTIONS] <NAME>

Arguments:
  <NAME>  Playback name

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli window-action#

Run a supported window action

Usage: mpmux-cli window-action [OPTIONS] <ACTION>

Arguments:
  <ACTION>  [possible values: toggle-maximize]

Options:
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli scroll-viewport#

Scroll the terminal viewport by a terminal delta

Usage: mpmux-cli scroll-viewport [OPTIONS] <DELTA>

Arguments:
  <DELTA>  

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli select-cells#

Apply a visible cell selection

Usage: mpmux-cli select-cells [OPTIONS] <ANCHOR_COL> <ANCHOR_ROW> <FOCUS_COL> <FOCUS_ROW>

Arguments:
  <ANCHOR_COL>  
  <ANCHOR_ROW>  
  <FOCUS_COL>   
  <FOCUS_ROW>   

Options:
      --pane-id <PANE_ID>             
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help

mpmux-cli cleanup-processes#

Clean up tracked PTY processes from abandoned earlier runs

Usage: mpmux-cli cleanup-processes [OPTIONS]

Options:
      --deep                          Also walk descendant processes for a deeper cleanup pass
      --socket <SOCKET>               Path to the mpmux host-control socket
      --host-control-tcp <HOST:PORT>  TCP endpoint for the mpmux host-control bridge, as host:port
      --client-id <CLIENT_ID>         Optional stable host-control client id attached to requests
      --json                          Output full response JSON
  -h, --help                          Print help