amla-sandbox-core
May 15, 2026 ยท View on GitHub
Rust source for the WebAssembly sandbox runtime that powers
amla-sandbox on PyPI. Each release
of this repository publishes an amla_sandbox.wasm binary as a GitHub
Release asset; the amla-sandbox Python wheel bundles that artifact at
packaging time.
This repository is the release source. Development happens in the amlalabs monorepo; this repo is updated on release.
Why this is open
The primary consumer of amla_sandbox.wasm today is the amla-sandbox
Python package. The Rust source is open-sourced so that:
- Anyone deploying agents against this sandbox can audit how isolation, capability checks, the virtual filesystem, the JS runtime embedding, and the async scheduler are implemented.
- The WebAssembly artifact remains reproducible from source; you do not have to trust the prebuilt wheel.
- Future embedders (other host languages, alternative front-ends) have a path forward. No non-Python embedder is planned today; the surface is shaped for the Python host.
Build
cargo build --release --target wasm32-wasip1 -p amla-sandbox
The output is target/wasm32-wasip1/release/amla_sandbox.wasm (cargo's
default underscore form for the crate name). The published GitHub Release for
each tag attaches this artifact directly under the same name,
amla_sandbox.wasm; it is not renamed.
You will need a recent stable Rust toolchain with the wasm32-wasip1 target:
rustup target add wasm32-wasip1
Layout
The repository is a pruned cargo workspace. The leaf crate
(crates/amla-sandbox) plus the transitive set of internal dependencies it
needs are present; unrelated crates from the monorepo are not. Workspace-level
config (.cargo/, clippy.toml, deny.toml, vendored sources) is included
so the workspace builds standalone.
Contributing
See CONTRIBUTING.md. Pull requests against this mirror will be clobbered on next release; please target the monorepo or open an issue here.
License
AGPL-3.0-or-later OR BUSL-1.1. See the top-level LICENSE file; the same
terms apply to every crate in the workspace.