relai optimize improves the agent against selected learning environments and registered benchmarks.
Optimization can take a while depending on agent complexity, selected environments, and --total-rollouts. RELAI uses 1/3 of total rollouts for the optimization loop and reserves 2/3 for final before/after evaluation.
Select behavior
| Option | Description |
|---|
--learning-envs {NAMES} | Learning environment names. May be repeated or comma-separated. |
--tags {TAGS} | Tags selecting learning environments. May be repeated or comma-separated. |
--benchmarks {IDS} | Registered benchmark ids. May be repeated or comma-separated. |
--seed-envs {NAMES} | Seed learning environment names used for warm-start scheduling. May be repeated or comma-separated. |
Runtime
| Option | Description |
|---|
--env-file {PATH} | Load simulator runtime variables from a KEY=VALUE file. |
--env {KEY=VALUE} | Set one simulator runtime variable. |
Optimizer controls
| Option | Default | Description |
|---|
--total-rollouts {COUNT} | interactive default 30 | Total simulator rollouts. RELAI uses 1/3 for optimization and reserves 2/3 for final before/after evaluation. Non-interactive runs default to 30 when omitted. Minimum: 6 * batch-size. Current cap: 1000. |
--batch-size {COUNT} | 1 | Environments or tags per optimizer turn. Current cap: 3. |
Early stopping
| Option | Default | Description |
|---|
--early-stop | false | Enable early-stop behavior. |
Examples
relai optimize
relai optimize --learning-envs {name}
relai optimize --tags {tag} --env-file .relai/simulator.env
relai optimize --benchmarks {name} --total-rollouts 50
What to expect
- optimizer progress and rollout results.
- generated or updated optimizer scope at
.relai/optimizer-scope.json.
- repository or optimizer worktree changes when improvements are accepted.
- optional PR output when GitHub CLI is available and authenticated.
Uploaded optimizer runs appear on the Optimizations tab after you open your agent from the Agents page.
--total-rollouts should be set high enough to leave sufficient optimization budget after the 1/3 split. A run needs at least 6 * batch-size total rollouts to start one optimizer turn. Larger values allow more optimization turns before the reserved final evaluation pass.
This workflow can write code changes. Review git status, selected environments, credentials, and rollout budget before running it.
Common failures: missing simulator, dirty tracked files, missing runtime credentials, invalid rollout or batch-size limits, backend optimizer failure, or missing gh for automatic PR flows.