Skip to main content
Use the same managed evaluation service from TypeScript or Python. Evolve runs the jobs; your program submits work and reads the results.
To run agents directly with the Evolve builder, Swarm, or Pipeline, use the separate agent SDK manual.
Python examples in this reference belong inside an async function. The Python guide includes a complete runnable program.

Choose a client

Jobs

Start, follow, compare, retry, and download evaluations.

Trials

Inspect one attempt: reward, trace, and stored files.

Datasets

Browse tasks, publish versions, and inspect builds.

Filesystems

Read live sandbox files and saved captures.

Analyses

Read the analyzer’s results and saved runs.

Checks

Check task quality before running a benchmark.
Also available: agents, uploaded skills, secrets, identity and teams, and platform capabilities.

Look up a method

Use the client guides above for a workflow. Open a method reference for its inputs, returned fields, and Python and TypeScript examples. For failures, start with error handling or find the exact name in the error-code reference.

Configure once

The org default applies when you create jobs, publish datasets, register agents, or upload skills. A call’s own org wins. It does not filter list requests. Prefer a single client when useful: jobs(config), trials(config), and the other factories accept the same configuration. Import auth and managedSecrets / managed_secrets separately; they are not properties of hosted().
meta() needs no key. Other clients authenticate with your API key. TypeScript checks for a key when the client is created; Python checks when it makes an authenticated request.

One page or every item

This pattern applies to list handles, including jobs.trials() and jobs.tasks(). A trace page, stored-file page, grep result, or dataset’s nested task page is a single page; follow its cursor yourself or use the dedicated iterator where available.

Language differences

See types for field access and errors for request failures.
Hosted clients support async with and await client.close():
The individual hosted clients currently have no resources to release in close(). Closing a client does not cancel an evaluation. Use jobs().cancel(job_id) to stop a job.