@@ -36,9 +36,10 @@ and maximizes confidence that your policy will behave identically in simulation
3636- ** C++ Controller with ONNX Runtime Integration** :
3737 Deploy trained policies using ONNX Runtime for real-time policy execution.
3838- ** Multi-Framework Support** :
39- Built-in support for [ IsaacLab] [ isaaclab ] , with an architecture designed for extensible framework integration.
39+ Built-in support for [ IsaacLab] [ isaaclab ] and [ MjLab ] [ mjlab ] , with an architecture designed for extensible framework integration.
4040
4141[ isaaclab ] : https://github.com/isaac-sim/IsaacLab
42+ [ mjlab ] : https://github.com/mujocolab/mjlab
4243
4344## Project Structure
4445
@@ -84,6 +85,12 @@ To install with additional dependencies for `IsaacLab` integration:
8485pip install " exploy[isaaclab]@git+https://github.com/rai-opensource/exploy.git"
8586```
8687
88+ To install with additional dependencies for ` MjLab ` integration:
89+
90+ ``` bash
91+ pip install " exploy[mjlab]@git+https://github.com/rai-opensource/exploy.git"
92+ ```
93+
8794### C++ Controller Library
8895
8996To consume the C++ controller library, use plain CMake commands to build and install it on your system (or to a custom prefix):
@@ -130,16 +137,30 @@ This ensures the Exploy C++ controller library is built and exposed correctly as
130137> [ !NOTE]
131138> This example assumes you have an NVIDIA GPU available.
132139
133- You can export an ONNX policy for an existing [ IsaacLab] [ isaaclab ] tasks :
140+ You can export an ONNX policy for an existing [ IsaacLab] [ isaaclab ] task :
134141
135142``` bash
136143pixi run export-isaaclab
137144```
138145
146+ Or for an existing [ MjLab] [ mjlab ] task:
147+
148+ ``` bash
149+ pixi run export-mjlab
150+ ```
151+
139152Then, you can run the [ C++ example] [ cpp_example ] that loads and executes the exported policy:
140153
154+ For IsaacLab:
155+
141156``` bash
142- pixi run run-cpp-example
157+ pixi run run-cpp-example-isaaclab
158+ ```
159+
160+ For MjLab:
161+
162+ ``` bash
163+ pixi run run-cpp-example-mjlab
143164```
144165
145166## Development
@@ -179,11 +200,11 @@ The editor will automatically detect the Pixi environment.
179200- By default, the Python environment is configured for the ` exploy.exporter.core ` subpackage.
180201
181202If you are working on a machine with an NVIDIA GPU, you can switch to the environment
182- for the ` exploy.exporter.frameworks.isaaclab ` component:
203+ for the ` exploy.exporter.frameworks.isaaclab ` or ` exploy.exporter.frameworks.mjlab ` component:
183204
184205- Click the Python icon in the left sidebar.
185206- In the ` Environment Managers ` panel, locate ` Pixi ` .
186- - Select the ` exploy/isaaclab ` entry and set it as the project environment.
207+ - Select the ` exploy/isaaclab ` or ` exploy/mjlab ` entry and set it as the project environment.
187208
188209#### 4. Available Tasks
189210
@@ -240,6 +261,9 @@ pip install -e .
240261
241262# Install the isaaclab component
242263pip install -e " .[isaaclab]"
264+
265+ # Install the mjlab component
266+ pip install -e " .[mjlab]"
243267```
244268
245269Using this method, you are responsible for ensuring the consistency of the dependencies in your environment,
0 commit comments