● Comunidade
instavm
⚡ Instantâneo
CodeRunner
por instavm · instavm/coderunner
Execução de código isolada em VM para agentes — Python, Playwright, kernel Jupyter persistente, tudo em sandbox fora do seu host.
CodeRunner dá ao Claude (e a outros agentes) um sandbox seguro e persistente: execute Python com um kernel Jupyter de longa duração, faça scraping com Playwright, manipule PDFs e imagens. Isolamento em nível de VM baseado em container significa que você pode deixar um agente executar código não confiável sem danificar sua máquina. Expõe-se como MCP para funcionar em qualquer cliente.
Por que usar
Principais recursos
- Isolamento em nível de VM — filesystem e rede do host protegidos
- Kernel Jupyter persistente — variáveis e imports sobrevivem entre chamadas
- Playwright integrado para scraping web / automação de navegador
- Skills pré-empacotadas: manipulação de PDF, processamento de imagens
- Disponível como servidor MCP em coderunner.local:8222 — conecte em qualquer cliente
Demo ao vivo
Como fica na prática
pronto
Casos de uso
Usos do mundo real: CodeRunner
Quando usar: Você quer que o Claude escreva + execute um script que você não revisou completamente.
Fluxo
-
Passar a tarefa
Use coderunner. Write a Python script that downloads my Strava activities CSV from <url>, parses, and computes weekly mileage. Run it in the sandbox.✓ Copiado
→ Script executado; saída mostrada; nada tocou meu filesystem
-
Iterar
Add a chart of weekly mileage. Re-run.✓ Copiado
→ Gráfico renderizado; estado do kernel preservado (sem re-import)
-
Exportar resultados
Save CSV + chart to ./out/ on host (this only).✓ Copiado
→ Apenas esse caminho escrito; sandbox continua selado
Resultado: Experimentos rápidos sem «ops, deletou /Users».
Armadilhas
- Acesso à rede ainda permitido no sandbox — Desabilite a rede se executar código verdadeiramente não confiável; caso contrário pode exfiltrar dados
Quando usar: Você quer uma sessão exploratória de dados de 30 minutos sem perder o estado do kernel.
Fluxo
-
Carregar dados uma vez
Use coderunner. Load /data/sales.csv into df. Show schema + 5 sample rows.✓ Copiado
→ df no kernel; persiste pela sessão
-
Queries ad-hoc
Pivot by region × month, show top 5 anomalies.✓ Copiado
→ Pivot + linhas sinalizadas
-
Exportar
Save the anomalies subset to /out/anomalies.csv on host.✓ Copiado
→ CSV em /out/
Resultado: Análise com qualidade de notebook via chat, com código rodando de verdade.
Armadilhas
- Estado do kernel deriva em sessões longas; resultados baseados em variáveis obsoletas — Reinicie o kernel entre tarefas não relacionadas; o Claude pode emitir %reset
Quando usar: O site precisa de navegador completo; você não quer um processo Chrome rodando no seu host.
Fluxo
-
Iniciar uma sessão
Use coderunner Playwright. Open <url>, wait for the table, extract rows as JSON.✓ Copiado
→ JSON retornado; navegador ficou no sandbox
-
Iterar seletores
Selector missed the price column; adjust to find it.✓ Copiado
→ Seletor atualizado; dados completos
Resultado: Dados extraídos; sem rastro de navegador no host.
Armadilhas
- Site detecta headless e bloqueia — Mude para chromium com as opções --headed=false-but-stealth que a skill expõe
Combinações
Combine com outros MCPs para 10× de alavancagem
Mover dados dentro/fora do sandbox apenas via caminhos montados
Mount only /Users/me/data and /Users/me/out; everything else is read-only.✓ Copiado
Pipeline de busca → fetch → análise
Search via duckduckgo, scrape via coderunner Playwright, analyze in Python.✓ Copiado
Custo e limites
O que custa rodar
- Cota de API
- Nenhuma — local
- Tokens por chamada
- Apenas os tokens de código/saída
- Monetário
- Gratuito
- Dica
- Kernel persistente economiza tokens vs re-importar; reinicie apenas quando o estado estiver errado
Segurança
Permissões, segredos, alcance
Escopos mínimos: Apenas caminhos de filesystem montados Rede on/off via configuração
Armazenamento de credenciais: Não coloque secrets no sandbox a menos que esteja OK com o agente vendo-os
Saída de dados: Se a rede estiver ativa, o sandbox pode acessar qualquer URL — desabilite para execuções sensíveis
Nunca conceda: Mount de $HOME ou / — o sandbox perde o sentido
- O sandbox reduz o raio de explosão mas não é panaceia — revise o plano do agente antes das execuções
Solução de problemas
Erros comuns e correções
install.sh falha no Linux
O projeto é de primeira classe em macOS Apple Silicon; suporte a Linux varia. Verifique os issues para notas específicas de distro
Estado obsoleto do Playwright
Execute kernel_reset; contexto de navegador antigo pode persistir entre chamadas
Sandbox não consegue acessar a internet
Rede desabilitada na configuração; ative se precisar. Por outro lado, isole quando não for necessário
Dependências faltando na skill de PDF/imagem
Imagem do container inclui as comuns; reconstrua a imagem para adicionar dependências customizadas
Alternativas
CodeRunner vs. outros
| Alternativa | Quando usar | Troca |
| Beta de execução de código da Anthropic | Você quer execução server-side sem sandbox local | Na nuvem; dados saem da sua máquina |
| Docker manual | Você quer controle total da imagem do container | Configuração manual; sem servidor MCP pronto |