---
title: argusctl compute
description: Manual RunPod GPU pod control. Writes use the PAT /compute/ops/* path (scope compute:write).
---

# argusctl compute



{/* AUTO-GENERATED by scripts/generate-cli-reference.mjs from `argusctl introspect --json`.
    Do not edit by hand. Regenerate with: pnpm generate:cli */}

> Generated from argusctl v0.1.0 on 2026-06-09. Run `argusctl introspect --json` for the machine-readable tree.

## `argusctl compute`

Manual RunPod GPU pod control. Writes use the PAT /compute/ops/\* path (scope compute:write).

```bash
argusctl compute <subcommand>
```

### `argusctl compute list`

List RunPod workers: pods, status, $/hr, and reconciliation drift (dead rows / orphan pods).

```bash
argusctl compute list [options]
```

| Option            | Description                       |
| ----------------- | --------------------------------- |
| `--api <url>`     | API base URL                      |
| `--token <pat>`   | PAT to use                        |
| `--json`          | JSON output                       |
| `--fields <list>` | comma-separated fields to include |

### `argusctl compute up`

Launch a guardrailed RunPod pod (pinned worker). Scope compute:write; sends the confirm="LAUNCH" step-up.

```bash
argusctl compute up [options]
```

| Option                             | Description                                          |
| ---------------------------------- | ---------------------------------------------------- |
| `--gpu-type <id>`                  | RunPod gpu\_type\_id, e.g. "NVIDIA GeForce RTX 4090" |
| `--image <name>`                   | container image to run                               |
| `--reason <text>`                  | why (audited, 3-500 chars)                           |
| `--region <r>`                     | RunPod region                                        |
| `--gpu-count <n>`                  | GPUs per pod (1-8)                                   |
| `--volume-gb <n>`                  | persistent volume size in GB                         |
| `--cloud-type <SECURE\|COMMUNITY>` | RunPod cloud type                                    |
| `--ttl-hours <n>`                  | auto-terminate after N hours (1-168)                 |
| `--confirm-high-cost`              | confirm a launch above the high-cost $/hr threshold  |
| `--dry-run`                        | print the planned call without sending it            |
| `--api <url>`                      | API base URL                                         |
| `--token <pat>`                    | PAT to use                                           |
| `--json`                           | JSON output                                          |
| `--fields <list>`                  | comma-separated fields to include                    |

### `argusctl compute stop`

Gracefully stop a pod (drains cameras first). Scope compute:write.

```bash
argusctl compute stop <workerId> [options]
```

| Argument   | Required |
| ---------- | -------- |
| `workerId` | yes      |

| Option            | Description                               |
| ----------------- | ----------------------------------------- |
| `--reason <text>` | why (audited, 3-500 chars)                |
| `--dry-run`       | print the planned call without sending it |
| `--api <url>`     | API base URL                              |
| `--token <pat>`   | PAT to use                                |
| `--json`          | JSON output                               |
| `--fields <list>` | comma-separated fields to include         |

### `argusctl compute resume`

Resume a stopped pod (re-pinned). Scope compute:write.

```bash
argusctl compute resume <workerId> [options]
```

| Argument   | Required |
| ---------- | -------- |
| `workerId` | yes      |

| Option            | Description                               |
| ----------------- | ----------------------------------------- |
| `--reason <text>` | why (audited, 3-500 chars)                |
| `--ttl-hours <n>` | auto-terminate after N hours (1-168)      |
| `--dry-run`       | print the planned call without sending it |
| `--api <url>`     | API base URL                              |
| `--token <pat>`   | PAT to use                                |
| `--json`          | JSON output                               |
| `--fields <list>` | comma-separated fields to include         |

### `argusctl compute terminate`

DESTRUCTIVE: gracefully terminate a pod (drains then deletes). Requires --yes. Scope compute:write.

```bash
argusctl compute terminate <workerId> [options]
```

| Argument   | Required |
| ---------- | -------- |
| `workerId` | yes      |

| Option            | Description                                |
| ----------------- | ------------------------------------------ |
| `--reason <text>` | why (audited, 3-500 chars)                 |
| `--yes`           | confirm this destructive action (required) |
| `--dry-run`       | print the planned call without sending it  |
| `--api <url>`     | API base URL                               |
| `--token <pat>`   | PAT to use                                 |
| `--json`          | JSON output                                |
| `--fields <list>` | comma-separated fields to include          |

### `argusctl compute served`

Running pods with the stores/cameras each currently serves.

```bash
argusctl compute served [options]
```

| Option            | Description                       |
| ----------------- | --------------------------------- |
| `--api <url>`     | API base URL                      |
| `--token <pat>`   | PAT to use                        |
| `--json`          | JSON output                       |
| `--fields <list>` | comma-separated fields to include |

### `argusctl compute planner`

Recent A–F planner allocation decisions + rationale.

```bash
argusctl compute planner [options]
```

| Option            | Description                       |
| ----------------- | --------------------------------- |
| `--api <url>`     | API base URL                      |
| `--token <pat>`   | PAT to use                        |
| `--json`          | JSON output                       |
| `--fields <list>` | comma-separated fields to include |

### `argusctl compute catalog`

Live GPU pricing/availability catalog (RunPod/AWS).

```bash
argusctl compute catalog [options]
```

| Option               | Description                          |
| -------------------- | ------------------------------------ |
| `--provider <name>`  | filter by provider (runpod\|aws)     |
| `--region <r>`       | filter by region                     |
| `--gpu <model>`      | filter by gpu\_model                 |
| `--rate-kind <kind>` | filter by rate kind (ondemand\|spot) |
| `--include-stale`    | include stale catalog rows           |
| `--limit <n>`        | max rows (1-2000)                    |
| `--api <url>`        | API base URL                         |
| `--token <pat>`      | PAT to use                           |
| `--json`             | JSON output                          |
| `--fields <list>`    | comma-separated fields to include    |

### `argusctl compute strain`

Per-worker utilization/headroom + idle-burn + scale recommendations (derived, read-only).

```bash
argusctl compute strain [options]
```

| Option              | Description                                              |
| ------------------- | -------------------------------------------------------- |
| `--threshold <pct>` | saturation threshold percent (1-100)                     |
| `--watch [seconds]` | live refresh every N seconds (default 5); Ctrl+C to stop |
| `--api <url>`       | API base URL                                             |
| `--token <pat>`     | PAT to use                                               |
| `--json`            | JSON output                                              |
| `--fields <list>`   | comma-separated fields to include                        |

## Examples

```bash
argusctl compute list
argusctl compute up --gpu-type "NVIDIA GeForce RTX 4090" --image my/image:tag --reason "bring up inference"
argusctl compute stop <workerId> --reason "spin down idle"
argusctl compute terminate <workerId> --reason "tear down" --yes
argusctl compute catalog --provider aws --rate-kind spot --limit 10
argusctl compute strain
```


---

For a semantic overview of all documentation, see [/sitemap.md](/sitemap.md)

For an index of all available documentation, see [/llms.txt](/llms.txt)

For agent-facing discovery, including API and MCP surfaces, see [/agents.md](/agents.md)