This release is a pre-release and may not be stable for production use.
pydantic-monty-runtime
The monty command-line binary for the
Monty sandbox.
Installing the wheel puts the compiled binary in the environment's scripts directory.
You normally don't install this directly — the
pydantic-monty metapackage pulls
it in alongside the Python bindings, which need it to spawn worker
subprocesses. Install it on its own to get just the CLI, or to supply the binary
to an existing pydantic-monty-client
install:
uv add pydantic-monty-runtime
# or
pip install pydantic-monty-runtime
Or to install the monty binary as a tool
uv tool install pydantic-monty-runtime
monty --help
Usage
monty— start an interactive REPLmonty file.py— run a Python filemonty -c "<code>"— run a program passed as a string (likepython -c)-i/--interactive— run the file or-cprogram in a REPL session (likepython -i)-t/--type-check— type check (powered by ty) before executing--type-check-format— diagnostic format:full(default),concise,json,githuband the other ty formats (requires--type-check)-m/--mount /host/path::/virtual/path[::mode[::write_limit_bytes]]— mount a host directory into the sandbox (ro,rw, oroverlay); repeat for several, which need distinct virtual paths and disjoint host directories--cwd /virtual/path— the sandbox's working directory (default: the first mount's virtual path, else/); relative paths resolve against it--max-memory 10MB,--max-feed-duration 0.5,--max-turn-duration,--max-recursion-depth,--gc-interval,--max-suspensions— sandbox resource limits--max-sleep 10— longest wait atime.sleep()/asyncio.sleep()performs, in seconds; longer sleeps are cut short (inffor no limit)--max-total-sleep 30— maximum cumulative time the host waits for those sleeps, in seconds; a sleep that would go over is refused (off unless given)
date.today(), datetime.now() and time.localtime() use the system clock in UTC; astimezone() and time.tzname also report that zone; time.time(), time.monotonic() and time.perf_counter() all return Unix epoch seconds.
time.process_time() is always 0.0.
time.sleep() and asyncio.sleep() wait for at most --max-sleep seconds each.
An unseeded random draw uses system entropy.
Rust embedders can change these defaults with MontyRun::with_os_policy; the CLI only exposes the sleep limits.
os.urandom() raises NotImplementedError (or RuntimeError under --mount) because the CLI has no handler for it.
Worker mode
monty subprocess runs the binary as a wire-protocol child: framed protobuf
requests on stdin, framed events on stdout. This is how pydantic-monty runs
sandboxed code with crash isolation, and is meant to be driven by a parent
process, not by hand.
The wheels are built from the
monty-runtime crate; see its
readme for cargo features, telemetry, and the rest of the Rust-side detail.
Release files for pydantic-monty-runtime 1.0.0b2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pydantic_monty_runtime-1.0.0b2.tar.gz | 2.1 MB | Details |
Built distributions (wheels)
Total release size: 150.7 MB
Release files / pydantic_monty_runtime-1.0.0b2.tar.gz
| Download URL | pydantic_monty_runtime-1.0.0b2.tar.gz |
|---|---|
| Size | 2.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1526aa501fab98fa8a28c1e2b66ec5033ec81070eccec493a113f39b1d144bce
|
|
BLAKE2b-256 checksum How to use checksums |
76fb6224ef692ee236ad4977d6a949d9ecb8de1e669baaf3269832ca8b100a64
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-win_amd64.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-win_amd64.whl |
|---|---|
| Size | 12.0 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
43d23c4813e545f96901d788b111c07e063736b844e9cdad5a209ed7a58f6a76
|
|
BLAKE2b-256 checksum How to use checksums |
ebcb8fcb6104942dc10672948a8c570b051e45238ac1af39ed6b49f1e786cdf7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-win32.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-win32.whl |
|---|---|
| Size | 11.1 MB |
| Tags | Python 3 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
ac56355dcf15d7981dcb313107c59a6aa4b8089e41644634bb4cbba2df777732
|
|
BLAKE2b-256 checksum How to use checksums |
a8ab55af0ca6bab4aeb707d9af51e3932d779ae2d4854462a2621a68ba68683e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-musllinux_1_1_x86_64.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-musllinux_1_1_x86_64.whl |
|---|---|
| Size | 11.7 MB |
| Tags | Linux musl 1.1+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
92d94ccefbec1552886fff1d4ba73df1d844f5a8bc051dda96197279c01d10d6
|
|
BLAKE2b-256 checksum How to use checksums |
d9203d8f0c8c659e05dab4ec51b7b50d6de8b391ecb52721d21b9346a8c51fd7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-musllinux_1_1_aarch64.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-musllinux_1_1_aarch64.whl |
|---|---|
| Size | 11.1 MB |
| Tags | Linux musl 1.1+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
80558340ba28611e28281a0945fd95b0d0eb48162299ca35457ea30375e12938
|
|
BLAKE2b-256 checksum How to use checksums |
cd241ec004d395d8f3c5c2fe19b0d28b87a9dc3f3d273adf15deeb51d2d80cf0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_x86_64.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 14.5 MB |
| Tags | Linux glibc 2.28+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
f2b31e47835f13b0d2735c4f30470eb796c6c42fe381b6ece19cac148c784c5b
|
|
BLAKE2b-256 checksum How to use checksums |
14dec7ad6567a11098a49d8a82cb4df0fbd48782a9e13532f7d6a466feda6f4d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_s390x.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_s390x.whl |
|---|---|
| Size | 12.9 MB |
| Tags | Linux glibc 2.28+ IBM System/390x Python 3 |
|
SHA-256 checksum How to use checksums |
df8f6a4d9706c786b9290b0064d92df57f15acc9edd5362ba30a699b2997e780
|
|
BLAKE2b-256 checksum How to use checksums |
6eeb247241de493d88990ae8960e03f4e85b752b927356a92d9fade4e4244588
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_ppc64le.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_ppc64le.whl |
|---|---|
| Size | 12.5 MB |
| Tags | Linux glibc 2.28+ PowerPC 64-le Python 3 |
|
SHA-256 checksum How to use checksums |
233aae77e717dfcf9df736c1cf6a694fde89c081e7c8c23af0ca1432d357b367
|
|
BLAKE2b-256 checksum How to use checksums |
6584e3cc40f76751380cc64fc658491fc5352f9b35b009ad8f4f5a611c0b8855
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_i686.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_i686.whl |
|---|---|
| Size | 12.2 MB |
| Tags | Linux glibc 2.28+ x86-32 Python 3 |
|
SHA-256 checksum How to use checksums |
b2e86185af42089731f2683f1743f1c936c753e8be6b12b6dfeec50445055b22
|
|
BLAKE2b-256 checksum How to use checksums |
35f02d691a2077b4564119d9b4f5f6b2efd1ba591c8cf6c25d9d99ba1938cd39
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_armv7l.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_armv7l.whl |
|---|---|
| Size | 11.9 MB |
| Tags | Linux glibc 2.28+ ARMv7l Python 3 |
|
SHA-256 checksum How to use checksums |
0c280660152d098443c83f74f34a435615b1969054366d5c4dbf09aa16502d8d
|
|
BLAKE2b-256 checksum How to use checksums |
9c8142fefde932ef74382ee0ba2396fc12256de595e3085be2c5c03a3877c05a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_aarch64.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 13.9 MB |
| Tags | Linux glibc 2.28+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
dd2d622fd06cd6713b2af806be0910c00c9e7dfdd2491e3dcd0ff7c30b029b63
|
|
BLAKE2b-256 checksum How to use checksums |
586948d6ecc867069c96331a756aacb7b67f376e80b326cfcd9dc6f49b46a87c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-macosx_11_0_arm64.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 13.4 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
22bd98b4e1afdce0ea4773b4d4863ad335bc8a0dcba26fc848820d5cdb88a865
|
|
BLAKE2b-256 checksum How to use checksums |
135aa6079d95045bb52a4fc78934d4025ef15ab8292216493a5ef11761614abe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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 / pydantic_monty_runtime-1.0.0b2-py3-none-macosx_10_12_x86_64.whl
| Download URL | pydantic_monty_runtime-1.0.0b2-py3-none-macosx_10_12_x86_64.whl |
|---|---|
| Size | 11.4 MB |
| Tags | Python 3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
ffdf4d5a3cb13e6b23a02f776c4131b1d0ed5ae344c6574a96adbd751991e221
|
|
BLAKE2b-256 checksum How to use checksums |
4d3056392027e52132532056a626b3a8fb99089e362a2c19ce6b870657eef440
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","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}
|