An imitation learning benchmark for whole-body control, with MuJoCo and MJX environments for humanoids, quadrupeds and musculoskeletal human models.
mujocolab/mjlab
An Isaac Lab-style manager-based API for robot reinforcement learning, running on GPU-accelerated MuJoCo Warp.
Open-source alternative to:Isaac Lab
- Stars
- 3,345
- Forks
- 582
- Open issues
- 70
- Last commit
- 7 days ago
What is it?
mjlab is a robot learning framework that combines Isaac Lab's manager-based environment API with MuJoCo Warp, a GPU-accelerated version of the MuJoCo physics engine. It provides composable building blocks for designing reinforcement learning environments, such as observations, rewards, and terminations, while keeping dependencies minimal and exposing native MuJoCo data structures directly.
The project ships ready-made training tasks, including velocity tracking and motion imitation for the Unitree G1 humanoid. Training is launched from the command line with commands like train and play, and supports multi-GPU runs, Weights & Biases checkpoint loading, and built-in zero and random agents for checking an MDP before training.
Training requires an NVIDIA GPU, while macOS is supported for evaluation only. A demo can be run with uvx, through Google Colab, or from a source checkout.
Key features
- 01Manager-based environment API compatible in style with Isaac Lab
- 02GPU-accelerated simulation using MuJoCo Warp
- 03Direct access to native MuJoCo data structures
- 04Built-in Unitree G1 velocity tracking and motion imitation tasks
- 05Multi-GPU training via a --gpu-ids option
- 06Dummy zero and random agents for sanity-checking tasks
Use cases
- Training locomotion policies for humanoid robots in simulation
- Reproducing motion imitation experiments from reference motion data
- Prototyping custom RL tasks on MuJoCo without the full Isaac Lab stack
Quick start
- 1
Try the demo with no installation
uvx --from mjlab --refresh demo - 2
Clone the repository from GitHub
git clone https://github.com/mujocolab/mjlab.git && cd mjlab - 3
Run the demo from the source checkout
uv run demo
Things to know
- Training requires an NVIDIA GPU.
- macOS is supported for evaluation only.
In collections
Topics
FAQ
- What is mjlab?
- An Isaac Lab-style manager-based API for robot reinforcement learning, running on GPU-accelerated MuJoCo Warp. mjlab is a robot learning framework that combines Isaac Lab's manager-based environment API with MuJoCo Warp, a GPU-accelerated version of the MuJoCo physics engine. It provides composable building blocks for designing reinforcement learning environments, such as observations, rewards, and terminations, while keeping dependencies minimal and exposing native MuJoCo data structures directly.
- Is mjlab free to use? What license does it have?
- mjlab is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is mjlab still maintained?
- Actively maintained. The last commit to mjlab was on Nov 1, 2026.
- What can I use mjlab for?
- Training locomotion policies for humanoid robots in simulation Reproducing motion imitation experiments from reference motion data Prototyping custom RL tasks on MuJoCo without the full Isaac Lab stack
- How do I install mjlab?
- Try the demo with no installation: uvx --from mjlab --refresh demo Clone the repository from GitHub: git clone https://github.com/mujocolab/mjlab.git && cd mjlab Run the demo from the source checkout: uv run demo
- Where can I get mjlab?
- The source code and installation instructions are on GitHub: https://github.com/mujocolab/mjlab
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
GPU-accelerated version of the MuJoCo physics simulator, built on NVIDIA Warp for high-throughput robotics simulation.
Reinforcement-learning training environments that teach the Microduck ~25 cm bipedal robot to walk, stand up, and perform tricks in MuJoCo simulation.
A collection of MuJoCo-based robotics reinforcement learning environments built on the Gymnasium API.
An Unreal Engine 5 plugin that runs MuJoCo physics inside the editor and runtime, pairing accurate contact dynamics with Unreal's rendering.
A lightweight, Python-based robot simulator for navigation, control, and learning, configured through YAML files.