Un runtime de WebAssembly y CLI para ejecutar aplicaciones y código de agentes de IA en entornos rápidos, ligeros y aislados.
bytecodealliance/wasmtime
Runtime independiente de WebAssembly basado en el generador de código Cranelift, con compatibilidad con WASI e integración en varios lenguajes.
- Estrellas
- 18,744
- Forks
- 1,879
- Issues abiertos
- 888
- Último commit
- hace 4 horas
¿Qué es?
Wasmtime es un runtime independiente para WebAssembly, el formato binario portable para código que se ejecuta en navegadores y fuera de ellos. Permite ejecutar componentes de WebAssembly desde la línea de comandos con el CLI de wasmtime o integrarlo en aplicaciones mediante su crate de Rust y sus bindings para C, C++, Python, .NET, Go y Ruby.
Compila módulos con el generador de código Cranelift, ya sea justo a tiempo durante la ejecución o de forma anticipada. El proyecto ofrece opciones de configuración para el uso de CPU y memoria, y proporciona APIs de WASI para que los programas invitados puedan interactuar con el entorno anfitrión, por ejemplo, con archivos y recursos del sistema. El proyecto afirma que supera la suite oficial de pruebas de WebAssembly e implementa la API oficial de wasm para C.
Wasmtime se mantiene bajo la Bytecode Alliance y está escrito en Rust.
Funciones clave
- 01Compila WebAssembly con el generador de código Cranelift, durante la ejecución o de forma anticipada.
- 02Proporciona APIs de WASI para que los programas invitados accedan a los recursos del anfitrión.
- 03Ofrece opciones de configuración para controlar el consumo de CPU y memoria.
- 04Incluye un CLI para ejecutar componentes de WebAssembly directamente.
- 05Ofrece bindings para integrar el runtime con Rust, C, C++, Python, .NET, Go y Ruby.
Casos de uso
- Ejecutar componentes de WebAssembly desde la línea de comandos.
- Integrar un runtime aislado de WebAssembly en una aplicación de Rust o C.
- Ejecutar código de plugins no confiable con acceso al anfitrión mediante WASI.
Inicio rápido
- 1
Instala Wasmtime CLI con el script de instalación oficial o desde la página de versiones
- 2
Añade el destino WebAssembly WASI a Rust
rustup target add wasm32-wasip2 - 3
Compila un programa hello-world de Rust como componente WebAssembly
rustc hello.rs --target wasm32-wasip2 - 4
Ejecuta el componente compilado con Wasmtime
wasmtime hello.wasm
Antes de usarlo
- El script de instalación de una sola línea solo está documentado para Linux y macOS; los usuarios de Windows deben usar la página de versiones.
Temas
Preguntas frecuentes
- ¿Qué es wasmtime?
- Runtime independiente de WebAssembly basado en el generador de código Cranelift, con compatibilidad con WASI e integración en varios lenguajes. Wasmtime es un runtime independiente para WebAssembly, el formato binario portable para código que se ejecuta en navegadores y fuera de ellos. Permite ejecutar componentes de WebAssembly desde la línea de comandos con el CLI de wasmtime o integrarlo en aplicaciones mediante su crate de Rust y sus bindings para C, C++, Python, .NET, Go y Ruby.
- ¿wasmtime es gratuito? ¿Qué licencia tiene?
- wasmtime es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿wasmtime sigue mantenido?
- Mantenimiento activo. El último commit de wasmtime fue el 21 oct 2026.
- ¿Para qué puedo usar wasmtime?
- Ejecutar componentes de WebAssembly desde la línea de comandos. Integrar un runtime aislado de WebAssembly en una aplicación de Rust o C. Ejecutar código de plugins no confiable con acceso al anfitrión mediante WASI.
- ¿Cómo se instala wasmtime?
- Instala Wasmtime CLI con el script de instalación oficial o desde la página de versiones Añade el destino WebAssembly WASI a Rust: rustup target add wasm32-wasip2 Compila un programa hello-world de Rust como componente WebAssembly: rustc hello.rs --target wasm32-wasip2 Ejecuta el componente compilado con Wasmtime: wasmtime hello.wasm
- ¿Dónde consigo wasmtime?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/bytecodealliance/wasmtime
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un intérprete de Python 3 escrito en Rust que ejecuta código Python sin bindings de CPython y ofrece compatibilidad con WebAssembly e integración en aplicaciones.
Runtime de JavaScript, TypeScript y WebAssembly con valores predeterminados seguros, basado en V8, Rust y Tokio.
Framework de Rust para crear aplicaciones web interactivas del lado del cliente y compilarlas a WebAssembly, con una macro para HTML similar a JSX.
Una cadena de herramientas de compilación que convierte código C y C++ en WebAssembly para ejecutarlo en navegadores, Node.js y otros runtimes de Wasm.
Lenguaje similar a TypeScript y compilador que convierte un subconjunto tipado de TypeScript en módulos WebAssembly.