MAGMA Scenarios
Official robotic task scenarios and the shared scenario registry for MAGMA-GEN and MAGMA-BENCH. The package provides simulation environments, task definitions, presets, skills, and functions for discovering and loading scenarios from installed Python packages.
You can add your own scenarios in a separate package without modifying this repository or the generation pipeline.
Installation
Python 3.12 is required. Simulation installation has been checked on Linux x86_64.
python -m pip install "magma_scenarios==2.1.0"
This installs magma_core[simulation] and the simulation dependencies, including
ManiSkill, SAPIEN, and PyTorch. Version 2.1.0 is a stable release of this package;
it accepts MAGMA Core starting at 2.0.0b1, including subsequent stable v2
releases. GPU rendering requires suitable system drivers.
To install the release directly from GitHub:
python -m pip install "magma_scenarios @ git+https://github.com/MAGMA-rob/magma-scenarios.git@v2.1.0"
This installs the scenario code from GitHub and resolves dependencies from PyPI.
For development, clone this repository and run python -m pip install -e ..
Discover and load scenarios
magma-scenarios list
magma-scenarios show press_button
The same registry is available in Python:
from magma_scenarios import get_scenario, list_scenarios, load_definition, load_preset
print(list_scenarios())
manifest = get_scenario("press_button")
definition_type = load_definition("press_button.Definition")
preset_type = load_preset("press_button.ButtonPressOrdered")
Listing scenarios and reading manifests do not start a simulator or register
simulation environments. Loading a definition, preset, or skill registers its
scenario's environments and returns the component class; it does not create an
environment. Benchmarks can register an environment by ID with
register_environment("PressButtonBasic-v1").
Included scenarios cover button pressing, sorting, delivery, table cleaning,
laundry, coffee preparation, and packaging. Use magma-scenarios list to see
all installed scenario providers.
Add your own scenarios
Please refer to the official documentation site
Development and support
Use magma-scenarios --help for all commands. test-tools and test-requests
provide interactive checks for scenario implementations; see their --help
for configuration options.
Report bugs through GitHub Issues or contact Loan Bernat.
Authors and license
Loan Bernat, with contributions from Abdelbasset Houdass (internship). Licensed under the BSD 2-Clause License.
Metadata
Release files for magma-scenarios 2.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| magma_scenarios-2.1.0.tar.gz | 22.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| magma_scenarios-2.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 46.2 MB
Release files / magma_scenarios-2.1.0.tar.gz
| Download URL | magma_scenarios-2.1.0.tar.gz |
|---|---|
| Size | 22.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1100d91315f3486078fa35052241e00290fcce42cdedd314a635df8677213f75
|
|
BLAKE2b-256 checksum How to use checksums |
509543f1c9f07d82d87e7ae0838fb472f2b6df6d42a577da54774759c7f61fe6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 2, 2026.
Transparency logRelease files / magma_scenarios-2.1.0-py3-none-any.whl
| Download URL | magma_scenarios-2.1.0-py3-none-any.whl |
|---|---|
| Size | 23.4 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
68d7c7df10feb88e3842993486f53ff5b34200cf5844c877658e5518593c4bd9
|
|
BLAKE2b-256 checksum How to use checksums |
8925e1ef085fe0cfe474cd015f99f3e1bf2590fef41fb88932bd9005baf21d78
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 2, 2026.
Transparency log