Unified whole-body motion tracking on mjlab — one MDP, paper methods as tasks
Project description
WBC-Mjlab: Whole Body Control in MuJoCo Lab
One shared MDP for whole-body motion tracking — compare and reproduce recent methods on mjlab.
Recent work has pushed humanoid WBC toward large-scale motion tracking (ZEST, BeyondMimic, SONIC, OmniXtreme, …). Each paper ships its own stack, which makes fair comparison and sim-to-real export painful.
wbc_mjlab unifies that line of work on one training surface: a shared motion-tracking MDP with paper-specific choices as --task switches (RSI, observations, rewards, DR). Export ONNX + config.yaml for optional G1 deploy (wbc-g1-deploy).
Quick start
Requires mjlab (≥ 1.4) and an NVIDIA GPU for training.
git clone https://github.com/wbc-mjlab/wbc-mjlab.git && cd wbc-mjlab
uv run wbc-mjlab-list-envs
uv run syncs from uv.lock on first use. For CUDA/CPU PyTorch and dev deps: make sync / make sync-cpu. See docs/INSTALLATION.md.
Try bundled samples (13 source CSVs — convert to NPZ locally, then train; manifest & credits):
uv run wbc-mjlab-data-to-npz --robot g1 --dataset samples
uv run wbc-mjlab-train --task Wbc-G1 --dataset samples
uv run wbc-mjlab-play --task Wbc-G1 --dataset samples
Docs
| Doc | Contents |
|---|---|
| docs/TASKS.md | Paper references, philosophy, G1 task map |
| docs/USAGE.md | CLI, train/play, motion conversion, layout |
| docs/INSTALLATION.md | uv, pip, PyPI, local mjlab |
| docs/ROADMAP.md | Planned work (SONIC, infra, …) |
| data/README.md | Motion library layout & downloads |
| CONTRIBUTING.md | PRs, adding tasks |
Full Sphinx docs and a project page are planned; the README stays a short landing page until then.
Related repos
| Repo | Role |
|---|---|
| wbc-mjlab/wbc-mjlab | Training library (this repo) |
| wbc-mjlab/wbc-g1-deploy | Optional G1 runtime (ONNX + motion clips) |
| mujocolab/mjlab | Simulation and RL stack |
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wbc_mjlab-0.0.1.tar.gz.
File metadata
- Download URL: wbc_mjlab-0.0.1.tar.gz
- Upload date:
- Size: 15.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
58d6da3137c4df672b873d8c7e64ebc495ccdcefec1ca90daf948b9a44dbb5d8
|
|
| MD5 |
b8a04b413354d0c23370874a2e320ec0
|
|
| BLAKE2b-256 |
026891c1cea04a06cb66fbc40542407538acb562187ba80adbf74dde6b640749
|
File details
Details for the file wbc_mjlab-0.0.1-py3-none-any.whl.
File metadata
- Download URL: wbc_mjlab-0.0.1-py3-none-any.whl
- Upload date:
- Size: 15.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc7e8c38c9c4aff611bba7795bd8b051b31a46e44fb6adda6c630c196fd5d8f6
|
|
| MD5 |
d258008efb009ff39010c2ba1f21700e
|
|
| BLAKE2b-256 |
0b29d892978ee828b0aa39d9167bd0463b44868aca60bbb6fb6dc30fa175ad62
|