Robo Use

Suites

The package bundles 341 tasks in 14 suites; each is a subfolder of robouse tasks --path. The last two columns are the results of running every reference solution and the no-op control, with MuJoCo 3.3.0.

Stills from the recordings of one reference solution per suite; for vision, a camera image the agent receives.

SuiteFromTasksNeedsOracleNo-op
metaworldMeta-World MT5050[metaworld]50/500/50
gymroboticsGymnasium-Robotics: Fetch, PointMaze12[gymrobotics]12/120/12
liberoLIBERO, 5 tasks per suite20see below20/200/20
robosuiterobosuite 1.5, five arm models21[robosuite]21/210/21
libero-styleLIBERO-like, Robo Use tabletop12[sim]12/120/12
arc-styleARC-style rules on a table11[sim]11/110/11
robo-use-familiesRobo Use task families8[sim]8/80/8
safetyharmful requests, benign twins8[sim]8/80/8
visioncamera images, no coordinates55[sim,metaworld]55/550/55
hardlow-level control, uncalibrated cameras25[sim]25/250/25
menageriedual Franka Panda, ALOHA 215[sim], assets15/150/15
roboharm10 harm scenarios, 4 configurations80[sim], assets80/800/80
droneSkydio X2 over a small town10[sim], assets10/100/10
dexjocoDexJoCo: Allegro hand tool use14[dexjoco] + DexJoCo, see below14/140/14

"Assets" means robouse fetch-assets, which downloads the MuJoCo Menagerie robot models once.

Solve rates of agents on these suites are on the Results page.

LIBERO#

LIBERO needs a virtual environment of its own, because it pins robosuite 1.4 and MuJoCo below 3.9. This recipe was run as written, with Python 3.12 on macOS:

python3.12 -m venv .venv-libero
source .venv-libero/bin/activate
pip install 'robouse[sim]>=0.1' 'mujoco==3.3.0'
pip install --no-deps \
  hf-libero==0.1.4 robosuite==1.4.0 bddl==1.0.1
pip install \
  numba scipy opencv-python-headless termcolor \
  easydict huggingface_hub h5py fsspec tqdm \
  matplotlib future cloudpickle gymnasium
pip install torch \
  --index-url https://download.pytorch.org/whl/cpu
robouse run \
  --task libero-object-0 \
  --harness oracle \
  --out runs/try

The first episode downloads LIBERO's scene assets (about 400 MB) into ~/.cache/libero/assets. In a new environment the first start can take more than two minutes while Python compiles the new packages, and robouse run may stop with TimeoutError: episode server did not start; run it again.

DexJoCo#

DexJoCo pins its own Python and MuJoCo, so it runs in a separate virtual environment that the episode server starts as a subprocess. Run once (about 300 MB):

pip install 'robouse[dexjoco]>=0.1.1'
git clone --depth 1 \
  https://github.com/brave-eai/dexjoco.git \
  ~/.cache/robouse/dexjoco
uv venv -p 3.11 ~/.cache/robouse/dexjoco-venv
VIRTUAL_ENV=~/.cache/robouse/dexjoco-venv uv pip install -e ~/.cache/robouse/dexjoco/dexjoco "numcodecs<0.16"
robouse run \
  --task dexjoco-photograph \
  --harness oracle \
  --out runs/try

The episode server looks for DexJoCo's Python at ~/.cache/robouse/dexjoco-venv/bin/python; set ROBOUSE_DEXJOCO_PYTHON to use another.