T3 Code explained: the client controls work on another machine
Deploying T3 Code for remote use
Make the environment reachable without moving files or credentials into the client
What you will learn
- Pick one connection route
- Keep process ownership explicit
- Plan version and recovery
Before you start
- A disposable project on an environment host
- One authenticated supported provider
Turn a disposable trial into evidence before connecting important repositories
Key takeaways
- Remote transport does not relocate execution.
- Hosted UI cannot proxy an unreachable server.
- Server and client versions may differ.
Pick one connection route
The remote guide offers T3 Connect, a private LAN or tailnet pair, Tailscale HTTPS and desktop-managed SSH. These routes change how a client reaches the same environment; they do not create a new execution model.
A hosted web page needs an HTTPS-reachable endpoint. It connects directly to the environment, so a hosted pairing link cannot make an unreachable backend reachable or upgrade a plain HTTP LAN server to HTTPS.
Keep process ownership explicit
On a command-line host, `t3 serve` runs without opening a browser and `t3 service install` can keep it running on macOS or Linux. Desktop-managed SSH can start a remote server and forward a port.
An SSH connection should stop a server only if the desktop launcher started it. A server found already running has its own lifecycle. Record who owns the process before interpreting disconnects or doing cleanup.
Plan version and recovery
Remote clients and environments can upgrade independently. The architecture says clients negotiate server capabilities, while the update protocol owns process replacement.
For a first deployment, pin client and server versions, test pairing from a second device, revoke one test device and simulate a server restart. This article did not deploy a service or verify T3 Connect.
Decision guide
| Criterion | Option A | Option B |
|---|---|---|
| Best when | You need predictable behavior and easy auditing | You need adaptive optimization and have reliable telemetry |
| Main risk | May leave performance on the table | Can become difficult to explain or debug |
Implementation steps
- 1
Select one reachable HTTPS, private-network or SSH route.
- 2
Record who starts and stops the environment process.
- 3
Test pairing, revocation, restart and version mismatch.
Copy-ready example
environment: pinned-server
client: pinned-desktop-or-web
route: private-or-https
process_owner: explicit
pairing_revocation: testedFrequently asked questions
Can the hosted web app connect to plain HTTP LAN from anywhere?
No. It needs a reachable HTTPS endpoint in that browser context.
Does disconnecting SSH always stop the server?
No. Cleanup distinguishes a launcher-owned process from one already running.
Sources
- T3 Code / docs/user/remote-access.mdSource checked 2026-10-04
- T3 Code / docs/user/background-service.mdSource checked 2026-10-04
- T3 Code / docs/internals/remote.mdSource checked 2026-10-04
- T3 Code / docs/internals/server-updates.mdSource checked 2026-10-04
- T3 Code / docs/user/install.mdSource checked 2026-10-04