Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Command Line Interface (CLI)

srb <subcommand> [options]

Use -h or --help for a subcommand:

srb --help
srb <subcommand> -h

Shell completion is also available:

srb <TAB> <TAB>

Subcommands

SubcommandDescription
agentAgent subcommands (listed below)
real_agentSim-to-real bridge code generation and runtime
datasetInspect, validate, convert, replay, and publish datasets
modelPackage, validate, and publish trained policy checkpoints
list/lsList registered assets, action groups and environments
asset/assetsManage planetary surface assets, rock sets, sky-domes, and lighting presets
event-cameraManage event-camera weights and backend metadata
ephemerisQuery real Sun/planet geometry, fetch SPICE kernels, import illumination products
cacheRegenerate generated SRB offline caches
guiLaunch the Graphical User Interface
isaac/isaacsimIsaac Sim utilities (sim, python)
doc/docsBuild docs and render asset/task thumbnails
testRun Python and/or Rust test suites
cleanRemove cached files (SRB / Isaac Sim / SimForge)
completionsManage shell completions (cache + install scripts)

Subcommands that wrap one child process (gui, isaacsim, doc build/serve) exit with the child’s status. srb test runs tiers and reports failure with exit code 1 if any tier fails. When one child process is killed by signal N, the wrapping command logs terminated by signal <NAME> and exits with 128+N (for example 139 for SIGSEGV), the shell convention; a timeout exits with 124.

Agent Subcommands

Agent actions:

srb agent <action> [options]
SubcommandPurpose
zeroRun a simulation agent with zero-valued actions.
randRun a simulation agent with random actions.
teleopManually teleoperate the agent, directly or through a trained policy.
rosDrive the simulation agent from ROS 2 / Space ROS action topics.
trainTrain a reinforcement-learning policy in simulation.
evalEvaluate a trained policy in simulation.
collectRecord demonstration datasets from human, policy, random, or zero controllers.
learnTrain an imitation-learning policy offline from a demonstration dataset.
tuneOptimize hyperparameters with Optuna (spawns training subprocesses per trial).

Shared Agent Options

These options are shared by simulation-based agent actions (zero, rand, teleop, ros, train, eval, collect). Offline learn and tune have their own options; tune spawns training subprocesses.

ArgumentDescriptionDefault
-e/--env/--task ENVID of the environmentREQUIRED
--cfg PATHHydra config YAML (DEFAULT/IGNORE/NONE/NULL recognised)DEFAULT
--headlessRun simulation without displayFalse
--hide_uiDisable most of the Isaac Sim UI and set it to fullscreenFalse
--livestream {0,1,2}Force livestreaming (0: off, 1: native, 2: WebRTC). The default defers to the LIVESTREAM environment variable-1
--rendering_mode {performance,balanced,quality,xr}Isaac RTX rendering preset applied after Kit starts (xr applies none)unset
--xrEnable XR mode for VR/AR applicationsFalse
--enable_camerasLaunch the rendering app for camera sensors (without video recording). Auto-enabled when the CLI activates a camera-backed sensor category (env.active_sensors=[…,visual] or event_camera), for camera-shipping demo envs, and by --xr/--video/--record-events/--snapshot — pass it explicitly only when none of those applyFalse
--kit_args=VALUEExtra args forwarded to the Omniverse Kit""
--interface [IFACE …]Interfaces to enable (gui, ros)[]
--logdir/--logs PATHPath to root logging directorySRB_LOGS_DIR
--videoEnable video recordingFalse
--record-events/--record_eventsRecord event-camera rollouts with provenance. Scene materialization, observation delivery, and the recorder are wired, but no concrete event backend (v2e, Metavision, V2CE) ships in the default container image, so provider-backed rollout fidelity is unproven; use srb dataset record-events for the live synthetic path.False
--snapshot PATHCapture a single rendered PNG after the initial reset, then exit (implies --enable_cameras)unset
--snapshot-warmup NRender passes before the snapshot to let path-traced/anti-aliased accumulation converge16
--snapshot-settle NPhysics steps after the reset and before the snapshot, letting robots settle (0 disables)0
--perfRun a performance test instead of the regular workflowFalse
--perf_output PATHOutput path of the performance report (or STDOUT)STDOUT
--perf_duration SECMaximum duration of the performance test in seconds (0 = unlimited)150.0
--repl [BACKEND]Open an interactive Python REPL alongside the running simulation (ptpython/bpython)unset

Note: In the commands that compose a Hydra configuration, such as the simulation-based agent subcommands above, trailing CLI tokens that do not match the registered options are forwarded to Hydra (env.foo=bar, agent.lr=1e-3, …). Repeating an override key keeps the supplied order, so the last value wins (for example, env.seed=1 env.seed=2 sets the env.seed override to 2). Commands that wrap a child process may forward tokens after a literal -- to that child, such as srb test forwarding arguments to pytest or cargo. srb agent tune is an exception: it rejects bare overrides and tokens after -- rather than passing them to its trials; fix a setting for every trial with --pin KEY=VALUE.

For --kit_args values that begin with -, attach the value to the option with an equals sign, such as --kit_args=--ext-folder=/path/to/ext1.

Event Camera Subcommands

srb event-camera manages event-camera checkpoint and fixture mirrors, and lists available backends:

Sub-subcommandDescription
srb event-camera fetch-weightsDownload event-camera weights (SuperSloMo, E2VID, or V2CE) with SHA256 verification
srb event-camera list-mirrorsList registered event-camera weight mirrors (SuperSloMo + E2VID + V2CE)
srb event-camera fetch-fixtureDownload an event-camera reference fixture (Gen4 HDF5) with SHA256 verification
srb event-camera list-fixturesList registered event-camera reference-fixture mirrors (Gen4 HDF5)
srb event-camera backendsList registered event-generator backends (use --detailed for metadata)

Cache Subcommands

srb cache manages generated SRB offline caches used by completions and the GUI:

Sub-subcommandDescription
srb cache updateRegenerate task, asset, config, enum, and GUI caches
srb cache claim-clean-root [--target srb|isaacsim|all]Add path- and inode-bound markers required by srb clean; fixed Isaac roots and the selected NGC profile root may adopt existing content
srb cache status [--json] [--strict]Inspect generated cache files without launching Isaac Sim
srb cache doctor [--json] [--strict]Validate generated cache payload shapes without launching Isaac Sim; report only by default, or exit 1 with --strict when entries or the generation are incomplete or invalid

srb cache doctor reports successfully by default; use --strict to fail on incomplete or invalid caches.

Completions Subcommands

srb completions manages shell-completion artefacts:

Sub-subcommandDescription
srb completions generateRegenerate completion cache via srb cache update
srb completions installInstall Fish/Bash/Zsh completion scripts

Start a new shell after installation (or run exec "$SHELL" -l) to load Bash/Zsh registrations. Hydra candidates require jq and successful srb completions generate. Scripts follow the published cache-generation pointer, so cache updates do not require reinstalling them.