Repolode
deeplethe

deeplethe/forkd

Sandboxes microVM no estilo fork para agentes de IA: filhos fazem fork copy-on-write de um processo pai Firecracker aquecido, com isolamento por KVM e BRANCH de VMs em execução.

Alternativa open source a:E2B

Estrelas
2,901
Forks
224
Issues abertas
8
Último commit
há 3 horas

O que é?

forkd é um runtime de sandbox microVM baseado no Firecracker, voltado a cargas de trabalho em que muitos sandboxes de agentes de IA de curta duração precisam do mesmo ambiente aquecido. Uma VM pai inicializa uma vez, carrega o runtime e as dependências e é pausada para gerar um snapshot. Cada filho é um processo Firecracker separado que mapeia a imagem de memória do pai com MAP_PRIVATE; assim, os filhos compartilham a memória residente usando copy-on-write e iniciam em cerca de 100 ms, em vez de inicializar o kernel do zero.

Cada filho mantém o isolamento de hardware via KVM e recebe seu próprio namespace de rede e limite de memória do cgroup v2. forkd também oferece BRANCH, que pausa um sandbox em execução, cria um snapshot do estado atual e o retoma; o modo live reduz o tempo de pausa do processo de origem. É possível encadear snapshots diff, empacotá-los em arquivos portáteis e baixá-los de um hub.

O projeto oferece um daemon com REST API, uma CLI, SDKs para Python e TypeScript e um servidor MCP para clientes como Claude Desktop e Cursor. É necessário um host Linux x86_64 com KVM.

Recursos principais

  • 01Cria microVMs filhas a partir de um snapshot de um processo pai aquecido, compartilhando memória com copy-on-write.
  • 02Executa cada filha em um processo Firecracker próprio, com suporte de KVM e namespace de rede separado.
  • 03Oferece BRANCH para criar um snapshot de um sandbox em execução e retomá-lo, incluindo um modo live com pausa mais curta.
  • 04Encadeia snapshots diff e os empacota ou desempacota como arquivos portáteis.
  • 05Oferece REST API, CLI, SDKs para Python e TypeScript e um servidor MCP.
  • 06Disponibiliza métricas Prometheus e um log de auditoria JSON apenas para acréscimo.

Casos de uso

  • Executar sessões de interpretador de código em que cada solicitação recebe um sandbox novo com bibliotecas pré-carregadas.
  • Executar centenas de clones de repositórios ou rodadas de testes em paralelo para avaliar agentes.
  • Oferecer execução de código por usuário em um host Linux autogerenciado, com isolamento via KVM.
  • Criar forks do estado do sandbox de um agente em execução para testar várias próximas etapas alternativas.

Início rápido

  1. 1

    Instale o forkd seguindo a seção de instalação do README

  2. 2

    Faça fork de 3 sandboxes a partir de uma tag de snapshot

    forkd fork --tag py-pandas -n 1

Antes de usar

  • Requer Linux com KVM; não é um ambiente de execução para macOS ou Windows.
  • O Live BRANCH requer Linux 5.7 ou posterior, um fork do Firecracker incorporado ao projeto e o userfaultfd habilitado.
  • O projeto está na versão v0.x, portanto as interfaces podem mudar entre versões.

Em coleções

Tópicos

Perguntas frequentes

O que é forkd?
Sandboxes microVM no estilo fork para agentes de IA: filhos fazem fork copy-on-write de um processo pai Firecracker aquecido, com isolamento por KVM e BRANCH de VMs em execução. forkd é um runtime de sandbox microVM baseado no Firecracker, voltado a cargas de trabalho em que muitos sandboxes de agentes de IA de curta duração precisam do mesmo ambiente aquecido. Uma VM pai inicializa uma vez, carrega o runtime e as dependências e é pausada para gerar um snapshot. Cada filho é um processo Firecracker separado que mapeia a imagem de memória do pai com MAP_PRIVATE; assim, os filhos compartilham a memória residente usando copy-on-write e iniciam em cerca de 100 ms, em vez de inicializar o kernel do zero.
forkd é gratuito? Qual é a licença?
forkd é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
forkd ainda é mantido?
Manutenção ativa. O último commit de forkd foi em 24 de out. de 2026.
Para que posso usar forkd?
Executar sessões de interpretador de código em que cada solicitação recebe um sandbox novo com bibliotecas pré-carregadas. Executar centenas de clones de repositórios ou rodadas de testes em paralelo para avaliar agentes. Oferecer execução de código por usuário em um host Linux autogerenciado, com isolamento via KVM. Criar forks do estado do sandbox de um agente em execução para testar várias próximas etapas alternativas.
Como instalar forkd?
Instale o forkd seguindo a seção de instalação do README Faça fork de 3 sandboxes a partir de uma tag de snapshot: forkd fork --tag py-pandas -n 1
Onde consigo forkd?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/deeplethe/forkd

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados