> ## Documentation Index
> Fetch the complete documentation index at: https://vetta.sh/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# vetta computer

> Provision and control sandboxes.

Manage [computers](/docs/capabilities/computer) — disposable Linux sandboxes with an optional browser.

## Commands

| Command                        | Description                           |
| ------------------------------ | ------------------------------------- |
| `vetta computer create`        | Create a computer.                    |
| `vetta computer list`          | List computers.                       |
| `vetta computer show <id>`     | Show a computer.                      |
| `vetta computer exec <id>`     | Run a shell command.                  |
| `vetta computer pause <id>`    | Park the sandbox (storage-only cost). |
| `vetta computer resume <id>`   | Wake the sandbox.                     |
| `vetta computer snapshot <id>` | Capture state to boot from later.     |
| `vetta computer delete <id>`   | Destroy the sandbox.                  |

## create

```bash theme={"system"}
vetta computer create --name box --vcpu 2 --memory-mb 4096 --browser --allowed-domains "*.example.com"
```

| Flag                | Description                                                                                                                                                             |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--name`            | Human-readable name (required).                                                                                                                                         |
| `--vcpu`            | Provisioned vCPU, 1–16 (default 2).                                                                                                                                     |
| `--memory-mb`       | Provisioned memory in MiB, 128–65536 (default 4096).                                                                                                                    |
| `--disk-gb`         | Root disk size in GiB (up to 100).                                                                                                                                      |
| `--mode`            | **`isolate` coming soon (Phase 5).** Today every computer is a micro-VM (`vm`).                                                                                         |
| `--size`            | Optional preset (`small` \| `medium` \| `large`). **Not available yet** — no preset is defined, so passing it is an error; set `--vcpu`, `--memory-mb` and `--disk-gb`. |
| `--browser`         | Attach a managed browser.                                                                                                                                               |
| `--allowed-domains` | Required with `--browser`; comma-separated globs, or `*`.                                                                                                               |
| `--volume <id>`     | Attach a persistent volume.                                                                                                                                             |
| `--snapshot <id>`   | Boot from a snapshot.                                                                                                                                                   |

## exec, pause, resume, snapshot

```bash theme={"system"}
vetta computer exec box -- "ls -la /workspace"
vetta computer pause box
vetta computer resume box
vetta computer snapshot box
```

Snapshots take no `--name`: the call returns a `snapshot_id`, and that id is the handle you pass to
`vetta computer create --snapshot`. Passing `--name` is a hard error, not an ignored flag.

<Tip>
  Computers pause automatically when the agent sleeps between turns, so you rarely pause manually. See [Runtime & durability](/docs/concepts/runtime).
</Tip>

## fs

One command covers the whole filesystem surface. The **operation comes first**, then the computer:
`vetta computer fs <read|write|list|mkdir|remove> <computer-id> --path <path>`.

```bash theme={"system"}
vetta computer fs list cmp_01a02ad8ba0f7bd59115bfd513fc6ed7 --path /etc
```

```json theme={"system"}
{
  "entries": [
    { "name": ".pwd.lock", "type": "file" },
    { "name": "X11", "type": "dir" }
  ]
}
```

```bash theme={"system"}
vetta computer fs read cmp_01a02ad8ba0f7bd59115bfd513fc6ed7 --path /etc/hostname
```

```json theme={"system"}
{
  "path": "/etc/hostname",
  "encoding": "text",
  "content": "eager-falcon-96c0\n"
}
```

`write` takes `--content`, and `--encoding base64` carries bytes that are not text. `remove` and
`mkdir` take only `--path`. Passing the computer id where the operation belongs is a usage error, not
a request:

```
usage: fs op must be read|write|list|mkdir|remove, got "cmp_01a02ad8ba0f7bd59115bfd513fc6ed7"
```
