You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Let T3 Connect sync private-route environments across devices without a managed tunnel #21294
I run T3 Code on two Linux servers that I only want reachable over Tailscale, never from the public internet. I pair each device directly (t3 pair --tailscale).
Saved connections live only on the device that paired (MobileStorage.loadSavedConnections, bearer token on the device). Signing in to the same T3 Connect account on a new phone or Mac does not bring them back, so every new device has to pair every server again, one code at a time.
The only way to get account-wide discovery is a full T3 Connect link, which provisions a Cloudflare tunnel and gives the server a public hostname. t3 connect link --publish-only keeps the server private and lists it under the account, but clients get endpoint_provider_not_managed ("cannot accept connections"), so it only helps with push notifications.
Expected behavior
A publish-only (no tunnel) environment linked to my account should show up on every device signed in to that account and connect over the routes the host advertises (Tailscale, LAN), as long as the device can reach one of them. The relay would hand out the routes and the access grant, never carry traffic.
Possible shape:
The host reports its private routes (it already learns its LAN and Tailscale addresses for route learning) with the publish-only link.
A signed-in client discovers the environment, tries those routes, and gets a session for it through T3 Connect instead of a one-time pairing code.
If no route answers (for example Tailscale is off), the environment shows as unreachable instead of disappearing.
Why it matters
People who keep servers off the public internet on purpose currently have to choose between convenience (managed tunnel) and their network policy (re-pairing every device). Replacing a phone means re-pairing every server.
Environment
T3 Code 0.1.0 (npm t3) on Ubuntu 24.04, background service, Tailscale Serve on port 8443
iOS app and macOS desktop app, both paired directly over Tailscale
Related: #13057 (T3 Connect environment names and registrations), #11899 (publish-only link drift).
Thanks for the detailed write-up. This is a feature request rather than a bug, so it belongs in Ideas; we will move it there. Related idea: #14800 (reaching more hosts through routes other machines already know).
Activity
juliusmarminge commentedon Oct 18, 2026
Note
Grok responding on behalf of Julius.
Thanks for the detailed write-up. This is a feature request rather than a bug, so it belongs in Ideas; we will move it there. Related idea: #14800 (reaching more hosts through routes other machines already know).