Connect & share
heyvm bind <id> <port> # proxy a sandbox port to a public hostname
heyvm connect <heyo://url> # connect to a shared sandbox
heyvm ssh <id> # SSH into a sandbox
heyvm ssh-proxy <…> # SSH via the proxy
heyvm share <id> # produce a shareable link
heyvm expose <id> <port> # publish a port
heyvm unexpose <id> <port> # unpublish a port
heyvm port-forward <id> <port> # forward a sandbox port to localhost
heyvm display <id> # open a remote display
heyvm display-connect <…> # connect to a display
heyvm bind
Proxies a port inside a sandbox to a public https://<subdomain> hostname.
heyvm bind my-sandbox 8080
| Flag | Purpose |
|---|---|
--private |
Restrict the URL to members of your account |
--format |
json or text (default) |
The public hostname is inferred, in order, from the API_HOSTNAME environment
variable, --cloud-url, --auth-url, and finally the environment you last
logged into. You only need to set API_HOSTNAME to override that inference —
after heyvm login it is not required.
Local sandboxes:
bindprints a URL, but the CLI does not currently register the subdomain with the cloud, so requests to it returnEndpoint not found. For same-machine access useheyvm create --open-port(or, onapple_virt, the guest IP directly); for off-host access useheyvm share. See macOS Capabilities.
heyvm port-forward
Forwards a port from inside the sandbox to a listener on 127.0.0.1, tunnelled
over SSH.
heyvm port-forward my-sandbox 5000 # listen on localhost:5000
heyvm port-forward my-sandbox 5000 -p 18734 # listen on localhost:18734
| Flag | Purpose |
|---|---|
-p, --host-port |
Local port to listen on (default: same as the sandbox port) |
--format |
json or text (default) |
This requires an SSH server inside the guest, so it works on apple_virt,
firecracker, kvm, and libvirt. On backends without one — including
apple_container — it fails with Sandbox has no SSH port; use
heyvm create --open-port HOST:GUEST at creation time instead.
Local P2P proxy
heyvm proxy start # start the P2P proxy
heyvm proxy list # list proxy entries
heyvm proxy sync # sync proxy state
heyvm proxy add <…> # add a proxy entry
Software-defined network (SDN)
The network subcommand manages cross-machine networking through the cloud:
heyvm network members # list network members
heyvm network nodes # list nodes
heyvm network register-node <…> # register this node
heyvm network heartbeat-node # send a node heartbeat
heyvm network delete-node <id> # remove a node
heyvm network agent # run the network agent
heyvm network services # list services
heyvm network register-service <…># register a service
heyvm network expose-service <…> # expose a service
heyvm network resolve <name> # resolve a service name
heyvm network dial <name> # dial a service
heyvm network sync-hosts # sync host aliases
heyvm network delete-service <id> # remove a service
Webhooks
heyvm webhook create <…> # create a webhook
heyvm webhook list # list webhooks
heyvm webhook delete <id> # delete a webhook
For the always-on daemon and the standalone proxy/relay binaries, see Proxies & Relay.