Skip to main content

mujoco-stubs

PyPI Python Version PyPI version

An unofficial stub-only package providing type hints for MuJoCo, a physics engine for robotics and biomechanics.

The stubs were generated from MuJoCo 3.8.0 using pybind11-stubgen and corrected with the generation scripts in this repository. They are a best-effort aid to type checking and autocompletion, and may be incomplete or inaccurate. Consult the official MuJoCo documentation for runtime behavior.

Usage

Python 3.10 or newer is required. Install from PyPI:

pip install mujoco-stubs

This installs the stubs and their typing dependencies without installing or constraining MuJoCo. To also install a compatible MuJoCo runtime, use the extra:

pip install "mujoco-stubs[mujoco]"

The extra requires mujoco>=3.8.0,<3.9.0 and may change the installed MuJoCo version to satisfy that range. Type checkers that support PEP 561 discover the stubs automatically when your code imports mujoco.

The package is partial. Graphics typing focuses on Renderer, viewer handles, and public GLContext operations. Direct OpenGL/EGL/CGL bindings and internal modules such as mujoco._simulate and the gl_context backend selectors remain partially or wholly uncovered.

The stubs have been audited on both macOS (CGL) and Linux with EGL libraries available. Windows runtime auditing is not yet covered.

Versioning

The version of this package follows {mujoco_version}.{stub_revision}. For example, 3.8.0.1 is stub revision 1 generated from MuJoCo 3.8.0; 3.8.0.2 would contain further stub corrections. This release targets the MuJoCo 3.8 series. The optional mujoco extra enforces that version range; a plain installation leaves runtime version selection to you. The stub version number alone does not constrain MuJoCo.

Development

With uv installed, run the package validation:

uv run --locked --python 3.12 python scripts/validate.py

If you use just, just validate runs the same checks, just lint checks the validation code, and just build builds distributions.

just audit runs mypy's stubtest with commented allowlists for known native-binding differences and partial coverage.

License

Licensed under Apache-2.0. See NOTICE for MuJoCo and dm_control attribution and the origin of the generated declarations.

Metadata

Release files for mujoco-stubs 3.8.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 mujoco-stubs 3.8.0.1
File Size Uploaded
mujoco_stubs-3.8.0.1.tar.gz 180.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mujoco-stubs 3.8.0.1
File Interpreter ABI Platform
mujoco_stubs-3.8.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 282.4 kB

Release files / mujoco_stubs-3.8.0.1.tar.gz

Download URL mujoco_stubs-3.8.0.1.tar.gz
Size 180.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0d636306cf5e065cc16d97ce40155899cb3689338b05667e7536321ef248db80
BLAKE2b-256 checksum
How to use checksums
c066ff29e16088adec3991aa720ad7dd0ac836b149adc822685a4f8cdbfbc653
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","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}

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / mujoco_stubs-3.8.0.1-py3-none-any.whl

Download URL mujoco_stubs-3.8.0.1-py3-none-any.whl
Size 102.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e3ef3d9cc13893b0ec005e4fafc924d69d15f617000f248908afe17f4e7e811a
BLAKE2b-256 checksum
How to use checksums
7d8633aa360c487bb681f113658ca10e5cfe59b8f6d8d0939140904508b537a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","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}

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

3.8.0.1 This release

2 release files

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