Meu assistente pessoal Claude que funciona com segurança em contêineres Apple. Leve e construído para ser compreendido e personalizado de acordo com suas próprias necessidades.
OpenClaw é um projeto impressionante com uma grande visão. Mas não consigo dormir bem executando software que não entendo com acesso à minha vida. OpenClaw possui mais de 52 módulos, 8 arquivos de gerenciamento de configuração, mais de 45 dependências e abstrações para 15 provedores de canais. A segurança está no nível do aplicativo (listas de permissões, códigos de emparelhamento) e não no isolamento do sistema operacional. Tudo é executado em um processo Node com memória compartilhada.
O NanoClaw oferece a mesma funcionalidade básica em uma base de código que você pode entender em 8 minutos. Um processo. Um punhado de arquivos. Os agentes são executados em contêineres Linux reais com isolamento do sistema de arquivos, e não atrás de verificações de permissão.
git clone https://github.com/gavrielc/nanoclaw.git
cd nanoclaw
claudeEntão corra /setup. Claude Code cuida de tudo: dependências, autenticação, configuração de contêiner, configuração de serviço.
Pequeno o suficiente para entender. Um processo, alguns arquivos de origem. Sem microsserviços, sem filas de mensagens, sem camadas de abstração. Peça a Claude Code para orientá-lo.
Seguro por isolamento. Os agentes são executados em contêineres Linux (Apple Container). Eles só podem ver o que está montado explicitamente. O acesso ao Bash é seguro porque os comandos são executados dentro do contêiner, não no seu Mac.
Construído para um usuário. Esta não é uma estrutura. É um software funcional que atende exatamente às minhas necessidades. Você faz um fork e faz com que Claude Code faça com que ele atenda exatamente às suas necessidades.
Personalização = alterações de código. Nenhuma expansão de configuração. Quer um comportamento diferente? Modifique o código. A base de código é pequena o suficiente para ser segura.
AI-native. Nenhum assistente de instalação; Claude Code orienta a configuração. Sem painel de monitoramento; pergunte a Claude o que está acontecendo. Sem ferramentas de depuração; descreva o problema, Claude resolve.
Habilidades em vez de recursos. Os contribuidores não devem adicionar recursos (por exemplo, suporte para Telegram) à base de código. Em vez disso, eles contribuem com habilidades como /add-telegram que transformam seu garfo. Você acaba com um código limpo que faz exatamente o que você precisa.
Melhor arnês, melhor modelo. Isso é executado no Claude Agent SDK, o que significa que você está executando o Claude Code diretamente. O arnês é importante. Um arnês ruim faz com que até modelos inteligentes pareçam idiotas; um arnês bom lhes dá superpoderes. Claude Code é (IMO) o melhor arnês disponível.
Nenhuma área cinzenta dos ToS. Como ele usa o Claude Agent SDK nativamente, sem hacks ou soluções alternativas, usar sua assinatura com seu token de autenticação é totalmente legítimo (eu acho). Não há risco de ser encerrado por violação dos termos de serviço (não sou advogado).
- E/S do WhatsApp – Envie uma mensagem para Claude do seu telefone
- Contexto de grupo isolado – Cada grupo tem o seu próprio
CLAUDE.mdmemória, sistema de arquivos isolado e é executado em seu próprio sandbox de contêiner com apenas esse sistema de arquivos montado - Canal principal – Seu canal privado (self-chat) para controle administrativo; todos os outros grupos estão completamente isolados
- Tarefas agendadas – Trabalhos recorrentes executados por Claude e que podem enviar mensagens de volta para você
- Acesso à Web – Pesquise e busque conteúdo
- Isolamento de contêiner – Agentes em sandbox em contêineres Apple
- Integrações opcionais – Adicionar Gmail (
/add-gmail) e muito mais por meio de habilidades
Fale com seu assistente com a palavra gatilho (padrão: @Andy):
@Andy send an overview of the sales pipeline every weekday morning at 9am (has access to my Obsidian vault folder)
@Andy review the git history for the past week each Friday and update the README if there's drift
@Andy every Monday at 8am, compile news on AI developments from Hacker News and TechCrunch and message me a briefing
No canal principal (seu chat interno), você pode gerenciar grupos e tarefas:
@Andy list all scheduled tasks across groups
@Andy pause the Monday briefing task
@Andy join the Family Chat group
Não há arquivos de configuração para aprender. Basta dizer a Claude Code o que você deseja:
- “Mude a palavra gatilho para @Bob”
- “Lembre-se, no futuro, de tornar as respostas mais curtas e diretas”
- “Adicione uma saudação personalizada quando eu disser bom dia”
- “Armazene resumos de conversas semanalmente”
Ou corra /customize para mudanças guiadas.
A base de código é pequena o suficiente para que Claude possa modificá-la com segurança.
Não adicione recursos. Adicione habilidades.
Se você deseja adicionar suporte ao Telegram, não crie um PR que adicione o Telegram junto com o WhatsApp. Em vez disso, contribua com um arquivo de habilidades (.claude/skills/add-telegram/SKILL.md) que ensina Claude Code como transformar uma instalação do NanoClaw para usar o Telegram.
Os usuários então executam /add-telegram em seu fork e obter um código limpo que faça exatamente o que eles precisam, não um sistema inchado tentando oferecer suporte a todos os casos de uso.
Habilidades que adoraríamos ver:
Canais de comunicação
/add-telegram– Adicione Telegram como canal. Deve dar ao usuário a opção de substituir o WhatsApp ou adicionar um canal adicional. Também deveria ser possível adicioná-lo como um canal de controle (onde pode desencadear ações) ou apenas um canal que pode ser usado em ações desencadeadas em outro lugar/add-slack– Adicionar folga/add-discord– Adicionar discórdia
Tempo de execução do contêiner
/convert-to-docker– Substitua Apple Container por Docker (desbloqueia Linux)
Suporte de plataforma
/setup-windows– Windows via WSL2 + Docker
Gerenciamento de sessão
/add-clear– Adicione um/clearcomando que compacta a conversa (resume o contexto preservando informações críticas na mesma sessão). Requer descobrir como acionar a compactação programaticamente por meio do Claude Agent SDK.
WhatsApp (baileys) --> SQLite --> Polling loop --> Container (Claude Agent SDK) --> Response
Processo Node.js único. Os agentes são executados em contêineres Linux isolados com diretórios montados. IPC via sistema de arquivos. Sem daemons, sem filas, sem complexidade.
Arquivos principais:
src/index.ts– Aplicativo principal: conexão WhatsApp, roteamento, IPCsrc/container-runner.ts– Gera contêineres de agentessrc/task-scheduler.ts– Executa tarefas agendadassrc/db.ts– Operações SQLitegroups/*/CLAUDE.md– Memória por grupo
Por que WhatsApp e não Telegram/Signal/etc?
Porque eu uso o WhatsApp. Faça um fork e execute uma habilidade para alterá-lo. Esse é o ponto principal.
Por que o Apple Container em vez do Docker?
Leve, rápido e integrado ao macOS. Requer macOS Tahoe e funciona perfeitamente em um Mac Mini. Contribua com uma habilidade para converter para Docker se desejar o Docker.
Posso rodar isso no Linux?
Sim. Execute o Claude Code e diga “faça isso rodar no Linux”. Cerca de 30 minutos de idas e vindas e tudo funcionará. Quando terminar, peça a Claude para criar uma habilidade explicando como fazê-la funcionar no Linux e, em seguida, contribua com a habilidade de volta para o projeto.
Isso é seguro?
Os agentes são executados em contêineres, e não atrás de verificações de permissão no nível do aplicativo. Eles só podem acessar diretórios montados explicitamente. Você ainda deve revisar o que está executando, mas a base de código é pequena o suficiente para que você realmente possa fazer isso. Consulte docs/SECURITY.md para obter o modelo de segurança completo.
Por que não há arquivos de configuração?
Não queremos uma expansão de configuração. Cada usuário deve personalizá-lo para que o código corresponda exatamente ao que deseja, em vez de configurar um sistema genérico. Se você gosta de arquivos de configuração, diga ao Claude para adicioná-los.
Como faço para depurar problemas?
Pergunte ao Código Claude. “Por que o agendador não está em execução?” “O que há nos registros recentes?” “Por que esta mensagem não obteve resposta?” Essa é a abordagem nativa da IA.
Por que a configuração não está funcionando para mim?
Não sei. Correr claudeentão execute /debug. Se Claude encontrar um problema que provavelmente esteja afetando outros usuários, abra um PR para modificar a configuração SKILL.md.
Quais alterações serão aceitas na base de código?
Correções de segurança, correções de bugs e melhorias claras na configuração básica. É isso.
Todo o resto (novas capacidades, compatibilidade de sistema operacional, suporte de hardware, melhorias) deve ser contribuído como habilidades.
Isso mantém o sistema básico mínimo e permite que cada usuário personalize sua instalação sem herdar recursos indesejados.
COM
Fonte: theverge

