Supported tasks and inputs
Exact operations, requirements and limits of evidence.
Use find_resources to select exact accessible IDs and describe_operation to inspect an operation. Registered files, stored episodes and bundled published tasks are different inputs. Unknown units, frames, controller parameters and rights remain unknown; compatibility checks may refuse execution.
Every example below uses the common run_goal service operation. See Connect to create the authenticated SDK client. These are instructions for new executions, not a claim that the task has already run. The profile reference supplies the actual parameter and source-rights contracts.
Check saved manipulation episodes
Adapter operation: verify_episodes · Profile: robomimic.can-paired.v1
Input: Existing catalog episodes in the selected domain; these are saved recordings.
Requirements: Existing complete source records and inspection rights. No download or reimport is performed.
Result and verification: Record structure and stored integrity; the saved labels do not become newly demonstrated task outcomes.
Example using the authenticated client from Connect. Replace marked IDs with accessible resources; this code starts a new bounded operation.
reply = client.call("run_goal", {'goal': {'operation': 'verify_episodes',
'profile': 'robomimic.can-paired.v1',
'parameters': {'filters': {'domain': 'manipulation'}},
'max_seconds': 30,
'resource_limits': {'cpu_seconds': 20,
'memory_bytes': 268435456,
'artifact_bytes': 8388608},
'verification': {'mode': 'integrity'}},
'idempotency_key': 'docs-manipulation-verify-v1',
'wait_seconds': 20})Export manipulation recordings
Adapter operation: export_dataset · Profile: robomimic.can-paired.v1
Input: Existing episodes and their complete linked groups.
Requirements: Source export permission, owner grant, space within the artifact ceiling; existing IDs/groups/splits stay unchanged.
Result and verification: Checked episodes.jsonl and dataset-manifest.json; dataset integrity, not new robotics execution.
Example using the authenticated client from Connect. Replace marked IDs with accessible resources; this code starts a new bounded operation.
reply = client.call("run_goal", {'goal': {'operation': 'export_dataset',
'profile': 'robomimic.can-paired.v1',
'parameters': {'filters': {'domain': 'manipulation'}},
'max_seconds': 30,
'resource_limits': {'cpu_seconds': 20,
'memory_bytes': 268435456,
'artifact_bytes': 67108864},
'verification': {'mode': 'integrity'}},
'idempotency_key': 'docs-manipulation-export-v1',
'wait_seconds': 20})View recorded Can states
Adapter operation: view_recorded_states · Profile: robomimic.can-paired.v1
Input: One existing Can episode ID from find_resources.
Requirements: The retained catalog payload. No simulator is needed; state vectors are not policy observations.
Result and verification: A window of recorded states with original indices. No actions are executed and replay is not established.
Example using the authenticated client from Connect. Replace marked IDs with accessible resources; this code starts a new bounded operation.
reply = client.call("run_goal", {'goal': {'operation': 'view_recorded_states',
'profile': 'robomimic.can-paired.v1',
'parameters': {'episode_id': 'replace-with-episode-id',
'start_index': 0,
'frame_count': 3,
'stride': 1},
'max_seconds': 30,
'resource_limits': {'cpu_seconds': 20,
'memory_bytes': 268435456,
'artifact_bytes': 8388608},
'verification': {'mode': 'integrity'}},
'idempotency_key': 'docs-recorded-can-v1',
'wait_seconds': 20})Execute recorded Can actions in a simulator
Adapter operation: replay_can_actions · Profile: robomimic.can-paired.action-replay.v1
Input: Existing Can episode, exact XML model and versioned controller/state supplement.
Requirements: Pinned can-replay extra and accepted model: 71 values = time + 37 qpos + 33 qvel; OSC_POSE, 20 Hz, world input frame. Unknown control/frame semantics block replay.
Result and verification: Initial state is loaded once, then actions execute headlessly. Independent PickPlaceCan object/bin/gripper geometry is checked separately from recorded reward/done. This is simulator execution, never physical replay.
Example using the authenticated client from Connect. Replace marked IDs with accessible resources; this code starts a new bounded operation.
reply = client.call("run_goal", {'goal': {'operation': 'replay_can_actions',
'profile': 'robomimic.can-paired.action-replay.v1',
'parameters': {'episode_id': 'replace-with-episode-id'},
'max_seconds': 180,
'resource_limits': {'cpu_seconds': 120,
'memory_bytes': 2147483648,
'artifact_bytes': 67108864},
'verification': {'mode': 'metric_recompute'}},
'idempotency_key': 'docs-can-action-replay-v1',
'wait_seconds': 20})Evaluate registered XYZ trajectories
Adapter operation: evaluate_trajectory · Profile: sensor.trajectory.xyz.v1
Input: One registered asset containing prediction and reference XYZ tracks with equal timestamps; register_trajectory accepts paired TUM files.
Requirements: Explicit shared coordinate frame and metres, appropriate rights and a supplied reference. No automatic spatial/time alignment. MCAP is rejected for this operation.
Result and verification: Unaligned position RMSE against the supplied reference and threshold, independently recomputed; no inferred flight outcome.
Example using the authenticated client from Connect. Replace marked IDs with accessible resources; this code starts a new bounded operation.
reply = client.call("run_goal", {'goal': {'operation': 'evaluate_trajectory',
'profile': 'sensor.trajectory.xyz.v1',
'parameters': {'asset_id': 'replace-with-paired-trajectory-id',
'threshold_m': 0.1},
'max_seconds': 30,
'resource_limits': {'cpu_seconds': 20,
'memory_bytes': 268435456,
'artifact_bytes': 8388608},
'verification': {'mode': 'metric_recompute'}},
'idempotency_key': 'docs-trajectory-v1',
'wait_seconds': 20})Inspect a ROS/MCAP sensor recording
Adapter operation: inspect_sensor_recording · Profile: sensor.mcap.aerial.v1
Input: Existing registered ROS1/ROS2 MCAP bytes and declared source revision, frame, units and platform.
Requirements: Register through register_sensor_recording (at most 1 MiB input), with source permissions. The source URL is provenance, not an automatic download.
Result and verification: Original timestamps and message inventory with exact decimal-string nanoseconds. No invented control command, trajectory reference or flight success.
Example using the authenticated client from Connect. Replace marked IDs with accessible resources; this code starts a new bounded operation.
reply = client.call("run_goal", {'goal': {'operation': 'inspect_sensor_recording',
'profile': 'sensor.mcap.aerial.v1',
'parameters': {'asset_id': 'replace-with-mcap-asset-id',
'max_messages': 10},
'max_seconds': 30,
'resource_limits': {'cpu_seconds': 20,
'memory_bytes': 268435456,
'artifact_bytes': 8388608},
'verification': {'mode': 'integrity'}},
'idempotency_key': 'docs-mcap-v1',
'wait_seconds': 20})Run the published falling-ball engine task
Adapter operation: run_pymunk_basic · Profile: pymunk.basic-fall.v7.2
Input: Bundled pinned Pymunk basic_test task, canonical pymunk:basic_test:7.2.0.
Requirements: pymunk 7.2.0 and the native-engine version from the profile. Headless, finite runner limits.
Result and verification: The actual engine runs; a Pymunk-free verifier checks states and removal below y=0 in pixel units. No real-world equivalence.
Example using the authenticated client from Connect. Replace marked IDs with accessible resources; this code starts a new bounded operation.
reply = client.call("run_goal", {'goal': {'operation': 'run_pymunk_basic',
'profile': 'pymunk.basic-fall.v7.2',
'parameters': {'seed': 42},
'max_seconds': 30,
'resource_limits': {'cpu_seconds': 20,
'memory_bytes': 536870912,
'artifact_bytes': 8388608},
'verification': {'mode': 'metric_recompute'}},
'idempotency_key': 'docs-pymunk-v1',
'wait_seconds': 20})Build a Can LeRobot v3 generation
Adapter operation: build_dataset · Profile: dataset.can.lerobot.v3
Input: Existing exact episode IDs, including every member of each selected group.
Requirements: Pinned reader/runtime when using LeRobot (see profile); source export rights. Training purpose accepts only train records; normalization uses train data only.
Result and verification: Immutable DatasetManifest, preserved values/time/groups/rights/provenance and checked format round trip. Named observations remain observations; no training or task execution.
Example using the authenticated client from Connect. Replace marked IDs with accessible resources; this code starts a new bounded operation.
reply = client.call("run_goal", {'goal': {'operation': 'build_dataset',
'profile': 'dataset.can.lerobot.v3',
'parameters': {'episode_ids': ['replace-with-first-episode-id',
'replace-with-linked-episode-id'],
'purpose': 'evaluation',
'normalization_split': 'train'},
'max_seconds': 180,
'resource_limits': {'cpu_seconds': 120,
'memory_bytes': 2147483648,
'artifact_bytes': 134217728},
'verification': {'mode': 'metric_recompute'}},
'idempotency_key': 'docs-can-lerobot-v1',
'wait_seconds': 20})