Extension Examples

Directory: demo/extension/ — demonstrates all extension capabilities.

Overview

DirectoryFocus
01_server_extensionREST API and external control
02_benchmark_and_data_collectMulti-episode policy evaluation
03_replay_recorded_dataTrajectory loading and replay
04_ros_recorderROS 2 recording integration
05_ros_bridgeROS 2 bidirectional communication
06_domain_randomizationPose, lighting, texture, physics randomization
07_teleopReal-time teleoperation (keyboard/SpaceMouse/VR/Web/GELLO)
08_pipelineBatch job execution pipeline

07: Teleoperation

Five input device drivers for real-time robot control:

yaml
extension:
  extension_cfg_dict:
    teleop:
      stereotype: teleop
      enable: true
      control_frequency: 30.0
      drivers:
        - stereotype: keyboard
          name: kb_driver
      targets:
        - driver_name: kb_driver
          robot_name: my_robot
          control_mode: ee_delta

Supported drivers: keyboard, spacemouse, web, gello, vr.

08: Pipeline

Batch execution of multiple jobs in a single simulator session:

yaml
extension:
  extension_cfg_dict:
    pipeline:
      stereotype: pipeline
      enable: true
      job_list_path: ./pipeline_jobs.json

The pipeline loads each job's config, sets up the scene and task, executes, collects results, then moves to the next job.