Which client do I need?
Two clients join the same network: the app, with a window to sign in, and the CLI, for machines nobody sits at.
SXAccess has two clients. The app is for a machine someone works at: a Mac, a Windows PC, an iPhone or an Android phone. You install it from the store or as a download, sign in with your account and press Connect. The CLI is for a machine nobody sits at: a Linux server, a container, a CI runner, a router, or a Mac that runs builds. It enrols with an enrollment key, runs as a system service and never needs a screen.
The app and the CLI are separate clients that join the same network. Either one enrols its machine as a device in your organization, and the same access rules decide what that device can reach. Choose by how the machine is used, not by what the other machines run.
Pick your platform
What runs where
The app comes from each platform's store, and for a Mac or a Windows PC also as a download. The CLI comes from one install script, curl -fsSL https://pkgs.sxaccess.com/install.sh | sh, which runs on Linux and macOS only. It needs root rights, so it runs as root or through sudo or doas, and it does not support NixOS.
| Platform | Client | Runs on | Get it from |
|---|---|---|---|
| Linux | CLI | amd64, arm64, 386 and 32-bit ARM (armv6 and armv7) | The install script |
| macOS | App | Apple silicon, macOS 14 or later | The Mac App Store, or the DMG at pkgs.sxaccess.com/macos/desktop/arm64 |
| macOS | CLI | Apple silicon and Intel (arm64, amd64) | The install script |
| Windows | App | x64 | Add device in the dashboard, or pkgs.sxaccess.com/windows/x64 |
| iOS | App | iPhone, iOS 17 or later | The App Store |
| Android | App | Android 8.0 or later | Google Play |
Check that it worked
With the app, look in two places. The app reads Connected once you have pressed Connect, and the dashboard lists the device under Devices within seconds of your signing in.
With the CLI, sxaccess version prints the installed version and sxaccess info tells you where the device stands. Its first line is Connected when the device reaches both the management service and Discovery, the service through which two devices agree on a path; their rows are Service and Discovery. It reads Partly connected when only one of them answers, and Not connected when neither does.
If sxaccess info answers cannot reach the SXAccess agent, the background service is not running. The message names the fix: sudo sxaccess agent install registers the service if it was never registered, and sudo sxaccess agent start starts it. If it answers This device is not signed in, run sxaccess start. Anything else is in Troubleshooting the client.

