The dashboard
A full-screen terminal UI over SSH: machines, shells, files, and account settings in one place.
Opening the dashboard
$ ssh dashboard@ironwire.sh
No client to install. Watch machines live, open shells, and reach the few settings that only exist here (delete protection, fleet access, takes orders, themes, devices, passkeys). Prefer one-shot commands and scripts? Everything lifecycle-related is also a plain SSH command; see the command reference.
If a service message is active, an announcement ribbon appears across the top. Planned maintenance and similar notices show up there.
The machine list
The main screen is a table of your machines, refreshed every 2 seconds:
| Column | Meaning |
|---|---|
| NAME | Machine name |
| STATE | running, stopped, paused, booting, … |
| IP | Internal address, reachable from your other machines |
| DNS | The machine's <name>.internal name, what your other machines reach it by and what to put in a config: it survives the machine being recreated, the address does not |
| CREATED | The machine's creation date. Uptime and the relative age live in the actions popup's info panel. |
| CPU | Live CPU %, sampled while running |
| MEM | Memory used, % of total |
| DISK | Disk used, % of total |
| DRIVE | attached if the shared drive is mounted |
| SSH | The machine's direct SSH endpoint |
| URL | Custom domain (with (pending) until active) or the machine's HTTPS URL |
Cells show — when there's nothing to report (a stopped machine has no live stats). A machine being created or copied appears as a spinner row until it's ready.
Sorting
Press ↑ past the top row to focus the header, then ←/→ to pick NAME, STATE, or CREATED and Enter to sort; Enter again flips the direction (the active column shows ▲/▼). Esc or ↓ returns to the rows. Your sort is saved on the account and follows you across devices; the default is newest first.
Keys and actions
Move with ↑/↓ (or k/j), then:
| Key | Action |
|---|---|
| Enter | Connect: open a shell on the machine, or on an online outpost |
| Space | Actions popup for the selected machine |
| n | New machine |
| s | Stop / start |
| p | Pause / resume |
| r | Restart (running machines) |
| y | Copy (paused or stopped machines) |
| z | Resize |
| o | Ports |
| m | Custom domain |
| t | Stats popup: CPU/memory/disk graphs over 1h, 24h, 7d, or 30d (←/→ to change range) |
| e | Env vars (account-global; per-machine env is in the actions popup) |
| d | Shared drive |
| g | Toggle delete protection |
| c | Toggle fleet access (let this machine command your other machines) |
| b | Toggle takes orders (let your other machines command this one), in the actions popup |
| x | Delete (press y to confirm) |
| f | File manager |
| a | Account (appearance, devices, passkeys, outposts, billing, settings) |
| ? | Help |
| q | Quit |
The Space actions popup lists the same operations, filtered to what the machine's state allows, beside an info panel with the machine's vitals: state, image, vCPUs, memory, disk, IP, DNS name, SSH, URL, drive, email address, restart policy. Press i to see what the highlighted action does.
Shells
Press Enter on a running machine to open a shell inside a frame that stays connected to the dashboard. Open shells appear as tabs along the frame, tmux-style, numbered for the first nine. An outpost that is online and was linked with a shell opens the same way, with the same tabs and keys.
| Key | Action |
|---|---|
| F2 | Detach: back to the dashboard, the shell keeps running |
| F3 | Shell switcher popup: 1 to 9 jump, ↑/↓ + Enter select, x close a shell, Esc cancel |
| F5 / F6 | Previous / next open shell |
| Shift+PageUp / PageDown | Scroll back / forward half a screen |
Each shell keeps 10000 lines of scrollback. While scrolled, the status bar shows how far up you are; any other keystroke snaps back to live. Inside full-screen apps (vim, htop) the paging keys pass through to the app.
Type exit to close the shell; if other shells are open you land in one of them, otherwise back on the machine list.
Mouse and clipboard
At a plain prompt, the wheel scrolls and click-drag selects; releasing the button copies to your local clipboard via OSC 52 (most modern terminals). Double-click selects a word, triple-click a line. Middle-click pastes the last in-shell selection. When an app like vim or htop takes over the mouse, clicks and wheel events are forwarded to it untouched.
The file manager
Press f for a dual-pane file manager. Each pane starts at a location picker listing your running machines (browsed over SFTP) and your shared drive, if you have one. Machine panes open in the login user's home directory; the drive pane at its root.
| Key | Action |
|---|---|
| Tab | Switch pane |
| Enter / → | Enter directory |
| Backspace / ← | Up one level (from /, back to the picker) |
| v | View a file |
| Space | Tag files for a multi-file operation |
| y / m | Copy / move to the other pane |
| a | New folder |
| r / x | Rename / delete |
| g | Refresh |
| Esc | Back to the dashboard |
Listings sort ls -la style: dotfiles and dotfolders first, directories before files, then case-insensitive by name. The viewer shows the first 64 KiB of text files (with line numbers); binary files show their details instead. View-only; use a shell to edit. Copies between machines, or between a machine and the shared drive, stream through the file manager; if the destination runs out of room you get not enough space at the destination — nothing was copied.
Themes
Press a and open Appearance to change the theme. Ten available: Amber (the default), Green P1, Cyan CRT, C64, Synthwave, Paperwhite, Plasma, Gameboy, Ice, and Gold. ↑/↓ previews live, Enter saves, Esc reverts. The theme is stored on your account and also colors shell frames and tab strips. See accounts & devices for the rest of the account screen.
Your details and your timezone
Press a and open Settings. Three things live here, and all three belong to the account itself rather than to any plan: they are available whether or not the server sells subscriptions.
↑/↓ move between the rows and Enter changes the highlighted one; the footer tells you what Enter will do to it. Each row is edited the way that suits it (a box to type in for the address, an instant flip for mailings, a searchable list for the timezone) and every change takes effect straight away, so there is nothing to save.
| The address for account and service notices. Enter opens it prefilled; Enter saves and an empty field clears it. Typing an address never confirms it (only a completed payment does), so a correction always reads (unconfirmed) afterwards, even if the old one was confirmed. | |
| MAILINGS | Whether you agreed to hear from us about new features and offers. Enter toggles it. The row also shows when you answered and where: at checkout, at signup, or here. This covers marketing only: receipts, failed payments, and anything about your account still reach you either way. |
| TIMEZONE | The zone every date and time in the dashboard is shown in. Enter opens a picker of every zone; type to narrow it, ↑/↓ to move, Enter to save. The change lands immediately; no need to reconnect. |
Dates read year-month-day everywhere: 2026-08-27. In file listings the two most recent days are named instead, today and yesterday, worked out in your zone, so they mean the day you are actually living in.
If you have never picked a zone, everything reads UTC. That is deliberate: where the server happens to sit is not a fact about you.