<!-- Canonical page: https://docs.radforge.dev/cli/plan/ -->

# rad plan

Use `rad plan` to write a JSON plan file without running mutations:

```bash
rad plan --target src/billing/entitlement.ts --json > plan.json
```

Planning reads the repository and test configuration but does not run mutations. The JSON file records the source, mutation candidates, selected tests, and requirements for a later run.

Use `--budget` to limit the number of candidates. Use `--allow-broad-tests` only when you accept a broad test set. Do not edit a generated plan by hand. Regenerate it from the repository instead.

Submit the plan with:

```bash
rad remote run --artifact plan.json
```

Before submission, the CLI checks the plan format and repository root. It rejects source files that are not tracked by Git.
