Skip to main content
Create client with checks(). A check id identifies the group. Each results[] entry has a task check id identifying one checker run.
Python returns check and task-check records as dictionaries. Use check["id"] and check["results"].

create

Check a local task directory, a directory of tasks, or a published dataset. Returns the accepted Check immediately.
Supply exactly one source. A local source must be a directory, not an archive. include_task_names and exclude_task_names are glob lists; n_tasks caps the selected set after filtering. n_concurrent is bounded by organization capacity. Optional onUploadProgress(sent, total) / on_upload_progress(sent, total) reports local transfer bytes. All omitted policy settings use defaults. The accepted check records the resolved policy. Follow with watch(check.id) / watch(check["id"]).

get

Read a check at any status. Returns Check, including one task-check result per selected task.
Use the group’s check id. See all check fields.

list

List visible checks, newest first. Returns a page or an iterable of Check.
Optional scope: my (default), shared, or org; status: a list of queued, running, or completed; dataset: a bare name or pinned name@version. limit defaults to 50 (maximum 200); cursor continues a page.

defaults

Read CheckDefaults: current model, reasoning effort, sandbox provider, rubric, and unrendered prompt template.
Python returns a dictionary. The check’s prompt uses {task_path}, {file_tree}, and {criteria_guidance}; the output contract is appended after your template.

watch

Wait until every task check has settled. Returns the final Check, which may contain failed task checks.
Optional onProgress(check) / on_progress(check) runs when per-task statuses change. pollIntervalMs / poll_interval_s defaults to 2 seconds, doubles while unchanged to 30 seconds, and resets on change. TypeScript accepts signal; Python accepts timeout_s.

task

TypeScript only. Read one checker’s TaskCheck result at any status.
Use check.results[].id, not the group’s id. Python reads the same result within check["results"]. The result contains checks, attempts, measured cost, and typed failure.

transcript

TypeScript only. Read one checker’s own activity. Returns TaskCheckTranscript.
Optional since skips that many events; default 0. No server pagination. total counts all stored events; gateway_calls is separate and returned whole. Transcript fields include the owning check_id and dataset.

artifact

TypeScript only. Read one checker’s stored stdout, stderr, or captured home.
Use the task check id. trace-stdout and trace-stderr return string | null; agent-home returns a path-to-text map or null. Null means not stored. Python can read stored evidence from download(task_check_id).

download

Download a settled whole check or one task check as a .tar.gz. Both id forms use the same method.
Omit options for Buffer / bytes; use to for a saved file path. TypeScript also accepts { stream: true }, a raw stream whose integrity the caller verifies. Python has no stream option. A live group or task check returns check_not_terminal. The group archive includes check_report.json and each checker’s wrapper trial.

taskFilesystem

Python: task_filesystem. Get one checker’s RunFilesystem. Requires both the group id and task check id.
See filesystem methods for files, sandbox logs, and processes.

share

Grant read access to a check you created. Returns JobShares, the same share-state shape used by jobs. A check can have up to 50 email grants.
Supply link: true / link=True, emails: string[] / emails=[...], or both. New email grants send invitations. Recipients can read the check, its task checks, and downloads. They cannot operate it. Share-state fields describe the result.

unshare

Revoke a check’s link or email grants. Returns JobShares. Creator-only and idempotent.
Takes the same link and emails fields as share.

shares

Read the check’s whole share state: visibility, link, and email grants. Creator-only.