<!-- Canonical page: https://docs.radforge.dev/hosted/remote-commands/ -->

# rad remote commands

Use `rad remote` to submit and manage hosted mutation runs.

## Submit a run

Create a plan, verify hosted access, and submit the plan:

```bash
rad plan --target src/example.ts --json > plan.json
rad remote doctor
rad remote run --artifact plan.json
```

`remote run` uploads the JSON plan and a compressed snapshot of regular files tracked by Git. The snapshot includes tracked files with local changes. It excludes untracked files, symlinks, special files, and paths outside the repository. Radforge rejects a plan that names an untracked source file.

## Check a run

```bash
rad remote status --run run-id
rad remote findings --run run-id
```

## Cancel an attempt

Provide a reason when you cancel the active attempt:

```bash
rad remote cancel --run run-id --attempt attempt-id --reason "Superseded by a new commit"
```

The reason must be one line and at most 512 characters after surrounding whitespace is removed. If the attempt has already finished, cancellation reports that it made no change.

## Retry a run

Retry a completed, failed, or canceled run with the same plan and source snapshot:

```bash
rad remote retry --run run-id
```

The server decides whether a run can be retried. A retry creates a new attempt but does not upload your current working tree. If the code or plan changed, generate and submit a new plan.
