mjlab Tasks
mjlab is a MuJoCo-based RL framework that adopts an Isaac-Lab-like API while using MuJoCo-Warp as its simulation backend. In LAV2, it serves as a manager-based RL environment backend parallel to Isaac Lab and Genesis Forge.
Like the other two frameworks, mjlab is not part of LAV2's default dependency set, so it must be installed separately before using lav2.tasks.mjlab.
How LAV2 Connects To mjlab
LAV2's mjlab integration lives under lav2.tasks.mjlab. The main task entrypoint is the base task package lav2.tasks.mjlab.LAV2_base.
Its environment-facing configuration is lav2.tasks.mjlab.LAV2_base.LAV2_env_cfg, its RL-facing configuration is lav2.tasks.mjlab.LAV2_base.LAV2_rl_cfg, and its task terms live under lav2.tasks.mjlab.LAV2_base.mdp.
In terms of discovery, mjlab is closer to Isaac Lab than to Genesis Forge: the task must be made visible to the framework's task registry. In the current repository workflow, that means exposing the task package through a symbolic link, for example mapping lav2/tasks/mjlab into src/mjlab/tasks.
LAV2 Base Task
The important part to understand is that LAV2_base is also expressed as a manager-based RL environment configuration. Scene, actions, observations, events, commands, rewards, and terminations are assembled into a single task configuration rather than being hard-coded inside one monolithic environment class.
That keeps the task layout conceptually aligned with the Isaac Lab and Genesis Forge pages even though the concrete framework API differs.
What To Edit
When tuning the mjlab task:
- start from lav2.tasks.mjlab.LAV2_base.LAV2_env_cfg for task composition
- adjust lav2.tasks.mjlab.LAV2_base.mdp when the change belongs to action, command, reward, or termination logic
- update lav2.tasks.mjlab.LAV2_base.LAV2_rl_cfg only when the change is RL-runner-facing
API Cross-References
- Package root: lav2.tasks.mjlab
- Base task package: lav2.tasks.mjlab.LAV2_base
- Environment config: lav2.tasks.mjlab.LAV2_base.LAV2_env_cfg
- RL config: lav2.tasks.mjlab.LAV2_base.LAV2_rl_cfg
- MDP package: lav2.tasks.mjlab.LAV2_base.mdp