A lightweight local wrapper for running remote hermes over SSH.
Install to /usr/local/bin (default):
curl -fsSL https://almas-x.github.io/hermes-wrapper/install.sh | bashInstall to a custom directory (no sudo path):
curl -fsSL https://almas-x.github.io/hermes-wrapper/install.sh | INSTALL_DIR="$HOME/.local/bin" bash- Resolves target from
HERMES_HOST(fallback:hermes) - Supports
user[:password]@host[:port]parsing - Handles completion passthrough (zsh/bash/fish), with zsh-specific cleanup
- Preserves remote exit codes and stderr for normal command execution
hermes status
HERMES_HOST="my-user@my-host:22" hermes logsAppend custom SSH options with HERMES_SSH_OPTS:
HERMES_SSH_OPTS="-o ConnectTimeout=20" hermes status
HERMES_SSH_OPTS="-i ~/.ssh/id_ed25519 -o ProxyJump=bastion" hermes statusBy default, hermes-wrapper sets ConnectTimeout=5, WarnWeakCrypto=no, and a mode-specific LogLevel.
HERMES_SSH_OPTS uses simple whitespace splitting. Paths or values containing spaces are not supported.
For interactive TUI commands, xterm-ghostty is automatically mapped to xterm-256color on the remote side when needed. Override the remote TERM explicitly with HERMES_TERM:
HERMES_TERM=xterm-256color hermes modelrm -f "$(command -v hermes)"