Desktop.
Every box can show a full Linux desktop, or a single Chrome window, in your browser. It streams over VNC inside the private tunnel; nothing is opened to the internet.
Open
On the box page, open the Desktop tab. Pick Desktop for a 1920x1080 XFCE desktop or Browser for one Chrome window, then click open. From the terminal:
prized desktop
prized browser --url https://example.comThe first open installs the desktop packages on the box (about two minutes, once per box; the tab shows the progress). After that a desktop is up in a few seconds.
| Command | What it does |
|---|---|
prized desktop [BOX] | Start the desktop on the box, forward its VNC port to a free port on 127.0.0.1, and open the dashboard tab. Runs until Ctrl-C. A suspended box is woken first. |
prized browser [BOX] | The same with one Chrome window. --profile NAME picks the profile, --url URL the start page. Identical to prized desktop --browser. |
--no-open | Print the vnc://127.0.0.1:PORT address and the password for a native VNC client instead of opening the dashboard. |
--stop | Stop the desktop (or browser) on the box and exit. Never wakes a paused box. |
--json | Print {"ok":true,"box":"…","mode":"desktop","localPort":…,"password":"…","dashboardUrl":"…"} once the forward listens, open nothing, and keep forwarding until interrupted. |
What you get
- Desktop: XFCE with a terminal, a file manager and Chrome, on a fixed 1920x1080 screen scaled to fit your window.
xdotoolandwmctrlare installed alongside for driving windows from a shell. - Browser: one maximized Chrome window on its own 1920x1080 screen and nothing else. Sign in to a site once and tools on the box can reuse the profile; or browse from the box's network.
- Keyboard and mouse work as in a native window. The tab's header has full screen and two clipboard buttons: paste sends your clipboard to the box, copy takes what was last copied on the box.
- The desktop keeps running when you close the tab. Open it again and you land on the same windows. Stop desktop in the tab, or
prized desktop --stop, ends it.
Browser profiles
A profile is Chrome's user data directory, kept on the box's disk at ~/.prized/browser/<name> (default when you name none). Sign-ins, cookies and extensions persist across restarts, and a snapshot restored into a new box carries them along. Names use letters, digits, - and _, up to 64 characters.
- Starting the browser with a different profile replaces the running window.
- Starting it again with the same profile and a URL opens that page as a new tab in the running window.
Pause and resume
The desktop is processes, not disk. Nano through Small boxes hibernate and bring it back as it was; on Medium and larger a pause is a clean stop, so the desktop is gone on resume and the tab starts a fresh one. Files, installed packages and browser profiles are on the disk and survive either way. See Pause and resume.
A running desktop may count as activity for auto-pause even with nobody connected: the screen keeps being redrawn and polled. If you rely on auto-pause, stop the desktop when you are done.
Security
- The VNC server listens on the box's loopback only. Nothing new is reachable from the internet; the box keeps zero inbound ports.
- The VNC password is random and lives only on the box, in a file only your user can read. It is generated when the desktop starts from nothing; opening it again while it runs reuses the same one, so a second viewer never cuts off the first. Stopping the desktop deletes it, and so does a pause on a size that stops processes, so the next start gets a new one. The dashboard uses it for you;
--no-openprints it. - The dashboard reaches the desktop through the same path as its terminal tab: a ten-minute ticket minted by your signed-in session, the WireGuard tunnel, and a short-lived SSH certificate. The CLI forwards the port over your own SSH session; the tunnel alone cannot reach it.
- Like any listener on the box, the VNC port (5910 for the desktop, 5911 for the browser) appears in
prized ports. It requires the password, and you do not need to mirror it: the desktop command forwards it itself.
Limits
- VNC, not video: a responsive desktop for editors, terminals and browsing, not smooth full-motion video. No audio.
- Fixed 1920x1080, scaled to your window. No WebRTC or Moonlight path yet, and no GPU on any box size.
- No GUI automation agent.
xdotoolandwmctrlare on the box for scripts:DISPLAY=:10 xdotool …targets the desktop,DISPLAY=:11the browser window. - One desktop and one browser window per box.
Troubleshooting
| Symptom | What to do |
|---|---|
desktop install failed | The first-run install did not finish. On the box: cat ~/.prized/desktop/install.log, fix what it names (usually the network or a held apt lock), then open the tab again. |
| A black screen after connecting | The session is still starting; give it a few seconds. If it stays black, click Stop desktop and open again. |
the box refused the VNC password | A stale password after the box restarted. Open the tab again; it fetches the current one. |
| No Chrome window in browser mode | Chrome did not start. On the box: cat ~/.prized/desktop/browser-session.log. A profile in use by another Chrome on the box blocks a second one; stop that first. |
| Shortcuts go to your own browser | Use full screen; most shortcuts then reach the box. Cmd/Ctrl+W, Cmd/Ctrl+T and the like always stay with your browser. |
prized desktop says the box is unreachable | The desktop needs the same tunnel as prized ssh: run prized doctor. |
Something unclear or out of date?
Run commands and files
Run a command on your box and get its exit code back, leave one running and check on it later, and copy files in either direction, from the CLI or from any script that holds a CLI token. Nothing to install on the box.
Agents
Start a coding agent, close the laptop, and let it work. An agent is an ordinary process on a machine you already pay for, so nothing it does is metered.