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.
Start an agent
prized agents run claudeThis starts Claude Code in a detached tmux session named claude on the box, working directory your synced project, and prints the reattach command. The session is created detached on the box, so your laptop's state never mattered to begin with: close the lid and the agent keeps working. Reattach with prized ssh -s claude, or pass --attach to land in the session as it starts. If the session already exists, run reports it as already running instead of starting a duplicate.
--dir picks the working directory (it defaults to your only synced project when there is exactly one); anything after -- is passed to the agent as arguments. A project cloned on the box is not a synced project, so it never feeds that default: pass --dir ~/code/<name> yourself.
A detached session survives a closed laptop, but not every pause: Extra Small and Small boxes hibernate with processes intact, while Medium and larger boxes stop cleanly on pause, so processes restart. A working agent also holds off auto-pause if you enabled it, since its output and CPU count as activity; once the agent finishes, the idle countdown starts. See Boxes.
The four agents
| Agent | On the box | Runs on the box |
|---|---|---|
Claude Code (claude) | Preinstalled. | Yes. |
Codex CLI (codex) | Preinstalled. | Yes. |
Cursor (cursor) | Installed on demand (--install-cursor). | Yes. |
ChatGPT app (chatgpt) | Drives codex over SSH from your Mac. | No; see below. |
chatgpt is a connection, not a process on the box: the ChatGPT desktop app runs Codex against the box over SSH, and its tasks stop when your Mac sleeps. prized agents run chatgpt refuses and says so; for a session that survives a closed laptop, run prized agents run codex. Setting the app up is Codex remote.
See what is set up
prized agents lsOne row per agent: installed and signed in on your Mac, installed and signed in on the box, MCP servers found, and where it is running on the box. Detection is read-only, and an agent you started in any session shows up, whatever the session is named. Takes --json.
Hand credentials to the box
prized agents handoff claude codexThis copies the named agents' sign-in and MCP configuration from your Mac to the box, asking first and listing what would travel; prized setup runs the same handoff as one of its steps. It is a one-shot copy, not a sync: change your MCP config on the Mac and re-run it. --gh also brings your GitHub CLI token and git identity; --install-cursor installs Cursor's CLI on the box first. What travels per tool, and the manual fallback, are in Credentials.
Several agents at once
The default is one session per agent, named after it: claude, codex, cursor. Each can work in its own project via --dir. For a second concurrent run of the same agent, name the session yourself:
prized agents run claude --session claude-api --dir ~/code/api
prized agents run claude --session claude-web --dir ~/code/webprized ssh --ls shows what is running where.
Bring your own agent
The handoff covers the four agents above, but the box is a normal Linux machine, so any CLI agent runs on it. Pick other in setup's agent step and it prints this same pattern with your box's name filled in:
- Open the box:
prized ssh(wakes it if it is asleep). - Install the agent's CLI inside that shell, following its own instructions.
- Sign in inside the box session. The credential lands on the box disk and stays there, so this is once per box, not once per session; Prized's control plane never sees it.
- Run it detached so it survives your closed laptop:
prized ssh -s myagentopens a named tmux session to start it in, or start it from any box shell withtmux new-session -d -s myagent 'the-agent'. Reattach later withprized ssh -s myagent.
For an agent that wants an API key, prefer the dashboard's Connectors over pasting the key into a file: the box gets a placeholder it can use, and the real value never touches its disk. Sessions, prized ssh --ls, and reattach work the same as for the built-in four; the handoff and prized agents run do not know the agent, so signing in and starting it stay yours.
Review from your Mac
For a synced project, the agent's edits stream into the project's folder on your Mac as it works (~/Prized/<name> by default; the folder itself when synced in place), so you read the diff in your own editor with your own git tools. This is also why sync lets the box win conflicts: a stray local save should not revert an agent's work, and that matters most for a folder synced in place. A project cloned on the box has no mirror, so nothing streams: review it over git, with the agent pushing from the box and you pulling or fetching on your Mac.
Agents use the credentials on the box; prized setup or prized agents handoff puts them there, see Credentials. For API keys an agent should use but never read, use Secrets.
An agent on your Mac can also do the Prized setup itself: paste the prompt from Agent setup. For driving the CLI from scripts or agents, every command speaks JSON; see the CLI page.
Something unclear or out of date?
Sessions
Your shell runs on the box. A network drop or a closed lid ends the connection but not the session; reconnect and you are where you left off, running processes included.
Codex remote
Add your box as an SSH host in the ChatGPT desktop app and Codex runs its tasks on the box, with every edit syncing back to your Mac as it lands. One command sets the connection up.