# Machines

> What a box is made of: its size and disk, Ubuntu 24.04 on a dedicated x86_64 virtual machine, preinstalled software, and the Prized processes beside your work.

URL: https://prized.dev/docs/machines

## Sizes [#sizes]

The live shape and price table is at https://prized.dev/pricing.

Pick a size by label, short name, or id (`prized box new --size Small`; `xs`, `s`, `m`, `l`, `xl`; `nano`, `micro`, `lite`, `flow`, `pro`, `max`, `ultra`) or in the create form, and change it with a [resize](https://prized.dev/docs/boxes#resize). Rates and plans are on [Billing](https://prized.dev/docs/billing).

* **Nano and Micro are burstable**, for editors, agents, and small dev servers rather than sustained full-CPU load; Extra Small and up are fixed-performance.
* **Memory decides what a pause keeps:** Nano through Small hibernate, Medium and larger stop clean ([Pause and resume](https://prized.dev/docs/boxes#pause-and-resume)).
* **The [free credit](https://prized.dev/docs/billing#free-credit) starts Nano through Small,** one box at a time, and a box started on it can be resized within those four; Medium and larger come with a plan.

## Disk [#disk]

One encrypted volume is the box's only disk, holding your home directory, Docker images, and the system.

| Fact      | Detail                                                                                                                                                                                           |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Type      | SSD (EBS gp3) at baseline performance, always encrypted, as are its snapshots                                                                                                                    |
| Size      | The Disk column above, 40 GB on a Nano to 2 TB on an Extra Large                                                                                                                                 |
| Growing   | Sizing up grows the disk in the same restart ([Resize](https://prized.dev/docs/boxes#resize))                                                                                                                      |
| Shrinking | Never. A box that kept a bigger disk than its size pays that disk's sleep rate, and a snapshot restores only into a size whose disk holds it ([Restore](https://prized.dev/docs/snapshots#restore-into-a-new-box)) |
| Paused    | The disk stays, at the sleep rate; after 14 days paused it is parked as a snapshot, deep sleep ([States](https://prized.dev/docs/boxes#states))                                                                    |
| Snapshots | Block-level, incremental images of this disk, taken while the box runs ([Snapshots](https://prized.dev/docs/snapshots))                                                                                            |

## Operating system [#operating-system]

Ubuntu 24.04 LTS, fully upgraded when the box image was built. Your login user has passwordless `sudo`, is in the `docker` group, and can `apt install` whatever is missing.

* **Your login user is your first name**: lowercased, accents folded, leading digits dropped, only letters, digits, and hyphens, up to 31 characters (`José` signs in as `jose`). It is `doppel` when nothing usable survives, when the name collides with a system account such as `git`, and on a Small box that was ready before you asked for it ([Boxes](https://prized.dev/docs/boxes)); a box restored or forked from a snapshot keeps its source box's user. `prized box info` shows it.
* **Your user services outlive your session.** `systemctl --user` services you enable start when the box boots and keep running after you log out (except on infinite storage boxes).
* **Sandboxes work.** `bwrap` has the AppArmor grant the Claude Code and Codex command sandboxes need; Ubuntu's restriction on unprivileged user namespaces otherwise stays on.

## Preinstalled software [#preinstalled-software]

A fresh box has all of this from first boot, signed in to nothing; your agents' credentials come from [your machine](https://prized.dev/docs/credentials).

| What                           | On the box                                                                                                         |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
| Docker Engine, Compose, Buildx | `docker`, `docker compose`, `docker buildx`; the daemon starts at boot, no `sudo` needed                           |
| Claude Code, Codex CLI         | `claude`, `codex`; per user, each updates itself in place                                                          |
| GitHub CLI                     | `gh`                                                                                                               |
| Compilers and build tools      | `gcc`, `g++`, `make`, `pkg-config`, `git`                                                                          |
| Python                         | `python3`, `pip`, `venv`                                                                                           |
| Shell tools                    | `tmux`, `mosh`, `rg`, `fd`, `jq`, `htop`, `rsync`, `sqlite3`, `zip`, `unzip`, `zstd`, `curl`, `wget`               |
| Desktop stack                  | XFCE, Xvfb, x11vnc, Google Chrome, `xdotool`, `wmctrl`; nothing starts until you open the [desktop](https://prized.dev/docs/desktop) |
| Sandboxing                     | `bwrap` (bubblewrap), with the AppArmor profile above                                                              |
| Sync agent                     | Mutagen's agent, fetched on the first `prized sync add` or `prized setup` ([Sync](https://prized.dev/docs/sync))                     |

Not preinstalled: Node.js, Go, Rust, Homebrew, databases, and the rest of a working environment. `prized setup` installs the versions your machine has ([Bring your environment](https://prized.dev/docs/environment)); for a first boot that repeats across boxes, use an [environment](https://prized.dev/docs/environments).

## Architecture and virtualization [#architecture-and-virtualization]

| Fact                  | Detail                                                                                                                  |
| --------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| CPU architecture      | x86\_64 (amd64) only; no arm64 sizes. `prized env` rebuilds or re-pulls arm64-only Docker images for amd64              |
| Virtualization        | One virtual machine per box with its own kernel, not a container or a shared host; Docker works as on any Linux machine |
| Nested virtualization | Off; KVM is not available inside a box                                                                                  |
| GPU                   | None                                                                                                                    |
| Cloud credentials     | None: a box carries no cloud role, so nothing you run finds provider credentials on it                                  |

Each size maps to one EC2 instance type:

| Size        | Instance type            |
| ----------- | ------------------------ |
| Nano        | `t3a.small` (burstable)  |
| Micro       | `t3a.medium` (burstable) |
| Extra Small | `m6a.large`              |
| Small       | `m6a.xlarge`             |
| Medium      | `m6a.2xlarge`            |
| Large       | `m6a.4xlarge`            |
| Extra Large | `m6a.8xlarge`            |

## Regions [#regions]

| Region               | AWS id         | In the CLI            |
| -------------------- | -------------- | --------------------- |
| US West (Oregon)     | `us-west-2`    | `oregon`, the default |
| US West (California) | `us-west-1`    | `california`          |
| US East (Virginia)   | `us-east-1`    | `virginia`            |
| US East (Ohio)       | `us-east-2`    | `ohio`                |
| Europe (Frankfurt)   | `eu-central-1` | `frankfurt`           |

A box lives in one region and can [move](https://prized.dev/docs/boxes#regions). A size costs the same in every region; a snapshot stays in its box's region. The CLI takes a region by AWS id or by name; CLIs older than these regions know only `oregon` and `california` by name, and take the AWS id for the rest.

## What runs on the box [#what-runs-on-the-box]

Beside your own processes, a fresh box runs these Prized services as ordinary systemd units (`systemctl status prized-agent`).

| Process                                          | What it does for you                                                                                                                                                                                                                      | What it can see                                                                                                        |
| ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `prized-agent`, as your login user               | Lists listening ports and their processes; samples CPU, memory, disk, and network; lists tmux sessions; judges idleness for [auto-pause](https://prized.dev/docs/boxes#auto-pause); relays loopback-only ports for [mirroring](https://prized.dev/docs/ports); updates itself | A read-only view of the system and process table; never pauses the box itself                                          |
| `prized-secretsd`, root, loopback only           | The [secrets broker](https://prized.dev/docs/credentials#secrets-for-agents): swaps a placeholder for the real value on requests to the hosts you allowlisted                                                                                               | Secret values in memory only; idle until a secret is mounted                                                           |
| `sshd`, root, tunnel only                        | Your [sessions](https://prized.dev/docs/sessions), sync, mount, `prized exec`, and every SSH-speaking tool                                                                                                                                                  | Accepts Prized's short-lived certificates, the device keys registered for you, and any key in `~/.ssh/authorized_keys` |
| The tunnel, WireGuard and its websocket fallback | The two ports open to the internet, `udp/51820` and `tcp/443`                                                                                                                                                                             | Encrypted tunnel traffic only                                                                                          |

On demand: the Mutagen agent while a project syncs, the desktop stack while a desktop is open, and helper scripts the first [remote prompt](https://prized.dev/docs/remote-agents) installs. The box sends Prized telemetry only (vitals, listening ports, top processes, versions), never your files, terminal output, secret values, or agents' sign-ins ([Security](https://prized.dev/docs/security), [Data retention](https://prized.dev/docs/data-retention#telemetry-retention-windows)).

## Networking [#networking]

| Fact              | Detail                                                                                                                                                                                                                                                                                                                                  |
| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Inbound           | Only the tunnel's two ports, on the box's own public IPv4 address. SSH is never on the internet: it and every port you run are reached through the tunnel ([Ports](https://prized.dev/docs/ports), [Sessions](https://prized.dev/docs/sessions), [Credentials](https://prized.dev/docs/credentials#the-machine-itself))                                                                       |
| Public ports      | None on the box's own address. To show a running server, [share the port](https://prized.dev/docs/ports#share-a-port): a link for signed-in members of your workspace, or, in a paying workspace, for anyone you send it to                                                                                                                               |
| Outbound          | Not filtered                                                                                                                                                                                                                                                                                                                            |
| From your machine | WireGuard over UDP 51820. Where UDP is blocked, the same tunnel goes over HTTPS via the Prized relay (`term.prized.dev`) or the box's port 443, whichever gets through, and through your proxy if set (`HTTPS_PROXY`, or a Mac's system proxy) ([Networks that block the tunnel](https://prized.dev/docs/troubleshooting#networks-that-block-the-tunnel)) |
| Public IP         | Not stable: it changes on a pause and on a [region move](https://prized.dev/docs/boxes#regions); `prized ssh` follows the box                                                                                                                                                                                                                             |
