Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Record episodes for an agentic env via teleoperation (keyboard, SO-ARM leader, or VR) into HDF5. Use when the user wants to teleop or record human demos.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | 154% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 96% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 24% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 193% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 189% | 0% |
Record episodes for an agentic env via teleoperation (keyboard, SO-ARM leader, or VR) into HDF5. Use when the user wants to teleop or record human demos.
These steps drive the i4h-workflows base code (the workflows/agentic/ tree). To reuse an existing checkout, set I4H_WORKFLOWS to its path (no clone happens). Otherwise this resolves the current repo, or clones to ~/i4h-workflows — pick that default without prompting. Run every command below from the resolved root:
bash# Resolve the i4h-workflows base code (provides workflows/agentic/). ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}" if [ ! -d "$ROOT/workflows/agentic" ]; then ROOT="${I4H_WORKFLOWS:-$HOME/i4h-workflows}" [ -d "$ROOT/workflows/agentic" ] || git clone https://github.com/isaac-for-healthcare/i4h-workflows "$ROOT" fi export I4H_WORKFLOWS="$ROOT"; cd "$ROOT"
workflows/agentic/config/environments/<env>.yaml — robot.type, zenoh.camera_names, and the task for <env>.arena/run.sh --teleop.arena/run.sh --env <env> --help for valid --teleop-device values.Reserved keys (consistent across devices):
| Key | Action | |---|---| | B | Start episode | | N | Mark success, save, advance | | R | Discard, reset | | F | Reserved by Isaac Sim — do not bind |
Device-specific keybindings (move, rotate, gripper, mode switches) are printed by the teleop process at startup and vary by --teleop-device. Report them to the user from the log; they cannot drive the sim without them. See "Surface Device Keybindings". For keyboard_23d, the banner can print late, after scene creation and recorder setup; wait for mode/control markers such as BOTH_HANDS, HAND MODE, BASE NAVIGATION MODE, SPECIAL KEYS, or Current Mode before saying the controls are missing.
Stop from terminal:
bashworkflows/agentic/stop.sh arena --env <env>
| Env | Devices | |---|---| | scissor_pick_and_place | keyboard, so101_leader | | locomanip_tray_pick_and_place | keyboard_23d | | locomanip_push_cart | keyboard_23d |
For other envs, consult arena/run.sh --env <env> --help.
Run the steps below in order. Each step is a separate bash call; variables persist in the local agent's tmux session.
bashREPO_ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"; [ -d "$REPO_ROOT/workflows/agentic" ] || REPO_ROOT="$HOME/i4h-workflows" ENV_ID=scissor_pick_and_place RUNS_ROOT="${REPO_ROOT}/workflows/agentic/runs" RUN_DIR="${RUNS_ROOT}/teleop_${ENV_ID}_$(date +%Y%m%d_%H%M%S)" mkdir -p "${RUN_DIR}/data" "${RUN_DIR}/logs" ln -sfn "${RUN_DIR}" "${RUNS_ROOT}/.latest"
Use the foreground form when the human operator is ready to drive immediately and the agent can stay attached until completion:
bash"${REPO_ROOT}/workflows/agentic/arena/run.sh" \ --env "${ENV_ID}" \ --teleop \ --teleop-device <device> \ --episodes 3 \ --record-to "${RUN_DIR}/data/demo.hdf5" \ 2>&1 | tee "${RUN_DIR}/logs/teleop.log"
If no human operator is ready, do not fake demos and do not leave a teleop process behind. You may launch long enough to confirm the visible GUI, recorder, and controls, then stop cleanly and report that recording is waiting on a human operator.
The teleop process prints its keybinding table to stdout shortly after launch (look for sections such as Keybindings, Controls, Key Map, BOTH_HANDS, HAND MODE, BASE NAVIGATION MODE, SPECIAL KEYS, WORKSPACE LIMITS, Current Mode, mode-switch lines, or any block enumerating keys/actions). Wait for the table to appear, extract it from the log, and report it to the user before they need to drive the sim.
bash# After launching teleop and tailing the log: for i in $(seq 1 180); do if grep -qiE 'Keybind|Controls|Key Map|BOTH_HANDS|HAND MODE|BASE NAVIGATION MODE|SPECIAL KEYS|WORKSPACE LIMITS|Current Mode|Mode\] Switched|run complete|Traceback|Error' "${RUN_DIR}/logs/teleop.log" 2>/dev/null; then break fi sleep 1 done grep -n -A80 -E 'Keybind|Controls|Key Map|BOTH_HANDS|HAND MODE|BASE NAVIGATION MODE|SPECIAL KEYS|WORKSPACE LIMITS|Current Mode|Mode\] Switched' "${RUN_DIR}/logs/teleop.log" | head -120
If the block is multi-section (e.g. BOTH_HANDS, BASE_NAV, LEFT_HAND, RIGHT_HAND modes), include every mode in the report. Append the reserved keys above so the user has one consolidated reference.
--record-to must be absolute. The recorder resolves relative paths against workflows/agentic/arena (its CWD) and writes to a nested orphan dir. ${RUN_DIR}/data/demo.hdf5 built from ${REPO_ROOT} is absolute.--save-all-episodes only when failed attempts must be kept.${RUN_DIR}/data/demo.hdf5 exists.run complete: N/M episodes succeeded, and N must equal the requested episode count before reporting success. A tiny HDF5 with 0/M episodes succeeded is only a failed/empty recording artifact, not a usable dataset..venv must exist).--teleop-device it supports (see Known Devices or arena/run.sh --env <env> --help).--record-to HDF5 path (relative paths resolve against arena's CWD).--record-to must be absolute or the recording lands in a nested orphan dir.--save-all-episodes to keep failed attempts..venv not found / teleop fails to launch - Cause: workflow not set up. Fix: run i4h-workflow-setup]] first.--teleop-device for env - Cause: device not supported by that env. Fix: pick a value from arena/run.sh --env <env> --help (or Known Devices).--record-to was relative. Fix: pass an absolute path built from ${REPO_ROOT}.0/N episodes succeeded - Cause: no human/operator completed episodes. Fix: record successful source demos with an operator; do not continue to mimic/convert/finetune from an empty HDF5.Report env, device, the device-specific keybinding table extracted from the log, requested vs saved episodes, HDF5 path, log path.
Other measured skills in the registry, with their headline benchmark lift.