Remote Access
Access your Uplink instance from any device — phone, tablet, or another computer. Use it on the couch, at work, or on the go.
How It Works
Uplink is a web server running on your machine. By default it listens on localhost:3456, which means only that machine can access the UI. To use Uplink from your phone or another device, you have two options:
- LAN Access — same Wi-Fi network, zero setup
- Tailscale — works from anywhere, encrypted, with auto-HTTPS
Quick Comparison
| Method | Where | Voice Chat | Setup |
|---|---|---|---|
| LAN IP | Same network | ❌ No mic (HTTP) | Toggle in Settings |
| Tailscale | Anywhere | ✅ Full (auto-HTTPS) | ~5 minutes |
Option 1: LAN Access
The simplest option. If your phone and computer are on the same Wi-Fi, you can connect directly.
Step 1: Enable Network Access
By default, Uplink only listens on localhost. You need to open it up to your network.
Easiest way: Go to Settings → Server in Uplink and turn on the Network Access toggle.
Or via environment:
UPLINK_HOST=0.0.0.0
Step 2: Find Your LAN IP
ipconfig | findstr "IPv4"
# Example: IPv4 Address. . . : 192.168.1.100
hostname -I # Linux
ipconfig getifaddr en0 # macOS
# Example: 192.168.1.100
Step 3: Connect
On your phone or other device, open a browser and go to:
http://192.168.1.100:3456
Option 2: Tailscale (Recommended)
Tailscale creates a secure mesh VPN between your devices. No port forwarding, no dynamic DNS, no firewall rules. Uplink auto-detects Tailscale and provisions HTTPS certificates — enabling voice chat, camera, and all browser APIs that require a secure context.
Step 1: Install Tailscale
Install on both the machine running Uplink and your phone/remote device.
- Desktop: tailscale.com/download — Windows, macOS, Linux
- Phone: Search "Tailscale" in the App Store (iOS) or Play Store (Android)
Sign in with the same account on both devices (Google, Microsoft, GitHub, etc.).
Step 2: Enable Network Access in Uplink
Same as LAN — Uplink needs to listen on 0.0.0.0 so Tailscale connections can reach it.
Go to Settings → Server → Network Access and turn it on. Or:
UPLINK_HOST=0.0.0.0
UPLINK_AUTH_ENABLED=true) automatically sets UPLINK_HOST=0.0.0.0, so you don't need to set it separately.
Step 3: Find Your Tailscale Address
# Get your Tailscale IP
tailscale ip -4
# Example: 100.85.40.53
# Get your Tailscale hostname (for HTTPS)
tailscale status
# Look for your machine name, e.g. "na8"
# Your FQDN will be: na8.tail8b977a.ts.net
You can also find your Tailscale IP and hostname in the Tailscale app on your desktop or in the Tailscale admin console.
Step 4: Connect
You have two URLs to choose from:
| URL | Voice Chat | Notes |
|---|---|---|
https://your-hostname.ts.net:3457 |
✅ Yes | Auto-HTTPS, full features, use this for mobile |
http://100.x.x.x:3456 |
❌ No | Plain HTTP, text chat only |
- Gets your machine's Tailscale FQDN (e.g.
na8.tail8b977a.ts.net) - Provisions a valid TLS certificate via
tailscale cert - Starts an HTTPS server on port 3457
- Refreshes the certificate every 12 hours
No manual certificate setup required. You'll see the HTTPS URL in the Uplink server logs at startup.
Step 5: Install as PWA (Mobile)
For the best experience on your phone, install Uplink as a Progressive Web App:
- Open the Tailscale HTTPS URL in your phone's browser (Safari on iOS, Chrome on Android)
- iOS: Tap the Share button → "Add to Home Screen"
- Android: Tap the menu (⋮) → "Install app" or "Add to Home Screen"
- Uplink now appears as a standalone app — full screen, no browser chrome
http://100.x.x.x:3456), voice chat and push notifications won't work because the PWA will be locked to that insecure origin. Always use the https:// Tailscale URL when adding to your home screen.
Configuration
Gateway URL Must Stay Localhost
This is the most common mistake. The OpenClaw gateway only listens on 127.0.0.1. Uplink connects to it locally, then proxies requests to remote clients. Never point GATEWAY_URL at your Tailscale or LAN IP.
# ✅ Correct — gateway is always local
GATEWAY_URL=http://127.0.0.1:23248
# ❌ Wrong — gateway doesn't listen on Tailscale IP
GATEWAY_URL=http://100.85.40.53:23248
If GATEWAY_URL points to a non-localhost address, the UI will load but messages will fail with "No response received."
Authentication
When accessing Uplink over a network (LAN or Tailscale), you should enable authentication to prevent unauthorized access.
# Enable auth (also auto-binds to 0.0.0.0)
UPLINK_AUTH_ENABLED=true
# Set a strong token (or generate one in Settings → Connection)
UPLINK_AUTH_TOKEN=your-long-random-token-here
When auth is enabled, all API requests require the Bearer token. The Uplink UI handles this automatically after you enter the token once.
Allowed Origins
Uplink validates WebSocket and API request origins for security. Tailscale domains (*.ts.net) are automatically allowed. If you're using a custom domain or reverse proxy, you may need to add it to the allowed origins in your config.json:
{
"allowedOrigins": [
"http://localhost:3456",
"https://your-hostname.ts.net:3457"
]
}
Firewall Notes
Tailscale handles its own firewall rules automatically. For LAN access, you may need to allow port 3456 (and 3457 for HTTPS):
# Allow Uplink HTTP + HTTPS
New-NetFirewallRule -DisplayName "Uplink HTTP" -Direction Inbound -Port 3456 -Protocol TCP -Action Allow
New-NetFirewallRule -DisplayName "Uplink HTTPS" -Direction Inbound -Port 3457 -Protocol TCP -Action Allow
sudo ufw allow 3456/tcp
sudo ufw allow 3457/tcp
Multi-Device Sync
All devices connected to the same Uplink server share conversations in real-time. Send a message from your phone, it appears instantly on your desktop — and vice versa. This works automatically via WebSocket, no configuration needed.
Features that sync across devices:
- Chat messages (both directions)
- Typing/thinking indicators
- Tool call activity
- Token usage stats
Troubleshooting
"No response received" errors
Check that GATEWAY_URL is set to http://127.0.0.1:23248 (or whatever port your OpenClaw gateway uses). It must be localhost.
Can't connect from phone
- Verify Network Access is enabled in Settings → Server (or
UPLINK_HOST=0.0.0.0) - Check that both devices are on the same Tailscale network (or same Wi-Fi for LAN)
- Try the Tailscale IP directly:
http://100.x.x.x:3456 - Check firewall rules (see above)
Voice chat not working on mobile
- You must use the HTTPS URL:
https://hostname.ts.net:3457 - Plain HTTP (
http://) blocks microphone access in all browsers - If you installed the PWA from an HTTP URL, delete it and reinstall from the HTTPS URL
- Check that Tailscale is running on the server — Uplink logs will show "Tailscale HTTPS: https://..." at startup
HTTPS certificate errors
- Tailscale must be running and logged in on the server
- The
tailscale certcommand must work — try running it manually - Certificates refresh automatically every 12 hours; restart Uplink if you just set up Tailscale
- Check Uplink server logs for
[Tailscale]messages
PWA won't install
- iOS: Must use Safari (other browsers can't install PWAs on iOS)
- Android: Use Chrome or Edge
- The page must be served over HTTPS for the install prompt to appear