Accounts and links
One link that stays the same when the address does not.
Sharing works signed out. The address a Cloudflare quick tunnel hands out is a working one, and signed out that is all there is. What it is not is stable — it is different after every restart, so it cannot be saved on a phone — and Cloudflare offers it for testing and development, with no uptime guarantee. Its limits are in Ways to run.
st login # approve a code on whatever device has a browser
st # now prints a second link, which does not change
st machines # every machine on this account, and its link
st whoami
st logoutst login prints a code and a QR, and waits while you approve it on another device that has a browser.
Naming a machine
A machine is listed under its hostname until you give it a name of your own. The name is only a label: the link stays the same, and the hostname does not come back later.
- Dashboard. On the dashboard, the pencil beside a machine renames it. Use hostname goes back.
- Apps. Machines → the machine's menu → Rename.
- CLI.
st rename <name>names the machine it runs on, andst rename --resetgoes back to the hostname.
A name is up to 40 characters, in any script.
Machine status
The dashboard says what each machine is doing. A machine that is not online is dimmed, with how long ago it was last seen, and its agents' states are hidden. Its last memory and session list stay, marked last known.
Under its name, each machine says what it runs, as its st last reported: the st version and the multiplexer by name and version, such as st 0.3.96 · psmux 3.4.0 or tmux 3.5a. Nothing is guessed: a part st did not report is left out, and a machine whose st reports none of it has no such line. It stays while the machine is offline.
Under each session of an online machine are its windows, and in a window where an agent runs, the agent with its state, its subagents by type (how many are running and for how long) and, for a Claude Code agent team, the teammates under their lead, with team ended on one whose team is over. What each subagent is doing is not here: that stays on your computer. Tap a window to open the session in the terminal with its windows list, which asks the computer and shows it. A machine on st older than v0.3.50 shows its sessions without windows.
| Status | What it means | What to do |
|---|---|---|
| Offline | It stopped answering without saying why — a computer that went to sleep looks like this too | Check that the computer is on, awake and connected; st comes back by itself |
| st stopped | st was stopped (st exit, its service stopping, or on Linux the computer shutting down) | Run st on it, or st service install so it starts with the computer |
| Updating | st is installing an update | Nothing; it is usually back within a minute |
| Signed out | The machine's sign-in was revoked or expired | Run st login on it |
| Online · tunnel unavailable | st is running, but its tunnel is down | Nothing; st keeps trying |
| Restoring terminal… | tmux stopped and st is setting it up again | Nothing; see multiplexers |
Click a machine that is not online, or its status, for the same explanation on the page. Opening a machine link while it is away shows it too. st stopped, Updating and Signed out need st v0.3.32 or later; with an older one those machines show as Offline. A sleeping computer is Offline until it wakes.
The terminal in the browser keeps reconnecting on its own while a phone locks and wakes. If it cannot get through for about half a minute, it stops and says why: this device has no network, the machine cannot be reached, or st answers but the terminal does not. try again tries once more; so does coming back to the tab.
Link access
The link is an address, not a key. It opens only for the machine's owner, signed in:
- In a browser, opening it takes you to sophonz.io to sign in -- or straight through, if you already are -- and then on to the machine. Signed in as someone else, it says there is no such machine.
- In the app, it opens when the app is signed in to the same account.
So a link pasted into a chat opens nothing for whoever else reads it. The account button at the top of the site shows who you are signed in as; signing out there also ends the sign-in the next link would otherwise reuse. A browser that opened a machine this way stays in for 12 hours, or until sign out in that machine's terminal.
Stored data
The control plane holds that machine's current address and nothing else. When the owner follows the link, it asks that machine's agent for a key good for one visit and about a minute, and passes it on. The token that opens the terminal never leaves the machine, so a copy of that database is not a set of keys to anybody's shell.
Neither the machine's agent nor the control plane stores anything that would still work tomorrow.
Only a machine that was signed in when st started hands out these keys. One that never signed in hands them to nobody.