Mole CLI ou app para Mac: Terminal grátis ou interface paga
O Mole sai como dois programas. mo é uma ferramenta de linha de comando gratuita e de código aberto, instalada
com o Homebrew e licenciada sob a GPL-3.0. O Mole para Mac é um app nativo pago, com cinco
abas e presença na barra de menus. Não são uma versão de teste e uma edição pro. São
implementações separadas, com trabalhos que se sobrepõem e uma camada pequena compartilhada no disco, então escolher um
não impede você de usar o outro. Este guia ajuda a escolher o que combina com o jeito
como você já trabalha, e a entender o que acontece se você ficar com os dois.
Comparação rápida
Mole CLI (mo) |
Mole para Mac | |
|---|---|---|
| Licença | Gratuito, código aberto, GPL-3.0 (não é MIT) | App proprietário pago |
| Preço | Gratuito | US$ 19 pagamento único, 2 Macs, atualizações gratuitas |
| Instalação | brew install mole |
Baixe em mole.fit |
| Alcance da exclusão | Mais amplo (parte do princípio de que você lê a lista) | Mais estreito (igual ou mais seguro que o CLI) |
| Só no Terminal | mo purge, mo installer, mo touchid, --dry-run / --json |
- |
| Só no app | - | Interface, barra de menus, controle de ventoinha, início, atualizações no app, desinstalação que vai primeiro para o Lixo |
| Compartilhado no disco | ~/.config/mole/whitelist*, ~/Library/Logs/mole/operations.log |
Os mesmos caminhos |
O que os dois compartilham
Cinco comandos do CLI mapeiam direto nas cinco abas do app: mo clean,
mo uninstall, mo optimize, mo analyze e mo status correspondem a Limpar,
Apps, Otimizar, Analisar e Status. As categorias são reconhecíveis nos dois:
famílias sobrepostas de cache de usuário, de desenvolvedor, de navegador e de sistema, inventário de apps e
descoberta de sobras, análise de disco e métricas de saúde. As implementações e os conjuntos
exatos de candidatos não são idênticos.
A varredura é gratuita nos dois. O app cobra só pela metade destrutiva, e cada ferramenta destrutiva funciona duas vezes antes de exigir uma licença, então você pode comparar a varredura do app com a do CLI no mesmo Mac sem pagar nada.
A sobreposição mais interessante está no disco. Os dois escrevem em ~/.config/mole/whitelist e
~/.config/mole/whitelist_optimize, e os dois acrescentam linhas em
~/Library/Logs/mole/operations.log. Um cache que você protege numa interface fica protegido
na outra, e uma exclusão feita em qualquer um deixa um registro no mesmo arquivo. Os dois
programas não se conhecem em tempo de execução, mas também não são independentes.
O que só o terminal consegue fazer
Três fluxos maiores do CLI não têm equivalente no app. Comandos de apoio como
mo history, mo update, mo completion e mo remove são administração do terminal,
não superfícies extras de manutenção.
mo purge
Varre os diretórios dos seus projetos e oferece remover artefatos pesados de build. A lista
de alvos é ampla: target, build, dist, .next, DerivedData, __pycache__,
coverage e cerca de mais trinta, inclusive diretórios de dependência que um gerenciador de
pacotes teria de baixar de novo. O purge apaga de forma permanente em vez de mover para o
Lixo, e marca projetos tocados nos últimos sete dias como recentes e os deixa
desmarcados. É um jeito direto de recuperar dezenas de gigabytes numa máquina de desenvolvimento
e também o comando que mais merece um --dry-run antes.
mo installer
Varre instaladores DMG, PKG e arquivos compactados em Downloads, Mesa, caches do Homebrew, iCloud e Mail, rotulando cada um pela origem.
mo touchid
Configura o Touch ID para o sudo, que é uma tarefa de configuração do shell, não de
limpeza.
O terminal também aceita prévias e scripts. mo clean, mo uninstall e
mo optimize aceitam --dry-run, que mostra as ações planejadas sem executá-las.
mo analyze, mo status e mo history aceitam --json, e mo status
passa sozinho para JSON quando a saída é canalizada, então uma checagem de saúde pode alimentar um
script. Os caminhos só de leitura e de saída estruturada também rodam por ssh, num Mac sem interface,
ou dentro de scripts. Uma exclusão agendada ainda precisa de uma política explícita não interativa;
a tela de confirmação interativa não fica segura só porque o cron a lançou.
O que só o app consegue fazer
As adições do app se agrupam em duas coisas em que o terminal é ruim: exibição contínua e controle privilegiado do sistema.
Na exibição, Analisar desenha um mapa de blocos no qual você pode descer, Status renderiza um painel ao vivo em grade, com sparklines e processos que dá para fixar, e um HUD na barra de menus mantém CPU, memória e rede visíveis enquanto você trabalha em outra coisa. A desinstalação mostra um plano de revisão com caminhos, donos e tamanhos antes de qualquer coisa se mover, e as remoções vão para o Lixo em vez de serem apagadas de vez.
No controle do sistema, o app instala um helper root de escopo estreito pelo SMJobBless para escritas de ventoinha e de bateria suportadas. O gerenciamento de início segue um limite separado: jobs launchd validados e itens suportados do Service Management podem ser ligados e desligados, enquanto itens de segundo plano sem correspondência abrem os Ajustes do Sistema em vez de serem adivinhados. O app também traz superfícies que só fazem sentido num app residente: a Verificação de Privacidade, que informa o uso ao vivo de câmera e microfone, o Cuidado da Bateria, que segura a carga perto de 75 a 80 por cento nos Macs suportados, Manter a Tela Ligada, Limpar a Tela para limpar o teclado, e um Doctor só de leitura que monta um relatório de diagnóstico que você pode colar numa issue.
A maior superfície exclusiva do app é atualizar outros apps. Ele detecta vários canais de atualização e tem caminhos no app para Sparkle, casks e fórmulas do Homebrew, a Mac App Store e feeds Electron. GitHub Releases e metadados de site podem identificar versões adicionais; quando o Mole não consegue verificar e substituir um bundle com segurança, ele abre o app ou a página do fornecedor em vez de inventar outro instalador. A licença é uma compra única que cobre dois Macs, com atualizações gratuitas, reembolso em 14 dias e macOS 14 ou posterior. Nenhum dos dois programas envia telemetria.
Por baixo: como um modelo de segurança serve duas interfaces
O app não é um invólucro que chama mo. É uma reimplementação em Swift, e
os dois códigos compartilham caminhos e decisões de segurança, não processos. Analisar se apoia
na taxonomia de caminhos do CLI e nas lições de medição em paralelo, mas tem o próprio scanner,
os próprios tempos limite, estados de resultado parcial, cache e comportamento de reserva. Um total de uma
interface é, portanto, uma contraprova útil, não uma promessa de paridade byte a byte.
O princípio registrado no repositório para mantê-los alinhados é que paridade com o CLI significa igual ou mais seguro, não a mesma amplitude de exclusão. Cada candidato que o app mostra é classificado antes de chegar até você: selecionável por padrão, só revisão e desmarcado por padrão, ou bloqueado de vez e recusado mesmo que algo peça por ele. Quando o comportamento do CLI e essa classificação discordam, o app fica com a posição mais estreita.
mo purge é o exemplo mais claro. A versão para Mac dessa varredura deixa de fora, de propósito, cada
diretório de dependência baixada que o CLI remove, inclusive node_modules, Pods,
venv e vendor. O raciocínio é a recuperabilidade: um diretório target compilado
volta com um build local, enquanto uma árvore de dependências precisa da rede e pode
resolver para algo diferente do que estava instalado. O app só oferece o que uma
compilação local pura consegue reconstruir, e mostra isso como linhas só de revisão, não
pré-selecionadas. A mesma assimetria aparece em outros lugares. O app condiciona as varreduras de dados de app
ao Acesso Total ao Disco, revalida cada caminho no momento da exclusão em vez de
na hora da varredura, e manda a desinstalação de apps pelo Lixo.
Então os dois não são igualmente agressivos, e a diferença corre numa direção consistente. O CLI recupera mais porque parte de um usuário que lê a lista. O app recupera menos porque parte de um usuário que quer que a lista já esteja segura.
Rodar os dois
Nada quebra se você instalar os dois, e os arquivos compartilhados tornam a combinação
coerente. Proteja um cache nos Ajustes do app e mo clean também vai pulá-lo. Acrescente
um caminho com mo clean --whitelist e o app o respeita. Os dois deixam as exclusões no
mesmo registro.
Dois avisos que vale conhecer. Os programas não se coordenam enquanto rodam, então não
comece uma limpeza nos dois ao mesmo tempo. E, como o app é de propósito mais estreito, ver uma
categoria em mo clean que o app nunca oferece é o comportamento esperado, não um recurso
faltando.
Como escolher
Instale o CLI se você vive no terminal, quer pré-visualizar com --dry-run, precisa de
--json para um script, quer as varreduras de artefatos de projeto e de instaladores, ou simplesmente não
quer gastar dinheiro. Numa máquina de desenvolvimento, muitas vezes é tudo o que se precisa, e ele é
gratuito justamente para poder ser isso.
Compre o app se você quer o mapa do disco e o painel ao vivo, se o controle de ventoinha, o gerenciamento de início ou as atualizações de apps de terceiros são o motivo real de você estar aqui, ou se está instalando isto para alguém que nunca vai abrir o Terminal. Esse último caso foi o motivo original de o app existir, contado em a história do Mole.
Se você ainda não sabe, instale o CLI primeiro e rode mo clean --dry-run. Não custa
nada, não apaga nada, e ler a saída é o jeito mais rápido de saber se
o seu Mac tem um problema que mereça uma ferramenta, que é uma pergunta
que vale fazer antes de instalar qualquer limpador.