Skip to main content
Every command below takes the global options.

job start

Start a job; add --watch to follow it. Exactly the options of evolve run.

job list

List jobs, newest first: yours, or --scope shared for your organizations’.
n
Page size.
c
Resume from a page cursor.
keys | all | help
Choose and order columns, comma-separated. help lists the keys.
Print only ids, one per line, for piping.
Full cell content instead of one-line truncation.
Omit the header row in piped (TSV) output.
Free-text filter over job name and dataset names.
my | shared
Visibility scope: my, what you created (the default), or shared, your organizations’ rows that teammates created.

job show

Show one or more jobs in full. It ends with a pass@k block, one line per arm and dataset that has numbers; --json carries the raw stats.evals[].pass_at_k. An analyze row holds the embedded policy and an analysis row the tally with the analyzer’s spend. An uploaded job prints its provider as ported and its spend as reported $X.XX (N/M trials reporting).

job trials

List a job’s trials.
n
Page size.
c
Resume from a page cursor.
keys | all | help
Choose and order columns, comma-separated. help lists the keys.
Print only ids, one per line, for piping.
Full cell content instead of one-line truncation.
Omit the header row in piped (TSV) output.
s1,s2,...
Filter by trial status, for example INFRASTRUCTURE_ERROR.
name
Filter to one dataset’s trials.

job tasks

Per-task rollup of a job: one row per task.
n
Page size.
c
Resume from a page cursor.
keys | all | help
Choose and order columns, comma-separated. help lists the keys.
Print only ids, one per line, for piping.
Full cell content instead of one-line truncation.
Omit the header row in piped (TSV) output.

job compare

Compare two to ten jobs side by side.

job cancel

Request cancellation of a job.

job delete

Permanently delete a job you created: its trials, traces, analyses and stored files. It names the job, then asks. Another member of the organization is refused with org_forbidden; a live job, a running analysis wave or a live regrade refuses as on jobs.
Delete without a confirmation prompt. On a non-interactive stdin the command refuses without it, rather than guessing. With --json the receipt is {"job_id", "trials_deleted", "analyses_deleted"}.

job stop

Stop one dataset’s live trials without cancelling the job. Trials already settled are reported as already terminal, and a dataset the job never spanned is refused. If the command fails part way (a rate limit, say), the report prints first, marked PARTIAL with the trials no answer came back for (partial: true and unreported under --json), then the error, exit 1; re-running the same command finishes the rest.
name
required
The dataset whose live trials to stop.

job resume

A new linked job over a terminal job’s failed or stopped trials.
type
Failure types to resume, matched on the trial’s exception type. Repeatable. Defaults to the standard failure set plus stopped trials.

job retry

A new linked job re-running selected trials: all of them, the failed ones only, or named ids.
Only retry failed trials: SCORING_ERROR, INFRASTRUCTURE_ERROR, BUDGET, INDETERMINATE. Stopped and scored trials are not failures.
trial-id
Retry exactly this trial. Repeatable, all or nothing: each must be settled, and the job may still be running. Not combinable with --failed-only.

job regrade

Verifier-only re-run of a terminal job. The result is a job.
s1,s2,...
Only regrade source trials in these statuses.
name
Only regrade source trials of this task.

job imports

List your job imports (uploads), newest first. This is how an import id is found again.
n
Page size.
c
Resume from a page cursor.
keys | all | help
Choose and order columns, comma-separated. help lists the keys.
Print only ids, one per line, for piping.
Full cell content instead of one-line truncation.
Omit the header row in piped (TSV) output.
QUEUED | RUNNING | COMPLETED | FAILED
Filter by import status.

job import

Show one job import, an upload’s record, with a skipped count and one line per skipped trial when the ingest left any out.
Poll until the import settles: COMPLETED, and the job is printed, or FAILED.

job download

Download the job’s results, unpacked as the standard job-directory tree plus evolve.json records.
dir
Directory to unpack into. Defaults to the current directory. The tree lands in <dir>/job-<id>/.
Replace an existing <dir>/job-<id>/.

job grep

Search every trial’s parsed trace in one server-side pass and print one line per matching trial with its sampled events. The pattern grammar and the page semantics are on jobs().grep().
event-type
Only search events of exactly this type.
n
default:"50"
Per-trial match groups per page. Max 200.
c
Resume after this trial id, the previous page’s nextCursor.

Global options

Machine-readable JSON output.
key
API key. Defaults to $EVOLVE_API_KEY.
url
API base URL. Defaults to the Evolve dashboard API.