Guias/Claude Code usando memória demais

Claude Code usando memória ou CPU demais no Mac? Como achar a causa e recuperar

Atta 🐬

Fundador do Vitals

Publicado em

Resposta rápida

O Claude Code roda no seu terminal como um processo chamado claude e inicia outros enquanto trabalha: servidores MCP, subagentes, e os servidores de desenvolvimento e as execuções de testes que ele usa para conferir o trabalho. Duas coisas o deixam pesado. Uma sessão que roda há horas pode crescer em memória e CPU; encerrá-la e retomá-la com claude --resume a devolve ao normal. E os processos que ele iniciou podem continuar rodando depois que a sessão termina. Encontre-os no Monitor de Atividade buscando claude, node e mcp. O Vitals, um monitor de sistema para Mac, lista todos os processos que trabalham em cada pasta de projeto, então o que uma sessão deixou para trás fica à vista.

Como descobrir o que o Claude Code está usando

  1. 01 Abra o Monitor de Atividade, clique em Memória e digite claude no campo de busca. Cada sessão em execução é uma linha. Uma linha usando vários gigabytes, ou ocupada enquanto você não está pedindo nada, é a que deve ser reiniciada.
  2. 02 Escolha Visualizar → Todos os Processos, Hierarquicamente. Abra o triângulo ao lado do seu app de terminal para ver cada sessão com tudo o que ela iniciou embaixo.
  3. 03 Reinicie uma sessão pesada: pressione Control-C duas vezes para encerrá-la, depois execute claude --resume na mesma pasta e escolha a conversa. Ela continua de onde parou.
  4. 04 Limpe o campo de busca e busque mcp, depois node. As linhas que continuam lá depois que você fechou todas as sessões do Claude Code ficaram para trás.
  5. 05 No Terminal, ps -axo pid,ppid,rss,etime,command | grep -i mcp lista esses processos com o pai de cada um. Pai 1 significa que a sessão que iniciou o processo não existe mais. Pare um deles com kill seguido do número dele.

No Claude Code, /mcp lista os servidores MCP que uma sessão inicia. Cada um é um processo próprio; remova os que você não usa.

O Claude Code é um programa de linha de comando, então não tem janela própria nem ícone no Dock: o custo dele aparece sob o seu app de terminal, ou sob o editor em cujo terminal você o executa. Ele também é um programa que inicia outros programas. Cada servidor MCP é um processo, cada subagente é um processo, e quando ele roda seus testes ou inicia seu servidor de desenvolvimento, esses também são processos. A maior parte da memória que as pessoas atribuem ao Claude Code está no que ele iniciou. A tabela separa o que é o quê.

Para onde vão a memória e a CPU do Claude Code

O que você vêO que éO que fazer
claude usando vários GB Uma sessão aberta há horas Encerre-a e execute claude --resume
claude ocupado enquanto está parado O mesmo: sessões longas ficam lentas Reinicie a sessão; atualize o Claude Code
Muitos processos node Servidores MCP, um por servidor em cada sessão Remova os servidores sem uso com /mcp
Processos que sobram depois de fechar todas as sessões Servidores MCP, subagentes ou um navegador headless que não pararam Encontre-os pelo pai 1 e encerre-os
next-server, um executor de testes ou um build com CPU alta Algo que o Claude Code iniciou para conferir o trabalho Pare-o, ou peça ao Claude Code para parar

Sessões longas crescem

Uma sessão guarda a conversa inteira, todos os arquivos que leu e a saída de todos os comandos. Ao longo das horas isso se acumula, e há relatos no rastreador de issues do Claude Code de sessões que chegaram a muitos gigabytes ou mantiveram um núcleo da CPU ocupado enquanto estavam paradas. Os relatos concordam na solução: encerrar a sessão e retomá-la. A conversa é salva enquanto você trabalha, então claude --resume não perde nada e começa em um processo limpo.

Manter o Claude Code atualizado importa mais do que na maioria das ferramentas. Ele é lançado com frequência, e problemas de memória estão entre as coisas corrigidas de uma versão para outra. claude update o atualiza.

O que uma sessão deixa para trás

Quando uma sessão termina, os processos que ela iniciou deveriam terminar junto. Nem sempre terminam. Um servidor MCP, um subagente ou um navegador headless pode perder o pai e continuar, segurando memória sem que nada o use. Um desenvolvedor que escreveu sobre isso contou 37 processos assim segurando mais de 6 GB depois de um dia de trabalho.

Eles são fáceis de reconhecer quando você olha: sem terminal, pai 1 e iniciados há horas. É seguro encerrá-los. Um processo zumbi, a rigor, é outra coisa: ele já terminou e não usa memória. O que as pessoas chamam de zumbis aqui são órfãos, vivos e segurando memória.

Servidores de desenvolvimento, testes e builds

Para conferir o trabalho, o Claude Code inicia seu servidor de desenvolvimento, roda seus testes ou faz o build do projeto. Um servidor de desenvolvimento que ele iniciou em segundo plano continua servindo depois que a tarefa acaba, e depois que a sessão é fechada se nada o parou. Dois ou três projetos, cada um com um servidor de desenvolvimento esquecido, são um motivo comum para faltar memória em um Mac com memória de sobra.

Peça ao Claude Code para parar o que ele iniciou antes de terminar uma sessão, ou veja quais portas estão em escuta: um servidor em uma porta que você não está usando é um servidor que ninguém está usando.

Várias sessões ao mesmo tempo

Rodar agentes em paralelo, um por tarefa ou por branch, multiplica tudo o que está acima: cada sessão tem a própria memória, a própria cópia de cada servidor MCP e o próprio servidor de desenvolvimento. Em um Mac com 16 GB, essa é a diferença entre trabalhar com folga e a pressão da memória no amarelo. Feche as sessões que terminaram e dê portas diferentes aos servidores, para que um segundo não falhe e tente de novo em silêncio.

O que o Vitals acrescenta

O Vitals mostra quanto cada projeto está custando, incluindo os processos que nenhuma janela controla.

  • Uma aba Projetos: todos os processos que trabalham em uma pasta de projeto, seja qual for o terminal ou editor que os iniciou, com memória, CPU e energia do projeto como um todo
  • As portas em que cada projeto escuta. Os servidores de desenvolvimento esquecidos em execução e ociosos aparecem em destaque, com a opção de pará-los
  • O Claude Code contado como uma única ferramenta de uma atualização para outra, então a memória dele ao longo do dia é uma linha só
  • Uma notificação quando um app não para de crescer na memória ou segura a CPU por minutos
  • Encerrar para qualquer app, pela barra de menus, depois de perguntar

Bom saber

  • O Vitals mostra os processos e o que eles usam. Ele não lê as conversas do Claude Code nem sabe em que uma sessão está trabalhando.
  • O Vitals nunca encerra nada sozinho.
Comprar o Vitals por $9 $9 durante o lançamento, $29 depois. Reembolso em até 14 dias.

Perguntas frequentes

Por que o Claude Code está usando tanta memória?

Uma sessão aberta há horas cresce, e cada servidor MCP, subagente e servidor de desenvolvimento que ela inicia é um processo próprio. Encerre a sessão e execute claude --resume para continuar em um processo limpo.

Reiniciar o Claude Code faz perder a conversa?

Não. As conversas são salvas enquanto você trabalha. Execute claude --resume na mesma pasta e escolha a conversa para continuar.

Por que há tantos processos node quando uso o Claude Code?

A maioria é de servidores MCP: cada servidor roda como um processo próprio, um por sessão. No Claude Code, /mcp mostra quais estão configurados.

Como encontro os processos que o Claude Code deixou rodando?

Feche todas as sessões e busque mcp e node no Monitor de Atividade. No Terminal, ps -axo pid,ppid,rss,command mostra o pai de cada processo; pai 1 significa que ele ficou para trás.

É seguro encerrar processos de servidores MCP que sobraram?

Sim, desde que nenhuma sessão do Claude Code esteja aberta. Uma sessão inicia de novo os servidores de que precisa na próxima vez que rodar.

De quanta memória o Claude Code precisa?

Uma sessão nova usa algumas centenas de megabytes. O resto depende do que ela inicia: servidores MCP, um servidor de desenvolvimento, uma execução de testes. Várias sessões em paralelo multiplicam tudo isso.

Existe um app que mostra o que o Claude Code está rodando no meu Mac?

O Vitals tem uma aba Projetos que lista todos os processos que trabalham em cada pasta de projeto, com memória, CPU e portas, e destaca os servidores de desenvolvimento ociosos.

No glossário

Mais guias