SO101-Nexus: full-stack robot learning for the SO-101 arm
Beta: APIs may change between releases. Feedback and bug reports are welcome.
Record demonstrations, train a policy with behavior cloning, then fine-tune it with reinforcement learning. SO101-Nexus connects SO-100 and SO-101 leader arms, LeRobot datasets, and Gymnasium environments in one Python library.
Start here
| I want to... | Go to |
|---|---|
| Install the library | Installation |
| Run a simulated robot | Quickstart |
| Record demonstrations with a leader arm | Teleoperation |
| Train with published demonstrations | Training |
| Choose a task | Environments |
| Use LeRobot EnvHub | LeRobot compatibility |
No leader arm? Start with the published demonstrations in the BC + PPO Colab notebook. Select a GPU runtime and run all cells.
How it works
- Record. Control a simulated follower with a physical leader arm and save a LeRobot dataset.
- Clone. Train a policy to reproduce the demonstrations.
- Reinforce. Fine-tune the policy with PPO on the GPU-parallel MuJoCo Warp backend.
The workflow guide connects these stages. The examples index lists the training scripts and notebooks.
MuJoCo provides the default simulation backend. The optional Warp backend supports batched GPU training. See Backends for rendering, hardware requirements, and physics differences.
Development
Follow the source installation guide, then run:
make format lint typecheck
make test
See CONTRIBUTING.md for contribution instructions and Stability and versioning for the release policy.
License
This repository's source code is available under the Apache-2.0 License.
Metadata
Release files for so101-nexus 0.8.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| so101_nexus-0.8.1.tar.gz | 16.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| so101_nexus-0.8.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.5 MB
Release files / so101_nexus-0.8.1.tar.gz
| Download URL | so101_nexus-0.8.1.tar.gz |
|---|---|
| Size | 16.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c299b1e5aeb71ee3f217032af6444946038f92503b2961b52f3599e8929c7fdf
|
|
BLAKE2b-256 checksum How to use checksums |
db3d9d61ed4e3c4adf197d93e415a158a77c5b336e1339b7842354ad2e9c8461
|
| 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 4, 2026.
Transparency logRelease files / so101_nexus-0.8.1-py3-none-any.whl
| Download URL | so101_nexus-0.8.1-py3-none-any.whl |
|---|---|
| Size | 13.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
df773f3aedccbe0f2d14ce8f20dd44e8a09a421ae7388278cff1fad627cac9ae
|
|
BLAKE2b-256 checksum How to use checksums |
24ddad8cb69ca98edb0f4075b17e776b53b894ecda1ae9234c621e4495a22723
|
| 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 4, 2026.
Transparency log