10 pontos por GN⁺ 2026-02-24 | 1 comentários | Compartilhar no WhatsApp
  • Ambiente leve de máquina virtual Linux para executar agentes de IA, funcionando com base no Virtualization.framework do macOS. Não precisa de Docker
  • Toda execução começa por padrão como efêmera (Ephemeral), então instalações e mudanças são reiniciadas automaticamente ao encerrar
  • Com o recurso de Checkpoint, é possível salvar o estado do disco como snapshots e restaurar, ramificar e reutilizar
  • É possível controlar com precisão rede, CPU, memória e tamanho do disco por opções de linha de comando ou arquivo de configuração
  • Fornece um ambiente local de sandbox seguro e reproduzível para execução de código por IA, instalação de pacotes, avaliação e testes

Visão geral do sandbox local-first shuru

  • Estrutura para executar uma VM Linux leve para agentes de IA no macOS
    • Usa o Apple Virtualization.framework para oferecer velocidade nativa ARM64 sem emulação
    • Não depende de Docker e, por padrão, funciona em modo temporário/efêmero (Ephemeral)
  • Cada execução começa com um rootfs limpo, e as mudanças não são mantidas a menos que sejam salvas

Gerenciamento de estado e snapshots

  • Com o recurso de Checkpoint, é possível salvar o estado do disco como snapshots nomeados
    • Os snapshots salvos podem ser restaurados, ramificados e executados repetidamente
    • Permite versionar o ambiente como se fossem commits do Git
  • Comandos de exemplo:
    • $ shuru checkpoint create myenv --allow-net -- sh -c 'apk add nodejs npm' → salva o snapshot myenv
    • $ shuru run --from myenv -- node -e 'console.log("ready")' → executa imediatamente no ambiente salvo

Recursos da CLI

  • Fornece uma interface CLI simples para iniciar e encerrar a VM com um único comando
    • $ shuru run -- echo "hello from the sandbox" → executa um comando dentro do sandbox
    • $ shuru run -- cat /etc/os-release | head -1 → verifica o ambiente Alpine Linux
  • O acesso à rede vem desativado por padrão, e a NAT pode ser ativada com a flag --allow-net
  • Configuração de recursos: ajuste o ambiente de execução com as opções --cpus, --memory, --disk-size
  • Suporta port forwarding: conexão entre host e guest no formato -p 8080:8000

Execução e uso com agentes de IA

  • Fornece um ambiente de VM isolado para executar código gerado por IA
    • É possível acompanhar a saída em tempo real
  • Permite fazer com segurança instalação de pacotes, compilação de código e uso de ferramentas do sistema
  • Permite realizar avaliações consistentes entre ambientes com execução paralela de sandboxes
  • Pode ser usado como ambiente Linux descartável para testes, depuração e prototipagem

Instalação e início

  • Tanto a instalação quanto a execução podem ser feitas com um único comando
  • Com inicialização rápida e ambiente descartável, oferece um espaço de execução seguro tanto para desenvolvedores quanto para sistemas de IA

1 comentários

 
GN⁺ 2026-02-24
Comentários no Hacker News
  • O ponto importante aqui não é o “VM local” em si, mas que a direção do padrão é invertida
    A maioria dos sistemas tem como padrão um estado persistente e conectado à rede, mas aqui o padrão é o oposto: um ambiente temporário e isolado
    Ao executar código não confiável, essa diferença é bastante importante

  • Estou pensando em criar uma versão local-first do microterm.dev para macOS
    O objetivo é manter o mesmo ambiente em todos os alvos, variando apenas velocidade e quantidade de RAM

    • Fiquei curioso sobre como isso executa VMs ou contêineres — é baseado em nuvem ou algo como container2wasm?
      Estou usando um terminal alpine no celular agora e chego a me perguntar se isso roda no navegador ou não
    • No Safari do iOS entra em um loop de redirecionamento (o indicador de carregamento para em torno de 90%, depois de várias atualizações dá erro)
    • Muito legal, quero muito ver isso
  • Fiquei curioso sobre o que “local first” significa aqui. Quer dizer apenas que roda localmente?

    • Isso, significa que tudo roda na minha máquina
      Serviços como E2B e sprites.dev oferecem sandboxes em nuvem, mas o shuru roda a VM localmente usando o Virtualization.framework da Apple
      Ou seja, os dados não saem do Mac
    • Como só oferece suporte a macOS, na prática é somente local
    • É uma pena que hoje em dia esse tipo de expressão acabe sendo usado só como mais uma buzzword de marketing
  • A stack de agentes está se dividindo cada vez mais em uma estrutura de camadas especializada, e o sandboxing está evoluindo como uma área independente
    Há casos como Shuru, E2B, Modal e wrappers para Firecracker
    No texto que escrevi antes, “Don’t go monolithic — the agent stack is stratifying”, também tratei dessa mudança estrutural e das limitações de abordagens monolíticas

    • O texto foi bom. Eu também tive uma experiência parecida desenvolvendo software com uso parcial de IA
      Se você não armazenar o contexto das decisões de projeto tomadas em conjunto por desenvolvedor e IA, informações importantes se perdem
      Mas não tenho certeza se esse texto se conecta diretamente ao tema de micro VM
  • Fiquei curioso sobre qual é a diferença em relação ao projeto container da Apple
    O fluxo de inovação nessa área é interessante

    • O Apple container segue um fluxo de trabalho no estilo Docker, centrado em imagens OCI e registries
      Já o shuru foca em micro VMs com recurso de checkpoint, então tem um escopo bem mais simples
  • Fiquei curioso se existe algum exemplo de algo assim implementado para Windows
    O WSL exige configuração na hora de distribuir apps para usuários comuns, então não é adequado para uso de consumidor final

  • Esse projeto é realmente muito legal. Faz meses que eu estava esperando uma micro VM baseada em Virtualization.framework
    O Docker também é bom, mas o problema é que tem overhead demais
    Gostei do fato de o padrão ser temporário e com a rede desativada
    Também queria saber se há planos para adicionar um recurso de mapeamento de diretórios do host
    Eu mantenho um servidor MCP para sandbox efêmero com suporte a vários backends (Docker, E2B, Modal, WASM etc.), então estou pensando em integrar isso nele
    Link do projeto Kilntainers

  • Fiquei curioso sobre quais são as vantagens em comparação com o Lima

    • O Lima também consegue fazer algo parecido com o shuru, se for bem configurado
      A diferença está nos padrões e no quanto a configuração inicial é simplificada
      O shuru oferece por padrão VM temporária, rede desativada e rootfs limpo a cada execução
      Basta digitar shuru run, sem arquivo de configuração, e ele executa na hora
      Checkpoint e branching também já vêm embutidos na CLI
      O Lima é um projeto muito maior e mais maduro, mas o shuru está sendo desenvolvido como uma ferramenta simples e adequada para aprendizado
  • Eu estava procurando algo assim para um projeto novo
    O que estou fazendo é uma ferramenta híbrida de retool + OpenClaw para ajudar pequenas e médias empresas a criar apps internos rapidamente

  • O Shuru é muito legal mesmo
    Eu também estou desenvolvendo uma ferramenta baseada em MicroVM para Linux com conceito parecido
    O padrão é offline, e ainda não está em fase de divulgação, mas estamos usando internamente em dogfooding