Command-line reference#
Every command, with its options. Run any command with --help for the full list. With
pip, drop the uv run prefix.
Command |
Does |
|---|---|
The whole pipeline in a browser |
|
Export source clips (CSV / PKL) as NPZ — optional, training reads the sources |
|
Play exported NPZ clips (no policy) |
|
List robots and tasks |
|
Train a task |
|
Evaluate a checkpoint; exports |
|
Play the bundled demo checkpoint |
|
Write a task’s deploy |
|
Plot saved adaptive-sampling state |
|
Train a Studio preset |
wbc-mjlab-studio#
uv run wbc-mjlab-studio [--host 0.0.0.0] [--port 8765] [--token SECRET] [--ui web|viser]
|
Interface to serve on (default |
|
UI port (default 8765) |
|
Require this token from network clients (default: no access control) |
|
Robot to start with · torch device for playback and conversion |
|
|
|
Don’t open a browser tab |
Guide: WBC Studio.
wbc-mjlab-data-to-npz#
uv run wbc-mjlab-data-to-npz --robot g1 --dataset my_clips
Training does not need it (How the library is built): it writes npz/<clip>.npz — body poses
and velocities — for tools that want them, baked with the training code path (batched GPU
forward kinematics).
|
Robot model to run forward kinematics on (default |
|
|
|
A single file or folder in, an explicit folder out |
|
Source format ( |
|
Source rate (CSV default 30) · export rate (default 50) |
|
Frames per FK batch on the GPU (at least 4096) |
|
Shift clips so the feet touch the floor · override the robot’s sole height |
|
Also write left-right mirrored clips (needs a symmetry config) |
|
Torch device · step the clips through the sim and render them (frame by frame, batch size 1) · CSV row range |
Formats and output: Motion data formats.
wbc-mjlab-data-vis#
uv run wbc-mjlab-data-vis --robot g1 --dataset samples
Plays exported NPZ clips in viser with a timeline (source clips: the Studio). Options: --robot, --dataset,
--dataset-path, --motion-file, --fps, --cache-motion-bundle.
wbc-mjlab-list-envs#
Lists registered robots and tasks (built-in, extensions, robots added in the Studio) with their log folders.
wbc-mjlab-train · wbc-mjlab-play#
uv run wbc-mjlab-train --task Wbc-G1 --dataset samples
uv run wbc-mjlab-play --task Wbc-G1 --dataset samples --viewer viser
wbc-mjlab options (parsed first):
|
Task to train / play (robot taken from it) — Choose a task |
|
Motion library |
|
A dataset folder, a clip or an NPZ anywhere |
|
Add left-right mirrored clips · put each clip’s lowest foot on the ground — Prepare motion data |
|
Converted-NPZ datasets only: write / reuse |
|
Shorthand instead of |
Everything else passes through to mjlab (mjlab CLI):
|
Parallel environments (default 8192) |
|
Training length |
|
Suffix of the run folder |
|
Continue a run — Train a policy |
|
Logger (default TensorBoard) |
|
Train on several GPUs |
|
A specific checkpoint (default: latest of the task) |
|
Viewer (viser when headless) |
wbc-mjlab-demo#
Plays the bundled checkpoint (demos/wbc_g1) on the bundled samples clips. Options include
--agent trained|zero|random, --num-envs, --viewer, --video.
wbc-mjlab-export-tracking-params#
uv run wbc-mjlab-export-tracking-params --task Wbc-G1 --out params/config.yaml [--play]
Rewrites the deploy config.yaml of a task (training and play already write it). Schema:
Export.
wbc-mjlab-plot-rsi-bins#
uv run wbc-mjlab-plot-rsi-bins logs/rsl_rl/<experiment>/<run>/params/rsi_bin_stats.npz \
[--trajectory N] [--output plot.png]
Training a Studio preset#
uv run python -m wbc_mjlab.studio.train_preset --preset <name> --dataset samples [train options]
Registers <base>--<name> from ~/.config/wbc-mjlab/presets/<name>.yaml and trains it;
accepts every wbc-mjlab-train option. Single GPU only. File format:
Studio preset file.
See also
Configuration and files — files, directories and environment variables