Remote shells and jobs that keep going.

Run remote work through Wi-Fi, VPN, and laptop disconnects.

Auto-reconnect Resumable exec Local MCP SSH fallback
onyx
$ interactive shell over unreliable networks
$

Watch it run

See Onyx reconnect shells and resume remote job output.

Stable interactive sessions.

Reconnect fast. Pick up where you left off.

Reconnect fast Resume instantly
Remote session stays live SSH fallback when needed

Run commands you can come back to.

Start once. Detach. Reattach, inspect logs, or stop the job later.

onyx exec
status starting gpu-box • job_84f31
$ onyx exec gpu-box --detach -- python train.py
[job] job_84f31 running detached
train epoch=01 loss=0.912 samples=4096
train epoch=02 loss=0.734 samples=8192
[net] connection lost...
[job] resumed seq=27
train epoch=03 loss=0.581 samples=12288
train epoch=04 checkpoint=best.pt
Run onyx exec prod -- ./deploy.sh

Run it live.

Detach onyx exec gpu-box --detach -- python train.py

Leave it running.

Logs onyx logs gpu-box job_xxx

Check progress later.

Full CLI and MCP reference → Docs

Local MCP for remote execution

Agents talk local. Live progress, reconnect, and resume.

Agent local client
Onyx MCP stdio server
Remote Host hetzner-dev
onyx_exec
onyx_jobs
onyx_logs
onyx_kill
target=hetzner-dev · stream=true

Install

Install
brew install shervin9/onyx/onyx --formula
Update
brew upgrade shervin9/onyx/onyx --formula
Connect
onyx user@host

Remote server is provisioned automatically.