O que é o Clawk
O Clawk e uma ferramenta open source que resolve um problema real de quem usa agentes de código com IA: esses agentes executam comandos no seu computador, instalam pacotes, editam arquivos e as vezes fazem coisas que você não pediu. O Clawk cria uma VM Linux descartavel para cada sessão de agente, isolando completamente a execução do seu ambiente real.
A ideia e simples: em vez de deixar Claude Code, Aider, Devin ou qualquer outro agente de código rodar comandos direto no seu laptop, você da a eles um ambiente Linux temporário. Se o agente fizer algo errado, baguncar dependências ou instalar algo indesejado, a VM e descartada e pronto. Seu computador fica intacto.
O projeto foi criado pela equipe da Clawkwork e esta disponível no GitHub como software livre. O nome e uma brincadeira com 'claw' (garra) e 'work', referenciando a ideia de dar ao agente um ambiente de trabalho isolado.
O Clawk e especialmente útil para times que usam agentes de código em pipelines de CI/CD ou em ambientes de desenvolvimento compartilhados, onde um agente com comportamento inesperado pode afetar outros desenvolvedores.
Como o Clawk funciona
Internamente, o Clawk provisiona uma VM Linux leve (baseada em microVMs ou containers com isolamento de kernel) para cada sessão de agente. Quando você inicia uma sessão com o Clawk, ele:
- Cria uma VM efémera com o ambiente Linux especificado (Ubuntu, Alpine, etc.)
- Monta seu projeto atual como volume compartilhado de leitura ou leitura/escrita
- Inicia o agente de código dentro da VM
- Expõe as ferramentas do agente (terminal, filesystem, git) via a VM, não diretamente no seu host
- Ao terminar, destrói a VM completamente
O projeto local e montado como volume, então o agente pode ler e escrever arquivos do projeto real, mas todo o resto (dependências instaladas, processos em background, mudanças no sistema) fica confinado a VM.
Montar o projeto como volume leitura/escrita significa que o agente ainda pode editar seus arquivos de código. O isolamento e do ambiente do sistema operacional, não do projeto em si.
Principais recursos do Clawk
O Clawk oferece um conjunto de funcionalidades pensadas especificamente para o fluxo de trabalho com agentes de código:
- VMs descartáveis por sessão: cada execução de agente começa em um ambiente limpo, sem resíduos de sessões anteriores
- Compatibilidade com agentes populares: funciona com Claude Code, Aider, Devin, Continue.dev e outros agentes que usam terminal
- Snapshot de estado: você pode salvar o estado de uma VM para reutilizar em sessões futuras com o mesmo contexto
- Limites de recursos: defina CPU, memoria e disco máximo que o agente pode usar
- Logging de comandos: registro de tudo que o agente executou, para auditoria posterior
- Rede configurável: você decide se o agente tem acesso a internet ou fica em rede isolada
A configuração de rede isolada e particularmente útil em contextos de segurança, onde você quer que o agente só acesse repositórios internos sem possibilidade de exfiltrar dados para fora.
Como começar: instalação e uso
O Clawk requer Docker ou uma solução de virtualização compatível. A instalação e feita via o binário disponível no GitHub:
# Instalar o Clawk (Linux/macOS)
curl -fsSL https://raw.githubusercontent.com/clawkwork/clawk/main/install.sh | bash
# Verificar instalação
clawk --version
# Iniciar uma sessão com Claude Code em VM descartavel
clawk run --agent claude-code --project ./meu-projeto
# Iniciar com Aider
clawk run --agent aider --project . --model gpt-4o
# Sessão com rede isolada (sem acesso a internet)
clawk run --agent claude-code --project . --no-networkNa primeira execução, o Clawk faz download da imagem base da VM (cerca de 500MB). As execuções seguintes reutilizam a imagem em cache, tornando a inicialização muito rápida (poucos segundos).
Use a flag --snapshot para salvar o estado da VM após instalar dependências pesadas. Na próxima sessão, o agente já começa com tudo instalado, sem precisar reprocessar.
Exemplo prático de uso com Claude Code
Imagine que você quer usar o Claude Code para refatorar um módulo legado de um projeto Node.js sem arriscar quebrar o ambiente local. Com o Clawk, o fluxo fica assim:
# Entrar no diretório do projeto
cd ~/projetos/meu-app
# Iniciar Claude Code via Clawk com limite de 2 CPUs e 4GB RAM
clawk run \
--agent claude-code \
--project . \
--cpu 2 \
--memory 4096 \
--log-commands ./sessão-refactor.log
# O Claude Code abre dentro da VM
# Você da instruções normalmente
# Tudo que ele instalar fica na VM, não no seu laptopAo fechar a sessão, o arquivo sessão-refactor.log contem todos os comandos que o Claude Code executou. Você pode revisar e verificar se algo inesperado aconteceu antes de fazer commit das mudanças.
Combine o Clawk com o recurso de --log-commands e um script de auditoria que alerta se o agente tentou acessar arquivos fora do diretório do projeto ou fazer chamadas de rede suspeitas.
Comparação com alternativas
Ha outras formas de isolar agentes de código, mas cada uma tem trade-offs:
Docker puro sem Clawk: você pode rodar agentes em containers manualmente, mas a configuração e trabalhosa. O Clawk automatiza esse processo e adiciona recursos específicos para agentes (logging, snapshots, integração com ferramentas populares).
Sandboxes nativos do agente: alguns agentes como o Claude Code já tem mecanismos de segurança internos. O Clawk adiciona uma camada extra de isolamento a nível de sistema operacional, que é mais robusta.
VMs completas (VirtualBox, VMware): isolamento total, mas startup lento (minutos) e consumo de recursos alto. O Clawk usa microVMs ou containers otimizados com startup em segundos.
GitHub Codespaces / Gitpod: soluções cloud que isolam em ambientes remotos. Custo por hora, latência de rede. O Clawk roda localmente sem custo adicional.
Pontos positivos e limitações
O Clawk resolve bem o problema de isolamento de agentes, mas tem limitações reais que vale conhecer antes de adotar:
Pontos positivos:
- Open source e gratuito
- Startup rápido em comparação com VMs tradicionais
- Logging nativo de comandos do agente
- Integração com os agentes mais populares
- Sem custo de infra adicional (roda no seu laptop)
Limitações:
- Requer Docker ou runtime de virtualização instalado
- Ainda em desenvolvimento ativo - APIs podem mudar entre versões
- Suporte a Windows em fase experimental (melhor no Linux/macOS)
- Agentes com GUI gráfica não são suportados (apenas terminal)
Como o projeto esta em desenvolvimento ativo, verifique o CHANGELOG antes de atualizar em ambientes de produção. Mudanças de API entre versões menores são possíveis.
Casos de uso reais
O Clawk e especialmente valioso em quatro cenários:
- Experimentação segura: testar um agente novo em um projeto real sem medo de ele fazer algo indesejado no seu ambiente local
- CI/CD com agentes: rodar agentes de revisão de código ou geração de testes em pipelines sem expor o ambiente do runner
- Projetos de clientes: freelancers que usam agentes para trabalhar em projetos de clientes podem isolar cada projeto em sua própria VM
- Times de segurança: equipes que precisam auditar o comportamento de agentes antes de liberar para uso amplo na empresa
Dicas e boas práticas com o Clawk
Crie snapshots base com as dependências do seu stack já instaladas (Node, Python, Go, etc.). Isso reduz o tempo de startup de cada sessão de agente.
Use --no-network para tarefas de refatoração e análise de código. O agente não precisa de internet para essas tarefas e o isolamento de rede elimina riscos de exfiltração de dados.
Revise o arquivo de log de comandos após cada sessão longa. O Clawk registra tudo que o agente executou, o que ajuda a entender o que foi feito e identificar padrões problemáticos.
Não monte diretórios fora do projeto como volumes leitura/escrita na VM. Isso incluiria arquivos sensíveis (SSH keys, .env globais) no escopo de acesso do agente.
Vale a pena usar o Clawk?
Para desenvolvedores que já usam agentes de código no dia a dia, o Clawk e uma adição de segurança que faz muito sentido. A frição e mínima (um comando a mais antes de iniciar o agente) e o ganho em controle e visibilidade e significativo.
Se você ainda esta testando agentes de código pela primeira vez, o Clawk também é um bom ponto de partida: você pode explorar o que o agente faz sem preocupação com efeitos colaterais no seu ambiente.
O próximo passo e instalar via o repositório GitHub do Clawkwork, criar um snapshot base com seu stack favorito e rodar a próxima sessão do seu agente preferido dentro de um ambiente isolado.
Comentários
Deixar um comentárioVocê precisa ter uma conta no CuritibaBlog para comentar.