Diagnóstico do Ambiente de Desenvolvimento · env-doctor
Terceira da família "Diagnóstico":
claude-md-doctor(config) →skill-doctor(skills) →env-doctor(ambiente). As duas primeiras diagnosticam arquivos; esta diagnostica a máquina.
Qual a diferença das ferramentas de limpeza comuns (leia isto primeiro, define todo o comportamento)
As ferramentas de limpeza de Mac respondem "qual diretório é grande". Este diagnóstico responde "esta ferramenta você ainda usa".
O tamanho pode ser escaneado, mas a identidade só pode ser inferida — para determinar se o nvm é um resíduo, é preciso verificar simultaneamente quem o shell carrega, quem está no PATH, de quem o node realmente vem, e há quanto tempo o diretório não é mexido. Esta é a única diferenciação deste diagnóstico, nenhuma alteração pode enfraquecê-la.
⛔ Três Regras de Ferro (detalhes em references/safety.md)
- A remoção só pode vir da seleção item por item do usuário (via
scripts/clean.sh). O modelo não deve montarrmpor conta própria; se o usuário disser "apaga direto pra mim" → oriente-o a executar o seletor. Por padrão nada selecionado, dados bloqueados, apenas comandos da lista de permissões, execução só após digitar "yes". - Varredura somente leitura.
scripts/scan.shnão contém nenhuma operação de escrita. - Se não tiver certeza, diga que não tem certeza. Quando os sinais forem contraditórios, marque honestamente, não adivinhe para deixar o relatório bonito.
Fluxo Padrão
Passo 1 · Varredura
bash scripts/scan.sh # Completa (inclui descoberta de grandes diretórios home, cerca de 30–60 segundos)
bash scripts/scan.sh --quick # Rápida (pula varredura de descoberta, cerca de 20 segundos)
bash scripts/scan.sh --profile ai-dev # Rápida para máquina de desenvolvimento AI (diretório do agente host + pula descoberta de grandes)
Saída com seis seções de dados brutos: DISK · SIZES · MANAGERS · RUNTIME · AI_AGENTS (quando houver agente host) · DISCOVER (apenas na completa).
Passo 2 · Julgamento
Consulte references/rules.md:
- Classificação ternária (dados / cache / resíduo) para cada diretório;
- Tabela de julgamento dos quatro sinais (shell_loaded × cmd_in_path × runtime owner × last_modified) para determinar se um version manager está ativo ou é resíduo;
- Mesma versão instalada por dois gerenciadores → listar como item separado com aviso.
Passo 3 · Relatório
Siga o fluxo de conversa de quatro etapas em references/report.md: primeiro a conclusão → apresente em três grupos (resíduo → cache → dados) → pergunte grupo por grupo → só gere bloco de comando após confirmação.
⚠️ Não jogue uma lista de dezenas de itens de uma vez para o usuário; ⚠️ Cada recomendação deve incluir os cinco elementos: "o que é / tamanho / por que foi julgado assim / comando oficial / custo".
Passo 4 · Para limpar, entregue ao seletor
bash scripts/clean.sh --dry-run # Veja antes sem executar (fortemente recomendado na primeira vez)
bash scripts/clean.sh # Selecione e limpe
Seleção interativa: espaço seleciona · ↑↓ move · a seleciona todos · n desmarca todos · enter confirma · q sai.
Dados com 🔒 ficam bloqueados, não podem ser selecionados; na página de confirmação os comandos e custos são listados um a um, só executa após digitar "yes".
Roteamento
| O que fazer | Leia qual |
|---|---|
| Julgar a classe de um diretório e qual é o comando oficial de limpeza | references/rules.md |
| Como escrever o relatório e conduzir a conversa | references/report.md |
| Limites e o que absolutamente não pode ser feito | references/safety.md |
| Implementação do escâner e autoverificação | scripts/scan.sh |
| Seletor de limpeza (único lugar onde exclusão é permitida) | scripts/clean.sh |
Respostas Padrão para Perguntas Frequentes
- "Apaga direto pra mim" → Não vou apertar Enter por você. Execute
bash scripts/clean.she selecione; ele mostra os comandos e custos primeiro; se quiser ver sem executar, adicione--dry-run. - "O maior pode ser apagado?" → Primeiro veja a identidade, não o tamanho. O maior geralmente são pesos de modelos ou volumes de container (classe dados), justamente o que menos deve ser apagado.
- "O que acontece depois de apagar?" → Cada item tem uma coluna "custo"; cache sempre diz "será baixado novamente, gasta tempo e tráfego", só resíduo é lucro líquido.
- "Por que considera isso resíduo?" → Exiba o texto original dos quatro sinais para o usuário revisar.
Limites
- Cobre apenas ocupação de ferramentas de desenvolvimento (version managers / package managers / caches de build / containers / modelos AI). Cache do sistema, fotos, anexos de e-mail, WeChat estão fora do escopo — deixe isso para a interface "Armazenamento" do sistema.
- Varredura dentro do diretório home, não toca em diretórios do sistema nem de outros usuários.
- Não se conecta à internet, não envia nenhum resultado de varredura.
Interligação da Família Diagnóstico
| Camada | Skill | Quando encaminhar |
|---|---|---|
| Config | hekouwang-claude-md-doctor-skill | AGENTS.md/CLAUDE.md duplicados, rota errada, falta frontmatter |
| Skills | hekouwang-claude-skill-doctor-skill | Estrutura de SKILL.md, links quebrados, declaração OpenClaw |
| Ambiente | Esta skill | Disco cheio, resíduos de version managers, diretório do agente AI inchado |
Se o relatório encontrar problemas de configuração/skills, mencione as outras duas skills, não faça auditoria de conteúdo de arquivos neste relatório.