Runtime WebAssembly e CLI para executar apps e código de agentes de IA em ambientes rápidos, leves e isolados.
bytecodealliance/wasmtime
Runtime independente de WebAssembly baseado no gerador de código Cranelift, com suporte a WASI e integração com aplicações em várias linguagens.
- Estrelas
- 18,744
- Forks
- 1,879
- Issues abertas
- 888
- Último commit
- há 4 horas
O que é?
Wasmtime é um runtime independente para WebAssembly, um formato binário portátil para código executado em navegadores e fora deles. Ele pode executar componentes WebAssembly pela linha de comando com o CLI wasmtime ou ser integrado a aplicações por meio do crate de Rust e de bindings para C, C++, Python, .NET, Go e Ruby.
Ele compila módulos com o gerador de código Cranelift, tanto just-in-time, durante a execução, quanto antecipadamente. O projeto oferece opções de configuração para o uso de CPU e memória e fornece APIs de WASI para que programas convidados interajam com o ambiente do host, incluindo arquivos e recursos do sistema. O projeto afirma passar no conjunto oficial de testes de WebAssembly e implementar a API oficial de C para wasm.
O Wasmtime é mantido pela Bytecode Alliance e foi escrito em Rust.
Recursos principais
- 01Compila WebAssembly com o gerador de código Cranelift, durante a execução ou antecipadamente.
- 02Fornece APIs de WASI para que programas convidados acessem recursos do host.
- 03Oferece controles de configuração para o consumo de CPU e memória.
- 04Inclui um CLI para executar componentes WebAssembly diretamente.
- 05Oferece bindings para integração com Rust, C, C++, Python, .NET, Go e Ruby.
Casos de uso
- Executar componentes WebAssembly pela linha de comando.
- Integrar um runtime de WebAssembly isolado em uma aplicação Rust ou C.
- Executar código de plugins não confiáveis com acesso ao host baseado em WASI.
Início rápido
- 1
Instale o Wasmtime CLI com o script oficial de instalação ou pela página de releases
- 2
Adicione o target WebAssembly WASI ao Rust
rustup target add wasm32-wasip2 - 3
Compile um programa hello-world em Rust como um componente WebAssembly
rustc hello.rs --target wasm32-wasip2 - 4
Execute o componente compilado com o Wasmtime
wasmtime hello.wasm
Antes de usar
- O script de instalação de uma linha só está documentado para Linux e macOS; usuários do Windows devem usar a página de releases.
Tópicos
Perguntas frequentes
- O que é wasmtime?
- Runtime independente de WebAssembly baseado no gerador de código Cranelift, com suporte a WASI e integração com aplicações em várias linguagens. Wasmtime é um runtime independente para WebAssembly, um formato binário portátil para código executado em navegadores e fora deles. Ele pode executar componentes WebAssembly pela linha de comando com o CLI wasmtime ou ser integrado a aplicações por meio do crate de Rust e de bindings para C, C++, Python, .NET, Go e Ruby.
- wasmtime é gratuito? Qual é a licença?
- wasmtime é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- wasmtime ainda é mantido?
- Manutenção ativa. O último commit de wasmtime foi em 21 de out. de 2026.
- Para que posso usar wasmtime?
- Executar componentes WebAssembly pela linha de comando. Integrar um runtime de WebAssembly isolado em uma aplicação Rust ou C. Executar código de plugins não confiáveis com acesso ao host baseado em WASI.
- Como instalar wasmtime?
- Instale o Wasmtime CLI com o script oficial de instalação ou pela página de releases Adicione o target WebAssembly WASI ao Rust: rustup target add wasm32-wasip2 Compile um programa hello-world em Rust como um componente WebAssembly: rustc hello.rs --target wasm32-wasip2 Execute o componente compilado com o Wasmtime: wasmtime hello.wasm
- Onde consigo wasmtime?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/bytecodealliance/wasmtime
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Interpretador de Python 3 escrito em Rust, capaz de executar código Python sem bindings de CPython, com suporte a WebAssembly e incorporação em aplicações.
Runtime de JavaScript, TypeScript e WebAssembly com padrões seguros, desenvolvido com V8, Rust e Tokio.
Framework Rust para criar aplicações web interativas no cliente, compiladas para WebAssembly, com uma macro semelhante a JSX para HTML.
Uma toolchain de compilação que transforma código C e C++ em WebAssembly para execução em navegadores, Node.js e outros runtimes Wasm.
Uma linguagem e um compilador semelhantes a TypeScript que transformam um subconjunto tipado de TypeScript em módulos WebAssembly.