windows desktops.md
Windows desktops
Computers on demand
A Maritime Windows desktop is a computer for software that only runs on Windows. It is a
computer with os: "windows": the same actions, batch, file, viewer and
takeover contract as a Linux computer, so your model code does not change.
At a glance
| What it is | The same computer on Windows Server 2022 (desktop experience), licence included: the same actions, files, viewer and takeover. exec runs PowerShell. |
| Use it for | Desktop software that only runs on Windows. |
| Use something else when | A browser or a Linux app: Linux desktop. A mobile app: Android phone. |
| Start it | POST /api/v1/computers with "os": "windows", maritime computers create --os windows, or New sandbox (?type=windows). Needs the Growth plan or above, once paid. |
| Lifecycle | Creating one takes a few minutes. It sleeps after 5 idle minutes and hibernates, so its memory is kept; waking takes about 60 to 90 seconds. Its disk is kept until you delete it. |
| Price | $0.18 an hour awake, per second, Windows licence included. Asleep: $0.08 per GB-month of disk. |
| Limits | The Linux desktop limits. Without a paid Growth plan or above, creating one returns 403 os_not_enabled; with no Windows host, 403 machine_unavailable. |
When to use it
- Desktop apps with no web version and no API.
- Workflows your customers run on Windows, where the agent has to see the same screens.
If the software runs on Linux or in a browser, a Linux computer is the simpler choice.
Create one
From the dashboard, open New sandbox
(/dashboard/new-sandbox?type=windows), name the desktop and click Create Windows desktop.
Pass os when the computer is created. An existing computer keeps its own operating system, so the same
externalUserId always returns the same desktop.
REST
curl -X POST https://api.maritime.sh/api/v1/computers \
-H "Authorization: Bearer $MARITIME_API_KEY" \
-H "Content-Type: application/json" \
-d '{"externalUserId": "u_123", "os": "windows"}'
CLI
maritime computers create --os windows
MCP
// the model calls get_computer once per end user
{"name": "get_computer", "arguments": {"user_id": "u_123", "os": "windows"}}
Then drive it exactly as in Computers: the computer action: screenshot, act, verify.
How it differs from a Linux computer
- It runs under QEMU/KVM, not Firecracker. Screen and input come from the virtual machine, not from software inside Windows.
run_shell(REST:exec) runs PowerShell.- The file API keeps the same paths:
/dataisC:\dataand/home/deskisC:\Users\agent.
Lifetime and limits
- It runs Windows Server 2022 (desktop experience), licence included. Creating one takes a few minutes. It sleeps after 5 idle minutes and hibernates, so its memory is kept, and waking takes about 60 to 90 seconds.
- Its disk is kept until you delete the computer. Deleting it deletes the disk.
- It is billed at $0.18 an hour while awake and $0.08 per GB-month of disk while asleep, and it counts toward your awake-at-once limit while it is awake, like any computer. It needs the Growth plan ($100 a month) or above, once the plan is paid; the free trial and Starter can't create one.
- Rate limits, file sizes and errors are the same as for Linux computers.
Full numbers: Computers: limits and errors.