Skip to content

RelayKey v0.4.0

Choose a tag to compare

@ptrinh ptrinh released this 29 Jul 06:22

RelayKey — remotely administer machines behind firewalls over end-to-end
encryption, with no backend server.

What's new in v0.4.0

Update your agents. This release closes a hole where any machine you had
already paired could grant itself permission to run commands, turn off audit
logging, and point the agent at a different relay — regardless of the
capabilities you gave it. The fix is on the agent side, so a machine keeps the
old behaviour until you update the agent running on it.

Also fixed, in rough order of how likely you were to hit it:

  • Tunnels (SSH, RDP, remote browser) noticed a dropped connection but kept
    reporting it as live, so they stayed broken until you restarted the app. They
    now reconnect.
  • The Windows client could crash while opening a tunnel on one machine and
    removing another, or when you closed the shell window mid-output.
  • The agent could be crashed outright by a browser closing a remote-browser tab
    mid-download.
  • Reading a file bigger than about 24 KB never returned an answer.
  • A command retried while the machine was unreachable for more than five minutes
    would hang forever instead of completing when it came back.
  • A stranger who could see your relay traffic could burn a pairing code you had
    just armed, forcing you to issue a new one.
  • The web client now falls back to a relay when your network blocks direct
    connections, instead of failing with an unexplained timeout.
  • Tunnels no longer die when you push a large file through them.
  • Faster and lighter: the data path no longer allocates memory per packet,
    downloads move measurably quicker, and binaries are about 25% smaller.
  • The remote console no longer slows the app down the longer it stays open.
  • Clearer UI throughout: destructive actions ask first, failures explain
    themselves instead of failing silently, tunnels show connection progress and
    why they failed, and the app is usable from the keyboard and with VoiceOver.

Which file do I download?

Files are named relaykey-<role>-<interface>-<os>-<arch>:

part meaning
role client = the app you use to control machines · agent = runs on the machine you want to control
interface gui = double-click desktop app · cli = headless / command-line (for servers & services)
os / arch windows / macos / linux · amd64 (Intel/AMD) / arm64 (Apple Silicon, ARM)

1. To control machines (pick your own computer)

Your computer Download
macOS (Apple Silicon) relaykey-client-gui-macos-arm64.zip — unzip, drag RelayKey.app to Applications
Windows relaykey-client-gui-windows-amd64.exe (or -arm64 on ARM)
Browser / phone / anything no download — open https://relaykey.pages.dev

2. To install the agent on a machine you want to control

That machine Download
Windows (easiest) relaykey-agent-gui-windows-amd64.exe — double-click, click Install (or -arm64 on ARM)
Windows (headless / service) relaykey-agent-cli-windows-amd64.exe
macOS relaykey-agent-cli-macos-arm64 (or -amd64 on Intel)
Linux relaykey-agent-cli-linux-amd64 (or -arm64 on ARM)

Not sure which arch? Apple Silicon Macs (M1/M2/M3/M4) and most ARM servers are
arm64; older Intel/AMD machines are amd64.

Quick start

  1. Open a client on your computer (or the website).
  2. On the machine to control, run the agent and note its pairing code.
  3. In the client, click + Add Machine, enter the code, and compare the 6-digit PIN on both sides.