shux server can be accessed from browsers, mobile devices, and other machines on your network. This page covers how access control works, including the GitHub owner login allowlist.
Authentication modes
By default, server access is protected by a bearer token. Token resolution order:--no-auth(disables auth entirely)--auth-token <token>SHUX_SERVER_AUTH_TOKEN- Auto-generated token at startup
Configure GitHub owner login
Shux can optionally allow GitHub Device Flow login for exactly one GitHub account. Set the allowed account with either:- Environment variable:
SHUX_SERVER_AUTH_GITHUB_OWNER - Config file key:
serverAuthGithubOwnerin~/.shux/config.json
SHUX_SERVER_AUTH_GITHUB_OWNER takes precedence.
When enabled, the auth modal shows Login with GitHub. Shux verifies the GitHub login value against the configured owner (case-insensitive). Non-matching users are rejected.
This allowlist currently supports a single GitHub username. It does not support multiple users or
GitHub organization membership rules.
Server Access settings page
Open Settings → Server Access to manage browser sessions. You can:- Refresh active sessions
- Revoke a specific session
- Log out the current session
- Revoke all other sessions
Network exposure and bind settings
To expose Shux beyond localhost and configure bind host/port in the UI:- Open Settings → Experiments
- Enable Expose API server on LAN/VPN
- Configure bind host, port, and Serve shux web UI
- Click Apply
--host <host>--port <port>--ssh-host <host>--add-project <path>