Skip to main content

reaf-sim

CI Documentation Status License

reaf-sim is a simulation environment framework written in PyTorch and built on MuJoCo and MuJoCo Warp with the Robotics Environment Authoring Framework (REAF).

reaf-sim enables creation of environments in simulation that can be zero-shot deployed onto hardware and vice versa. Workflows that reaf-sim enables include large-batch RL on GPU, sim evaluation, sim and hardware teleoperation, system identification, agentic workflows, and sim2real deployment.

This project adheres to the GDM Robotics Environment interface.

Looking for pre-built robot environments and training scripts? We will be revamping MuJoCo Playground with ready-made examples for RL, sim/real teleop, sysid, sim2real, and agentic robotics. Stay tuned!

Quickstart

Clone reaf-sim from GitHub and install with uv:

git clone https://github.com/google-deepmind/reaf-sim.git && cd reaf-sim
make install  # install dependencies (use `make install-cpu` for CPU only)
make test     # run all tests, verify everything works

Cartpole Example

For a quick preview, let's create a reaf-sim environment controlling a cartpole system alongside a camera rendering RGB observations across 16 parallel environments on GPU (impl="warp"). Step the environments with control commands and capture visual rollouts:

import mujoco
from reaf.simulation.torch import ActuatorDevice, CameraDevice, flat_scene
import torch

spec = mujoco.MjSpec.from_file("cartpole.xml")

# configure the environment
config = flat_scene.Environment(
    base_scene=spec,
    sim=flat_scene.Sim(nworld=16, xpu_device="cuda:0", impl="warp"),
    device_layer=flat_scene.DeviceLayer(
        devices={
            "slider": flat_scene.Component(
                ActuatorDevice, targets=["slider"]
            ).configure_spec(mode="motor"),
            "camera": flat_scene.Component(
                CameraDevice,
                cam_name="fixed",
                cam_resolution=(160, 120),
                render_rate_hz=20.0,
                output_name_prefix="camera/",
            ),
        }
    ),
)

# build the environment
env = flat_scene.build_env(config)

# step the environment with batched actions and extract camera frames
timestep = env.reset()
for _ in range(100):
  commands = torch.rand((env.nworld, 1), device="cuda:0") * 2.0 - 1.0
  timestep = env.step({"slider/ctrl": commands})
  camera_frames = timestep.observation["camera/fixed_rgb"]  # (16, 120, 160, 3)

For the complete, runnable script that loads the Cartpole model and generates the tiled grid video below, see reaf/simulation/torch/examples/cartpole.py.

16-environment parallel Cartpole rollout on GPU

Documentation & Contributing

Citation

If you use reaf-sim in your work, please cite it as follows (see the GitHub contributors page for the full list of contributors):

@software{reaf_sim_2026,
  author = {{reaf-sim Contributors}},
  title = {{reaf-sim: Robotics Environment Authoring Framework - Simulation}},
  url = {https://github.com/google-deepmind/reaf-sim},
  year = {2026},
}

Acknowledgements

We are grateful to all members of the MuJoCo team for their support in developing reaf-sim. Additionally, we thank the authors of REAF, mjlab, and Isaac Lab for inspiring reaf-sim.

License & Disclaimer

reaf-sim is released under the Apache 2.0 license. See LICENSE for details.

This is not an official Google product.

Metadata

Release files for reaf-sim 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for reaf-sim 0.0.1
File Size Uploaded Provenance
reaf_sim-0.0.1.tar.gz 190.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for reaf-sim 0.0.1
File Interpreter ABI Platform
reaf_sim-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 457.5 kB

Release files / reaf_sim-0.0.1.tar.gz

Download URL reaf_sim-0.0.1.tar.gz
Size 190.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9328725aeb1711c7737f56ff91a68ecd689b029ce36193ee4aa9c7b69005f402
BLAKE2b-256 checksum
How to use checksums
463b355a9beae87872447dc092f1fbdd99de4530d1d533b38edac26d38752ac4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.2 {"installer":{"name":"uv","version":"0.13.2","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}

Release files / reaf_sim-0.0.1-py3-none-any.whl

Download URL reaf_sim-0.0.1-py3-none-any.whl
Size 266.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6f46d77601192e484ac46860c6bb5829007fe0fe3449376a7ebcb250789173d3
BLAKE2b-256 checksum
How to use checksums
0ac6463d176775046f698c21125d74b7fcbf86c860b9a4436916818f186b95ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.2 {"installer":{"name":"uv","version":"0.13.2","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}

Security for reaf-sim 0.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page