Software
MuJoCo Playground
By Google DeepMind, from github.com/google-deepmind/mujoco_playground (opens in a new tab)
- Humanoids and robot learning
- Framework
- Apache-2.0
A GPU-accelerated suite of robot learning environments built on MuJoCo MJX, covering classic control, locomotion, manipulation and vision tasks for research and sim-to-real work.
Facts
- GitHub stars
- 2,272read on 6 Nov 2026
- Last update
- 6 Nov 2026Newest commit on main
- Maintenance
- Activea commit in the last 90 days
- Difficulty
- Advanced
- Hardware it needs, as the project states it
- Python 3.10 or later is required.
Checked on GitHub on 6 Nov 2026.
Licenses
- Code
- Apache-2.0 (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit d5e6f28 (opens in a new tab), on 6 Nov 2026.
- Commercial use
- Yes
Overview
What it does: Robotheca's summary
- Provides classic control environments taken from dm_control.
- Includes quadruped and bipedal locomotion environments.
- Includes non-prehensile and dexterous manipulation environments.
- Supports vision-based tasks through the MJWarp Batch Renderer.
- Can train with either the MuJoCo MJX JAX implementation or MuJoCo Warp.
- Training is launched from the command line, for example with train-jax-ppo, and can be visualized with rscope.
Written by Robotheca from the project's README (opens in a new tab) at commit d59156e, not by its creator.
The README
The creator's own README, copied as written: README.md by Google DeepMind, at commit d5e6f28, under Apache-2.0 (opens in a new tab). The original on GitHub (opens in a new tab).
Read the README here
MuJoCo Playground
(opens in a new tab) (opens in a new tab) Image: Documentation Status (opens in a new tab) (opens in a new tab) (opens in a new tab) Image: Banner for playground (opens in a new tab)
MuJoCo Playground is a suite of robot environments, reinforcement learning tasks, and hardware workflows written in PyTorch (opens in a new tab) and built on reaf-sim (opens in a new tab), MuJoCo (opens in a new tab), and MuJoCo Warp (opens in a new tab).
Robots exist in mujoco_playground/robots/ (opens in a new tab), either in simulation or paired with a hardware counterpart, enabling end-to-end workflows across simulation and hardware:
- Large-batch RL training on GPU (opens in a new tab): with state and vision observations across control, manipulation, and humanoid whole-body tracking.
- Sim & real teleoperation (opens in a new tab): with leader-follower control and episodic MCAP logging.
- System identification (opens in a new tab): fitting simulated joint dynamics to logged hardware trajectories via
mujoco.sysid. - Zero-shot sim-to-real policy deployment (opens in a new tab): running the same task layer and policy in simulation (
--mode=sim) and on hardware (--mode=real). - Agentic manipulation (opens in a new tab): for vision-language model (VLM) examples across simulation and hardware (
SO-101,i2rt YAM).
Whole body motion tracking (opens in a new tab) Image: SO-101 Simulation Teleoperation Demo (opens in a new tab) (opens in a new tab)
Sim teleoperation (opens in a new tab)
Real teleoperation (opens in a new tab) Image: SO-101 System Identification Rollout (opens in a new tab) (opens in a new tab)
System identification (opens in a new tab)
Sim2Real and interactive viewer (opens in a new tab) Image: YAM Agentic Tabletop Manipulation (opens in a new tab) (opens in a new tab)
Agentic manipulation (opens in a new tab)
[!NOTE] Looking for the original RSS 2025 JAX/MJX environments? They remain available under
rss2025(opens in a new tab).
Installation
Clone the repository and sync dependencies with uv (opens in a new tab):
git clone https://github.com/google-deepmind/mujoco_playground.git && cd mujoco_playground
# Then install with one of:
make sync # For GPU, good for RL training
make sync-cu12 # For CUDA 12 on Linux
make sync-cpu # Or for CPU only, (i.e. on macOS)
Verify your installation by running the test suite:
make test
[!NOTE] Real-robot hardware SDKs are optional extras so simulation-only stays lightweight. Passing
--extra so101or--extra yamtouv run(oruv sync --extra so101) installs the hardware drivers on demand.
Getting Started
To get started, either try training an RL policy, or try agentic manipulation in simulation or on the real hardware.
Train & Visualize an RL Policy
Train a PPO policy across parallel GPU environments with RSL-RL (opens in a new tab):
# Train SO-101 Pick-Cube
uv run --extra rl python -m mujoco_playground.rl.rsl_rl.train \
--env=SO101PickCubeVision \
--logdir=/tmp/rslrl_logs/so101_pick_cube_vision
# --overrides='{"nworld": 64}' # For CPU
# Play back the trained policy in the interactive viewer
uv run --extra rl python -m mujoco_playground.rl.rsl_rl.play \
--env=SO101PickCubeVision \
--resume_path=/tmp/rslrl_logs/so101_pick_cube_vision
Monitor training curves in TensorBoard:
uv run --extra rl tensorboard --logdir=/tmp/rslrl_logs/so101_pick_cube_vision
Optionally set up the SO-101 hardware (opens in a new tab) and deploy to the real arm (opens in a new tab):
# Deploy the trained policy on the physical SO-101 follower arm
uv run --extra so101 --extra rl python -m \
mujoco_playground.tasks.manipulation.pick_cube.so101.deploy.run \
--mode=real \
--checkpoint=/tmp/rslrl_logs/so101_pick_cube_vision
Try Agentic Manipulation
Spin up the agentic tabletop manipulation task (opens in a new tab) directly from your coding agent with a prompt in sim or real:
Start the tabletop_v0 bridge for the yam in sim and get it to <your task>,
following mujoco_playground/tasks/agentic/tabletop_v0/AGENT_PROMPT.md
Swap sim for real to run on hardware, or so101 for yam (see AGENT_PROMPT.md (opens in a new tab)).
[!NOTE] On macOS,
--viewerrequiresmjpythonin place ofpython. Before the first run, linklibpythoninto the virtualenv somjpythoncan load it:ln -sf "$(uv run python -c 'import sys; print(sys.base_prefix)')"/lib/libpython3.13.dylib .venv/lib/
Documentation & Contributing
- Documentation: See the MuJoCo Playground documentation (opens in a new tab).
- Contributing: See the contributing guide (opens in a new tab) for contribution guidelines.
- Changelog: See the changelog (opens in a new tab).
Citation
If you use MuJoCo Playground in your work, please cite it as follows (see the GitHub contributors page (opens in a new tab) for the full list of contributors):
@software{mujoco_playground_2026,
author = {Tabanpour, Baruch and Howell, Taylor and Haves, Sam and Abeyruwan, Saminda and Ma, Tony and Suh, Dan and {MuJoCo Playground Contributors}},
title = {{MuJoCo Playground}},
url = {https://github.com/google-deepmind/mujoco_playground},
year = {2026},
}
For the RSS 2025 benchmark suite that was built on JAX/MJX (see rss2025 (opens in a new tab)), please cite:
@misc{mujoco_playground_2025,
title = {MuJoCo Playground: An open-source framework for GPU-accelerated robot learning and sim-to-real transfer.},
author = {Zakka, Kevin and Tabanpour, Baruch and Liao, Qiayuan and Haiderbhai, Mustafa and Holt, Samuel and Luo, Jing Yuan and Allshire, Arthur and Frey, Erik and Sreenath, Koushil and Kahrs, Lueder A. and Sferrazza, Carlo and Tassa, Yuval and Abbeel, Pieter},
year = {2025},
publisher = {GitHub},
url = {https://github.com/google-deepmind/mujoco_playground}
}
License & Disclaimer
All content in this repository is licensed under the Apache License, Version 2.0. See LICENSE (opens in a new tab) for details.
This is not an officially supported Google product.
Files and versions
- Repository on GitHubgithub.com/google-deepmind/mujoco_playground (opens in a new tab)
- The version Robotheca readd5e6f28 (opens in a new tab)
- Latest releaseRelease v0.2.0 (16 Mar 2026)
Robotheca read the repository at two versions: the summary at d59156e and the facts and the README at d5e6f28 (read on 6 Nov 2026).
Robotheca never hosts the code: each link goes to the creator's own page.
Use it
How to install it, in the creator's words: The project's website (opens in a new tab)
Robotheca doesn't review code. Read it before running it.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.