Skip to main content

simulo

The Simulo SDK and CLI — define robotics simulation and training apps in Python, submit them to the Simulo cloud, monitor jobs, and retrieve trained models.

Simulo is a cloud-first robotics simulation and training platform. Write your app against a small, stable Python API; Simulo handles running it.

Install

pip install simulo

Requires Python 3.11+.

Quickstart

The fastest way to start: scaffold a runnable app.

simulo create mybot
# Created training app in mybot/ (app.py + .simuloignore).
cd mybot

--type picks the starter shape (default training): training (a single training job), inference (train → evaluate → rollout, self-contained), or scenario (a scripted scene, no learning). No network call and no login required — simulo create only writes files to your local folder. Edit app.py for your own robot and task, then see "Log in and submit" below to run it.

Or write an app by hand

# app.py
import simulo

app = simulo.App("hello")


@app.job(timeout=5 * 60)
def hello(name: str = "world", repeat: int = 3) -> dict:
    for i in range(repeat):
        print(f"[hello] {i + 1}/{repeat}: hello, {name}!")
    return {"greeting": f"hello, {name}", "repeat": repeat}


@app.entrypoint
def main(name: str = "world", repeat: int = 3) -> None:
    handle = hello.spawn(name=name, repeat=repeat)
    print(f"Submitted job: {handle.job_name}")

Log in and submit to the cloud

simulo login
simulo run app.py --name robot --repeat 5

Without logging in, simulo run packages the app locally without submitting it.

Every cloud submit is fresh — running the same command twice trains twice, never a silent no-op. To continue training from an earlier job's checkpoint instead, pass --from <job-ref>[:best|:latest]. Job ids, and their unambiguous prefixes (>=4 characters), work anywhere the CLI takes a job id.

Monitor jobs and retrieve results

simulo jobs                      # your jobs and their statuses
simulo logs --follow             # stream the latest job's logs live
simulo result                    # the completed job's result JSON
simulo models                    # list / download trained checkpoints (sha256-verified)
simulo recordings                # download MCAP flight recordings
simulo view                      # watch the live 3D scene (jobs submitted with --viewstream)
simulo cancel                    # cancel a queued or running job

Commands that take a job id default to the latest job, announcing what they resolved to on stderr.

Learn more at simulo.ai.

Metadata

Release files for simulo 0.18.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 simulo 0.18.1
File Size Uploaded
simulo-0.18.1.tar.gz 255.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for simulo 0.18.1
File Interpreter ABI Platform
simulo-0.18.1-py3-none-any.whl Python 3 none any Details

Total release size: 532.9 kB

Release files / simulo-0.18.1.tar.gz

Download URL simulo-0.18.1.tar.gz
Size 255.6 kB
Tags Source
SHA-256 checksum
How to use checksums
c2686eb3b180bc95a944c9e0be9dcb41476cb39f85286e9c57dac431bf52f598
BLAKE2b-256 checksum
How to use checksums
e657a4a8311b8f435c814bdc407414fe2cb0479661832059225856469c99d6a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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 Aug 9, 2026.

Transparency log

Release files / simulo-0.18.1-py3-none-any.whl

Download URL simulo-0.18.1-py3-none-any.whl
Size 277.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b5a146ccec72ab3ab2d2cb06e863d534bcfbb051d5040945b2e56d560b2cbfa0
BLAKE2b-256 checksum
How to use checksums
f5033b9daf84bae3da0218d7b6ef6191c5e80c5644618462ce68eccc053c3dd0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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 Aug 9, 2026.

Transparency log

Release history Release notifications | RSS feed

0.33.1

2 release files

0.33.0

2 release files

0.31.1

2 release files

0.31.0

2 release files

0.30.0

2 release files

0.29.0

2 release files

0.28.3

2 release files

0.28.2

2 release files

0.28.1

2 release files

0.28.0

2 release files

0.23.1

2 release files

0.23.0

2 release files

0.22.0

2 release files

0.21.0

2 release files

0.20.1

2 release files

0.20.0

2 release files

0.19.0

2 release files

This release

0.18.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