Pydantic shipped Monty v1.0.0 on 2026-09-25 (PyPI pydantic-monty, npm @pydantic/monty, crates.io monty), dropping the experimental label. OSS Monty is a from-scratch Rust Python bytecode VM (Ruff parser) with zero FS/network/env by default—host access only via explicit external functions. Official alternatives table: ~0.8ms warm checkout / ~5ms new pool vs ~195ms Docker exec, ~1500ms remote sandbox services, ~2700ms Pyodide. Built for agent-written code, not full VMs.

Key Takeaways

  • ✓Shipped: v1.0.0 — uv add pydantic-monty / npm i @pydantic/monty / cargo add monty
  • ✓Official latency: ~0.8ms warm OSS checkout, ~5ms new pool vs ~195ms Docker, ~1500ms remote services, ~2700ms Pyodide
  • ✓Default deny FS/network/env; host reachability only via explicit external functions
  • ✓OSS Monty (MIT package) + commercial Full Monty (~2ms warm); Python ≥3.10
  • ✓Powers Pydantic AI Code Mode; docs at pydantic.dev/docs/monty
🔬

In-Depth Technical Analysis

Core Background & Industry Pain Points

Agents that only need safe compute often pay container cold-start and security-review costs for full CPython sandboxes (Docker/E2B/Daytona).

Architecture Highlights & Internals

Monty v1.0.0 GA’s OSS Monty: a from-scratch Rust Python bytecode VM (Ruff parser), default-deny FS/network/env, host I/O only via explicit external functions. Packages: pydantic-monty, @pydantic/monty, crate monty; commercial Full Monty exposes the same workers over WebSocket.

Authoritative Benchmarks & Measured Scores

Official alternatives: OSS warm checkout ~0.8ms, new pool ~5ms vs Docker ~195ms, remote services ~1500ms, Pyodide ~2700ms (measured paths documented on that page). Not a coding-agent solve-rate leaderboard—reproduce with local feed_run canaries.

Developer Hands-on Guide

uv add pydantic-monty (Python ≥3.10) or npm i @pydantic/monty. Checkout a session and feed_run with inputs/external_lookup. See docs for security, limits, and language coverage. Keep full-container sandboxes when you truly need arbitrary packages.