個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Peapod — sandboxes isolados e descartáveis para agentes de IA Peapod dá a cada agente de IA (ou a você) um ambiente Linux isolado, descartável e auditado para rodar código não-confiável ou gerado por IA. É dirigido por MCP (Model Context Protocol), CLI, dashboard web e um app nativo de macOS — com rede desligada por padrão, allowlist de domínios e trilha de auditoria de tudo que rodou. É privacidade e menor privilégio aplicados ao problema novo de executar código de IA com segurança. André Augusto Azarias de Souza · DPO / Encarregado de Dados · Compliance & GRC · Privacy Engineering檢視完整 README ↗
Peapod dá a cada agente de IA (ou a você) um ambiente Linux isolado, descartável e auditado para rodar código não-confiável ou gerado por IA. É dirigido por MCP (Model Context Protocol), CLI, dashboard web e um app nativo de macOS — com rede desligada por padrão, allowlist de domínios e trilha de auditoria de tudo que rodou. É privacidade e menor privilégio aplicados ao problema novo de executar código de IA com segurança.
André Augusto Azarias de Souza · DPO / Encarregado de Dados · Compliance & GRC · Privacy Engineering
Gestor com 18 anos de atuação como Gerente Administrativo e Encarregado de Dados (DPO) em organização do setor de saúde suplementar, ambiente regulado pela ANS e pela LGPD. Participou de decisões de diretoria, conduziu a relação com hospitais e operadoras, liderou a modernização dos sistemas administrativos e de segurança da informação e coordenou o programa de adequação à LGPD da organização, com dados sensíveis de saúde sob o Art. 11.
Desde 2025 conduz, como product owner técnico, projetos open-source de segurança e privacidade em Python, Go, Rust e Swift, com a codificação orquestrada por assistentes de IA generativa sob sua direção e revisão. O Peapod seguiu esse modelo: traduzindo princípios de privacidade, menor privilégio e auditabilidade (rede desligada por padrão, allowlist de egresso, trilha de auditoria, ambientes efêmeros) para o problema atual de executar código gerado por IA com segurança. Também desenvolve automações de processos com n8n e é autor de cinco livros publicados, entre eles Da Norma à Liderança, sobre atualização profissional em GRC.
→ Bio completa: AUTHOR.md · LinkedIn · GitHub Profile
SentinelBR Plataforma open-source de SIEM + LGPD para PMEs brasileiras: agente Go com gRPC e mTLS, detecção em tempo real, resposta automatizada e compliance LGPD nativa, multi-tenant. 225 testes, CI em 16 jobs.
VigiaOS Suíte de segurança, privacidade e LGPD para a estação de trabalho (Fedora Workstation, GTK4 + libadwaita), com 13 ferramentas defensivas, módulos de detecção e resposta e laboratório educacional. 1460 testes em Python e 28 em Rust.
Plataforma LGPD Plataforma web multi-tenant que treina, avalia e certifica os setores de uma empresa em LGPD e dá ao DPO as ferramentas de operação: ROPA, RIPD, direitos do titular e incidentes. 121 testes, 95% de cobertura.
Uptend App nativo de macOS para configurar e manter o Mac e auditar servidores Linux: coletor portátil, relatórios, correlação com CVEs, MITRE ATT&CK, lente LGPD e playbook de hardening com rollback. 428 testes, zero warnings.
banana Editor local-first de notas Markdown, código e PDF, com vault cifrado (Argon2id + AES-256-GCM). 393 testes.
Todos os projetos, com o porquê de cada um, no perfil github.com/andre28abr.
Cada ervilha é um sandbox isolado; a vagem (Peapod) cria e cuida de várias, uma por tarefa. Quando uma IA precisa rodar código, ela faz isso dentro de uma ervilha — e no fim a ervilha é descartada, sem deixar resíduo no seu computador.
Deixar uma IA rodar código direto na sua máquina é risco: um bug ou uma dependência maliciosa toca seus arquivos, sua rede, suas chaves. O Peapod aplica princípios de privacy/security by design a esse problema:
O Peapod não é "mais um Docker". O uso mais valioso dele é como rede de proteção para a IA rodar código — a ideia é deixar o agente trabalhar dentro do Peapod, não no seu Mac.
Com o .mcp.json, o Peapod já aparece como ferramenta no Claude Code (e similares). Sempre que for pedir à IA para executar algo em que você não confia 100% — um script de um gist, uma dependência duvidosa, um curl | bash, ou código que a própria IA acabou de gerar — peça para rodar num sandbox do Peapod:
"Tem um script Python nesse link que diz redimensionar imagens, mas não confio. Roda num sandbox do Peapod e me diz o que ele faz."
O agente, sozinho, cria o sandbox (sem rede), executa o código isolado, te devolve a saída, registra cada comando na trilha de auditoria e descarta tudo no fim. O seu computador nunca é tocado — e você pode revisar exatamente o que rodou.
"Quero testar uma coisa sem sujar meu Mac." Abra o app, escolha um template (Python, Postgres, Node…), use a aba Run e descarte. No terminal é o mesmo: sandbox create → mexer → sandbox rm.
Pense no Peapod como docker run --rm com três superpoderes:
| Superpoder | O que isso te dá |
|---|---|
| 🔒 Seguro por padrão | sem rede e com limites de CPU/mem/PID; quando o código precisa de internet (ex.: pip install), você libera só os domínios necessários com --allow pypi.org — firewall à prova de bypass (rede interna + proxy sidecar) |
| 🧾 Com memória | trilha de auditoria de todos os comandos que rodaram no sandbox |
| 🤖 Dirigível por IA | exposto via MCP, o agente cria, roda e descarta sozinho |
A diferença para o Docker cru não é rodar contêiner — é o contexto de segurança, auditoria e IA em volta.
Não é para rodar serviços de produção nem substituir o Docker Desktop em apps de longa duração. É para execução efêmera, isolada e não-confiável — o "laboratório selado", não o servidor.
Pelo Homebrew (macOS 13+, Apple Silicon):
brew tap andre28abr/peapod
brew trust andre28abr/peapod # Homebrew 6+: confiar no tap (uma vez)
brew install --cask peapod # app de macOS
brew install peapod # CLI + servidor MCP
Sem Homebrew, baixe o Peapod.dmg e arraste o app para Aplicativos. O app é assinado ad-hoc (não notarizado pela Apple): na primeira abertura, clique com o botão direito e escolha Abrir. Em Intel, compile a partir do código. Requer OrbStack (ou Docker) rodando.
# CLI
go build -o bin/peapod ./cmd/peapod
ID=$(bin/peapod sandbox create python:3.12-slim --net none)
bin/peapod sandbox exec "$ID" python3 -c 'print(6*7)'
bin/peapod sandbox history "$ID" # trilha de auditoria
bin/peapod sandbox rm "$ID"
# App nativo de macOS (gera Peapod.app + Peapod.dmg, com o binário embutido)
cd ui-native && ./build.sh
Agentes de IA (MCP): o repositório traz um .mcp.json; abrir esta pasta no Claude Code carrega o servidor automaticamente, expondo peapod_sandbox_create, peapod_exec, peapod_history, … (12 ferramentas).
Requer OrbStack (ou Docker) rodando para o backend
oci.
Tudo senta sobre um núcleo fino (Manager) com uma interface Driver trocável; novos backends de isolamento e funcionalidades plugam sem tocar no topo:
servidor MCP · CLI · dashboard web · app nativo macOS
│
Manager (núcleo)
│ interface Driver ← a costura
┌──────────────┬──────┴────────┬──────────────┐
oci apple-container libkrun mock
(docker/podman) (microVM, m26) (depois) (testes)
Capacidades opcionais (checkpoint, logs, stats, diff de snapshot) são detectadas por interface assertion — cada backend implementa só o que suporta.
sandbox history).--allow d1,d2 coloca o sandbox numa rede interna (sem rota pra fora) com um proxy sidecar como única saída — até um processo que ignore HTTP(S)_PROXY fica sem rota.up / down / ps a partir de um peapod.json, com publicação de portas.peapod ui) e app nativo de macOS.peapod sandbox create <image> [--net none|egress] [--ports h:c,…] [--allow d1,d2]
peapod sandbox exec|logs|stats|history|snapshot|pause|resume|rm <id>
peapod snapshot ls | rm <ref> | prune [--max-age 24h] | diff <a> <b>
peapod up | down | ps [-f peapod.json] # grupos multi-serviço
peapod preview up | status | down # ambiente por branch
peapod proxy --allow d1,d2 # allowlist de egresso
peapod reap [--max-age 30m] | pause-idle [--max-idle 15m]
peapod templates | ui | mcp | version
peapod --backend oci|apple|mock <command>
docs/).Peapod.app e Peapod.dmg.Os dois guias também abrem dentro do app (abas Para todos e Técnico).
go test -race ./... # 27 testes; driver mock em memória — não precisa de daemon
go vet ./... && go run honnef.co/go/tools/cmd/staticcheck@latest ./...
cd ui-native && ./build.sh # Peapod.app + Peapod.dmg (macOS)
O servidor MCP é testado de ponta a ponta pelo protocolo (cliente em memória do SDK oficial): as 12 ferramentas registradas, o ciclo criar → escrever → executar → histórico → destruir, snapshot/fork e erros que chegam ao agente como tool errors, nunca como queda de sessão.
CI (GitHub Actions) roda vet, staticcheck, testes com race detector e build no Linux, e compila o app SwiftUI no macOS conferindo o alvo mínimo (13.0) a cada push. Tap Homebrew: andre28abr/homebrew-peapod (fórmula também versionada em Formula/peapod.rb).
Obrigado pelo interesse! Este é um projeto pessoal, mantido por uma pessoa só, e por isso não consigo revisar nem acompanhar contribuições de fora. Pedidos de alteração (pull requests) serão fechados sem análise, sem nenhuma desconsideração por quem enviou. Se quiser adaptar o projeto às suas necessidades, fique à vontade para fazer um fork, dentro dos termos da licença.
AGPL-3.0 © André Augusto Azarias De Souza