Releases: Magi-Labs/sess
Release list
sess v0.7.0 — SSH image and file uploads
Images and files over SSH
- Drop supported local images into an attached prompt when your terminal sends bracketed pastes. sess uploads them and inserts quoted remote paths without pressing Enter.
- Use
sess upload <file> [file...]for any regular file up to 25 MiB. This prints remote paths and works independently of terminal drag behavior. - Automatic pastes support PNG, JPEG, GIF and WebP, including spaces, quoted filenames and up to eight images totaling 25 MiB.
- Files use private permissions, unique destinations and verified SHA-256 checksums. They remain on the VM until deleted.
- Ctrl+C cancels transfers.
--no-upload-imagesdisables interception.
Upgrade
Update your laptop, then run sess init <host> to update the remote helper. zmx remains at 0.8.1. Existing sessions remain separate from uploaded files.
Plain unmarked drops and clipboard image pixels are not automatically uploaded. Use sess upload when a terminal inserts an unchanged local path. Native drag behavior across all terminal apps and Claude Code versions has not been verified.
Validation
Go race-enabled tests and vet passed. A race-enabled macOS ARM64 client passed real SSH/zmx integration against a disposable Linux ARM64 VM: uploads, checksums, private permissions, quoted/multiple image paths, fragmented paste input, cancellation, resize, detach, reconnect and TUI return. All four platform binaries and embedded helpers cross-built; AMD64 targets were not runtime-tested.
Homebrew and npm launcher packaging are maintained manually. No CI workflows added.
sess v0.6.0 — persistent SSH terminals
A persistent SSH terminal, powered by zmx
sess 0.6.0 is the first tagged release of the new Go client and zmx backend. Name a terminal on your VM, detach, and return to the same running shell.
Get started
Download the archive for your laptop from the assets below. Extract it and put sess on your PATH. No Go or Node.js installation is needed to use a release binary.
sess init user@host
sess set --host user@host
sess new work
# Ctrl+\ to detach
sess attach workSSH aliases work anywhere a host is accepted. Use --host / -h to override the saved default, and --help for help. Session operations require key authentication available to OpenSSH batch mode.
Included
new/n,attach/a,remove/rm,ls,detach,doctor, and completion.- An interactive browser with search, host switching, create/attach/remove actions, and return after detach.
- Automatic reconnection for classified transient SSH failures, with original-session identity checks.
new --detach,ls --json, andls --quietfor scripts.- Remote provisioning with an embedded helper and checksum-verified zmx 0.8.1.
- macOS/Linux builds for ARM64 and AMD64. Every archive includes all four remote-helper targets and the documentation.
Migration
This replaces the earlier Bash/tmux interface. Existing tmux sessions and ~/.sess remain untouched; use tmux to finish those sessions. Running processes cannot be moved into zmx. Prepare your host with sess init, set a default, and create new sessions.
The old up, remote, ssh, diff, log, connections, path, code, and status commands are removed. The new interface is remote-only. Detach keeps the session alive; shell exit or removal ends it. VM reboot or loss of the backend ends live sessions.
Validation
Go race tests and go vet passed on macOS ARM64 and Linux ARM64. Native macOS backend checks and a real OpenSSH/zmx Docker suite passed, including disconnect/reconnect, multiple clients, detach-all, shell exit, removal, browser actions, and namespace isolation. All four platform targets were built; AMD64 has cross-build coverage rather than the same runtime coverage.