On your home Wi-Fi, your phone can reach a model server on your computer directly. Away from home it cannot, because your home network is private and the computer has no public address.
Tailscale fixes this. It creates a private network, your tailnet, between the devices you sign in on, and gives each one a fixed address that works at home, on mobile data or on hotel Wi-Fi. SteerClaw treats Tailscale addresses like your home network. Setup takes about ten minutes, with no router changes, port forwarding or domain name.
Before you start
Set up a model server on the computer first, such as Ollama or LM Studio, and check that SteerClaw connects to it on your home Wi-Fi.
The server must accept connections from other devices, not only from the computer itself:
- Ollama: the Ollama guide shows the setting.
- LM Studio: turn on Serve on Local Network in the Developer tab’s server settings.
- llama.cpp: start the server with
--host 0.0.0.0.
Step 1: Install Tailscale on the computer
- Download Tailscale. Get it from tailscale.com/download. The Mac version needs macOS 13 (Ventura) or newer. Windows needs Windows 10 or newer. On Linux, the one-line installer is
curl -fsSL https://tailscale.com/install.sh | shfollowed bysudo tailscale up. - Sign in. Tailscale uses an existing identity, such as a Google, Microsoft, Apple or GitHub account, or a passkey. Remember which one you used; the phone must sign in with the same account.
- Note the computer's Tailscale address. Open the Tailscale menu on the computer and you will see an address that starts with
100.; click it to copy it. You can also runtailscale ip -4in a terminal (on a Mac, first install the command-line tool from Tailscale's settings), or open the Machines page in the Tailscale admin console, which lists every device with its name and address.
The address stays the same as long as the computer is in your tailnet. You can also use the computer’s name, such as my-mac, instead of the number. Tailscale’s MagicDNS feature makes this work and is on by default for tailnets created since October 2022. The name is shown on the Machines page, where you can change it.
Step 2: Install Tailscale on your phone
- Install the app. Tailscale is on Google Play for Android 8.0 and newer, and on the App Store for iOS 15 and newer.
- Allow the VPN configuration. Open the app and tap Get Started. Accept the phone's request to add a VPN; Tailscale needs it to reach your other devices.
- Sign in with the same account. Tap Log in and use the account from the computer. Devices only see each other in the same tailnet.
- Check that the computer is listed. The app shows every device in your tailnet, including the computer with the address you noted.
Step 3: Add the Tailscale address in SteerClaw
- Open Settings, tap AI Models, then Your own server. The Connect your server screen opens. It works with Ollama, LM Studio, llama.cpp, vLLM and other compatible servers.
- Enter the server address. Use the computer's Tailscale address and the server's port, for example
http://100.101.102.103:11434for Ollama orhttp://100.101.102.103:1234for LM Studio. The MagicDNS name works too:http://my-mac:11434. SteerClaw adds/v1. In Server options you can name the connection, for example "Mac over Tailscale", and paste LM Studio's API token if you turned on Require Authentication. Then tap Connect. - Approve the local connection. SteerClaw asks "Connect to this local server?" and warns that traffic to the address is not encrypted. Over Tailscale the tunnel encrypts the traffic, so it is safe to tap Allow & discover.
- Pick a model. SteerClaw lists the server's models. For agent work, pick one that supports tool calling; the Ollama guide lists the ones we recommend.
If you also added the home Wi-Fi address, you now have two connections to the same computer and can switch between them in the model picker.
Keeping the computer reachable
Tailscale only helps while the computer is awake and the server is running.
- Stop the computer from sleeping. On a Mac desktop: System Settings, Energy, “Prevent automatic sleeping when the display is off”. On a MacBook: System Settings, Battery, Options, “Prevent automatic sleeping on power adapter when the display is off”; closing the lid still puts it to sleep. On Windows: Settings, System, Power & battery, Screen, sleep & hibernate timeouts, and set the sleep time to Never while plugged in.
- Start the server at login. The Ollama desktop app can start at login and keep serving in the background. For LM Studio, see its guide to running as a service.
- Leave Tailscale running. Both desktop apps can start at login. On the phone, leave Tailscale connected, or on iPhone have it connect when you leave home: in the Tailscale app, tap your profile picture, then VPN On Demand, and set Wi-Fi to Except On your home network.
Optional, for advanced users: HTTPS with Tailscale Serve
Plain HTTP is fine over Tailscale, because the tunnel encrypts it. If you want an https:// address anyway, Tailscale can put a certificate in front of the server. On the computer, run:
tailscale serve --bg 11434
Tailscale prints an address like https://my-mac.tail1234.ts.net, reachable only from your tailnet. Use that address in SteerClaw with no port; because it is HTTPS, SteerClaw does not show the local-server warning. Keep the Ollama network setting from the Ollama guide: if Ollama only accepts connections from the computer itself, it rejects requests through Serve with a 403 error. The first time, Tailscale may ask you to enable HTTPS certificates for your tailnet in the admin console under DNS. Use tailscale serve status to check and tailscale serve reset to remove it.
Do not use Tailscale Funnel for this: it publishes the server to the whole internet.
If it does not connect
- “Can’t reach this server.” Confirm that the server accepts connections from other devices, not only from the computer itself. With Tailscale on, open
http://100.x.y.z:11434in the phone’s browser, with your computer’s address; Ollama replies “Ollama is running”. For LM Studio, openhttp://100.x.y.z:1234/v1/models, which lists your models. If the page cannot connect, the server setting is wrong. - Both Tailscale apps show connected but nothing loads. The devices are probably signed in with different accounts. The Machines page of the admin console must list both.
- It worked yesterday. The computer is probably asleep, or the server app has quit. Tailscale shows it as offline. If it stopped after months of working, the computer’s Tailscale login may have expired, which happens after 180 days by default. Sign in again, or choose Disable key expiry for that machine on the Machines page.
- The computer’s name does not work, but the 100. address does. Use the address. On a Mac, the
hostandnslookupcommands bypass Tailscale’s names, so test in a browser instead. - A firewall prompt appeared on the computer. Allow the server app to accept incoming connections. On Windows, choose private networks when it asks.
Other ways to do this
- WireGuard on its own, the protocol Tailscale builds on, for experienced users. You manage the keys yourself, and it needs a reachable address or port forwarding.
- ZeroTier works much like Tailscale, with a free tier for personal use on up to ten devices.
- Cloudflare Tunnel publishes a service to a public address, so it is a poor fit unless you also put it behind Cloudflare Access.
If you only use the model at home, the local address on your Wi-Fi is all you need.
Frequently asked questions
Do I need Tailscale if my phone and computer are on the same Wi-Fi?
No. On the same Wi-Fi, the computer's local address, such as http://192.168.1.10:11434, works. Tailscale is for when you leave that network. Its address also never changes, unlike a local one.
Is Tailscale free for this?
Yes. Tailscale's Personal plan is free for up to six users with unlimited devices, so your phone and every computer you own fit in it. Tailscale's pricing page lists the current terms.
Is the traffic between my phone and computer encrypted?
Yes. Tailscale uses WireGuard and encrypts every packet end to end between your devices. When traffic passes through one of Tailscale's relay servers, the relay cannot read it. SteerClaw still warns about unencrypted traffic for a Tailscale address, because it cannot confirm the traffic goes through Tailscale (some mobile networks use the same 100.x addresses). Over Tailscale, it is safe to approve.
Why does SteerClaw say it can't reach my server even though Tailscale is connected?
Almost always, the model server only accepts connections from the computer itself. Ollama, LM Studio and llama.cpp all start that way; the Before you start section shows the setting for each. The next most common cause is the computer being asleep.
Will Tailscale drain my phone's battery?
An always-on VPN uses some battery; Tailscale does not publish a figure. Use is highest when all traffic goes through an exit node, which this setup does not need. If you use your model only now and then, turn Tailscale on when you need it, or on iPhone let VPN On Demand connect it when you leave home.