14 pontos por xguru 2026-02-20 | Ainda não há comentários. | Compartilhar no WhatsApp
  • “Bash for Agents” criado pela Vercel
  • Ambiente Bash virtual baseado em TypeScript projetado para agentes de IA que precisam de um ambiente Bash seguro e em sandbox
  • Funciona sobre um sistema de arquivos virtual em memória (InMemoryFs), oferecendo um ambiente de execução em sandbox sem acesso ao disco real
  • Por padrão, o acesso à rede é bloqueado e, quando necessário, há suporte a requisições de rede seguras com base em URLs permitidas via curl
  • Só é possível acessar o sistema de arquivos fornecido, e inclui recursos para evitar loops infinitos e execução recursiva
    • Execução de binários ou WASM não é suportada
  • Ao usar a API, o isolamento ocorre por unidade de exec(), então variáveis de ambiente, funções e diretório de trabalho não são mantidos entre chamadas (apenas o estado do sistema de arquivos persiste)
  • Oferece configuração detalhada por meio de argumentos de criação, como arquivos iniciais, variáveis de ambiente, diretório de trabalho e limites de execução
  • Suporta carregamento lazy de arquivos, permitindo gerar o conteúdo apenas quando necessário, por meio de funções síncronas ou assíncronas
  • Com o recurso de comandos personalizados (defineCommand), é possível adicionar comandos customizados baseados em TypeScript
    • Via CommandContext, há acesso a fs, cwd, env, stdin e exec
  • Quatro implementações de sistema de arquivos são fornecidas
    • InMemoryFs: puramente baseado em memória
    • OverlayFs: leitura do disco, escrita na memória
    • ReadWriteFs: permite leitura e escrita no disco real
    • MountableFs: monta vários sistemas de arquivos por caminho para compor um namespace unificado
  • Suporte ao bash-tool como ferramenta de integração com AI SDK
    • Projetado para combinar com generateText() e permitir que modelos de IA executem comandos Bash com segurança
  • Fornece API compatível com Vercel Sandbox
    • Pela classe Sandbox, pode ser usado com a mesma interface de @vercel/sandbox
    • Quando necessário, é fácil migrar para um sandbox real baseado em VM
  • Fornece a CLI just-bash
    • Executa com base em OverlayFS e todo o conteúdo gravado é descartado da memória após a execução
    • A opção --json oferece saída de resultados programática
  • Também oferece modo de shell interativo (pnpm shell)
    • Por padrão, o acesso à internet é permitido, podendo ser bloqueado com --no-network
  • Comandos suportados
    • Inclui a maior parte dos comandos Bash padrão para manipulação de arquivos, processamento de texto, tratamento de dados, compactação, rede etc.
    • Também há suporte opcional a comandos de processamento de dados como jq, sqlite3 e python3 (baseado em Pyodide)
    • Em termos de recursos de shell, implementa boa parte da sintaxe do Bash, como pipes, redirecionamento, condicionais, loops, funções, variáveis e padrões glob
  • A estrutura padrão de diretórios oferece um ambiente semelhante ao Unix, com /home/user, /bin, /usr/bin, /tmp etc.
  • O controle de acesso à rede usa whitelist baseada em URL e método HTTP
    • A opção dangerouslyAllowFullInternetAccess permite acesso total, se necessário
  • O suporte a Python e SQLite é ativado opcionalmente
    • Com Python baseado em Pyodide e SQLite baseado em WASM (sql.js), garantindo execução totalmente em sandbox
  • Como mecanismos de proteção de execução, é possível definir limites como profundidade de funções, número de comandos e quantidade de iterações de loop
  • Licença Apache-2.0

Ainda não há comentários.

Ainda não há comentários.