Controls laboratoryPrivate workspace
Workspace access Sign in with a private file or token

Your token stays in this browser tab for this session.

Choose your private portal sign-in JSON file. It is read locally; only its credential is sent to the configured rig API. Keep this file private.

From code to motion.

Test a controller, inspect the run, make the next iteration.

Controllers & policies

New experiment

.py / .zip / .json

Submit Python code or a trained actor. Python controllers implement create_policy(), reset(session), and act(observation).

Supported formats

Python: one .py controller, up to 64 KiB.

ZIP project: put policy.py at the archive root. Up to 8 MiB compressed, 32 MiB expanded, and 256 entries. Dependencies must already be available; packages are not installed from uploads.

Trained policy: the supported numeric actor.json export, up to 1,000,000 bytes (1 MB). Pickle, model checkpoints, and arbitrary JSON formats are not supported.

seconds

Physical runs require operator approval and a prepared rig. Simulation does not establish hardware readiness.

Your experiments 0

The history of your controller, one run at a time.

Your first experiment starts here

Connect and upload a controller. Status, results, and recorded data will appear here.

Selected run details
Select a run to inspect its result.

Approve physical run

Approval makes this exact artifact eligible for a connected worker. Confirm the rig has been prepared and the source reviewed.