One page per version, with the downloads for Linux, macOS, Windows and Android, and the checksums to verify them. One tag ships the server archives, the desktop bundles and the Android APK together.
Newest first. 0.2.0 shipped on 28 September 2026 without a changelog, so its entry there is retrospective.
| Version | Released | What it was | Notes |
|---|---|---|---|
| 1.0.0 | 24 October 2026 | The third-party boundary, closed: a device's credential can be a key instead of a shared secret, a client can be held to the ports it may reach, the server's runtime state lives in a file of its own, and both clients can bring the tunnel back by themselves. No client has to be enrolled again. The macOS and Windows desktop bundles are published unsigned. | Release notes |
| 0.6.1 | 11 October 2026 | A release about the config surface: a fresh server starts with a usable config and a stable identity, the endpoint's credentials can live outside config.toml — even in a docker secrets mount — and config-file permissions are no longer gated. | Release notes |
| 0.6.0 | 11 October 2026 | One credential per device, revocable on its own and closed out of the connections it already holds, with every install answering as one named device of itself — plus request latency as a histogram and the write half of the management surface. | Release notes |
| 0.5.0 | 7 October 2026 | Health decides which node gets the next request, the backends that cannot answer a health endpoint are probed anyway, and everything counts the bytes it carries — plus a container image and a documented self-hosted relay. | Release notes |
| 0.4.0 | 30 September 2026 | The desktop app asks the operating system before it shows a credential, and a route whose backends are all down refuses instead of dialling. | Release notes |
| 0.3.0 | 29 September 2026 | Health, metrics and live instance state behind a loopback listener. | Release notes |
| 0.2.0 | 28 September 2026 | Hardening release; no page of its own. | Release |