Guide/Claude Code usa troppa memoria
Claude Code usa troppa memoria o CPU sul Mac? Come trovarla e recuperarla
In breve
Claude Code gira nel terminale come un processo chiamato claude, e mentre lavora ne avvia altri: server MCP, sub-agenti, e i server di sviluppo e i test che usa per verificare il suo lavoro. Due cose lo rendono pesante. Una sessione aperta da ore può crescere in memoria e CPU; chiuderla e riprenderla con claude --resume la riporta alla normalità. E i processi che ha avviato possono restare in esecuzione dopo la fine della sessione. Trovali in Monitoraggio Attività cercando claude, node e mcp. Vitals, un monitor di sistema per Mac, elenca ogni processo che lavora in ciascuna cartella di progetto, così ciò che una sessione ha lasciato acceso è in bella vista.
Come scoprire cosa sta usando Claude Code
- 01 Apri Monitoraggio Attività, fai clic su Memoria e digita claude nel campo di ricerca. Ogni sessione in esecuzione è una riga. Una riga che usa diversi gigabyte, o che è impegnata mentre non le stai chiedendo nulla, è quella da riavviare.
- 02 Scegli Vista → Tutti i processi in gerarchia. Apri il triangolo accanto alla tua app di terminale per vedere ogni sessione con sotto tutto ciò che ha avviato.
- 03 Riavvia una sessione pesante: premi Control-C due volte per chiuderla, poi esegui
claude --resumenella stessa cartella e scegli la conversazione. Riprende da dove si era fermata. - 04 Svuota il campo di ricerca e cerca mcp, poi node. Le righe che ci sono ancora dopo aver chiuso tutte le sessioni di Claude Code sono rimaste accese.
- 05 Nel Terminale,
ps -axo pid,ppid,rss,etime,command | grep -i mcple elenca con il loro processo padre. Un padre uguale a 1 significa che la sessione che ha avviato il processo non c’è più. Fermane uno conkillseguito dal suo numero.
In Claude Code, /mcp elenca i server MCP che una sessione avvia. Ognuno è un processo a sé; togli quelli che non usi.
Claude Code è un programma a riga di comando, quindi non ha una finestra sua né un’icona nel Dock: il suo costo compare sotto la tua app di terminale, o sotto l’editor nel cui terminale lo esegui. È anche un programma che avvia altri programmi. Ogni server MCP è un processo, ogni sub-agente è un processo, e quando esegue i tuoi test o avvia il tuo server di sviluppo, anche quelli sono processi. La maggior parte della memoria di cui si dà la colpa a Claude Code sta in ciò che ha avviato. La tabella distingue i casi.
Dove vanno la memoria e la CPU di Claude Code
| Cosa vedi | Cos’è | Cosa fare |
|---|---|---|
claude usa diversi GB | Una sessione aperta da ore | Chiudila ed esegui claude --resume |
claude impegnato mentre è inattivo | Lo stesso: le sessioni lunghe rallentano | Riavvia la sessione; aggiorna Claude Code |
Molti processi node | Server MCP, uno per server per ogni sessione | Togli i server che non usi con /mcp |
| Processi rimasti dopo aver chiuso tutte le sessioni | Server MCP, sub-agenti o un browser headless che non si è fermato | Trovali dal padre uguale a 1, e chiudili |
next-server, un test runner o una build con CPU alta | Qualcosa che Claude Code ha avviato per verificare il suo lavoro | Fermalo, o chiedi a Claude Code di farlo |
Le sessioni lunghe crescono
Una sessione conserva l’intera conversazione, ogni file che ha letto e l’output di ogni comando. Nel giro di ore tutto questo si accumula, e nell’issue tracker di Claude Code ci sono segnalazioni di sessioni arrivate a molti gigabyte, o che tenevano occupato un core della CPU da inattive. Le segnalazioni concordano sulla soluzione: chiudi la sessione e riprendila. La conversazione viene salvata man mano, quindi claude --resume non perde nulla e riparte da un processo pulito.
Tenere aggiornato Claude Code conta più che con la maggior parte degli strumenti. Esce spesso, e i problemi di memoria sono tra le cose corrette da una versione all’altra. claude update lo aggiorna.
Cosa lascia acceso una sessione
Quando una sessione finisce, i processi che ha avviato dovrebbero finire con lei. Non sempre succede. Un server MCP, un sub-agente o un browser headless può perdere il padre e andare avanti, occupando memoria senza che nessuno lo usi. Uno sviluppatore che ne ha scritto ha contato 37 processi di questo tipo, che occupavano più di 6 GB dopo una giornata di lavoro.
Sono facili da riconoscere quando li cerchi: nessun terminale, un padre uguale a 1 e un orario di avvio di ore prima. Si possono chiudere senza rischi. Un processo zombie, a rigore, è un’altra cosa: è già terminato e non usa memoria. Quelli che qui vengono chiamati zombie sono orfani, vivi e con memoria occupata.
Server di sviluppo, test e build
Per verificare il suo lavoro, Claude Code avvia il tuo server di sviluppo, esegue i tuoi test o compila il progetto. Un server di sviluppo avviato in background è ancora attivo a lavoro finito, e anche a sessione chiusa se niente l’ha fermato. Due o tre progetti, ognuno con un server di sviluppo dimenticato, sono un motivo comune per cui un Mac con molta memoria resta a corto.
Chiedi a Claude Code di fermare ciò che ha avviato prima di chiudere una sessione, oppure controlla quali porte sono in ascolto: un server su una porta che non stai usando è un server che non usa nessuno.
Più sessioni insieme
Eseguire agenti in parallelo, uno per attività o per branch, moltiplica tutto quanto detto sopra: ogni sessione ha la sua memoria, la sua copia di ogni server MCP e il suo server di sviluppo. Su un Mac da 16 GB è la differenza tra lavorare comodi e un Utilizzo della memoria giallo. Chiudi le sessioni che hanno finito, e assegna ai server porte diverse, così un secondo server non fallisce in silenzio per poi riprovare.
Cosa aggiunge Vitals
Vitals mostra quanto costa ogni progetto, compresi i processi che non appartengono a nessuna finestra.
- Un pannello Progetti: ogni processo che lavora in una cartella di progetto, qualunque terminale o editor l’abbia avviato, con memoria, CPU ed energia del progetto nel suo insieme
- Le porte su cui ogni progetto è in ascolto. I server di sviluppo rimasti accesi e inattivi vengono segnalati, con la proposta di arrestarli
- Claude Code contato come un solo strumento da un aggiornamento all’altro, così la sua memoria nell’arco della giornata è una sola linea
- Una notifica quando la memoria di un’app continua a crescere o l’app tiene occupata la CPU per minuti
- Esci per qualsiasi app dalla barra dei menu, dopo averti chiesto conferma
Buono a sapersi
- Vitals mostra i processi e ciò che usano. Non legge le conversazioni di Claude Code e non sa su cosa sta lavorando una sessione.
- Vitals non chiude mai nulla da solo.
Domande frequenti
Perché Claude Code usa così tanta memoria?
Una sessione aperta da ore cresce, e ogni server MCP, sub-agente e server di sviluppo che avvia è un processo a sé. Chiudi la sessione ed esegui claude --resume per riprendere da un processo pulito.
Riavviando Claude Code perdo la conversazione?
No. Le conversazioni vengono salvate man mano. Esegui claude --resume nella stessa cartella e scegli la conversazione per riprenderla.
Perché ci sono così tanti processi node quando uso Claude Code?
Quasi tutti sono server MCP: ogni server gira come processo a sé, una volta per sessione. In Claude Code, /mcp mostra quali sono configurati.
Come trovo i processi che Claude Code ha lasciato accesi?
Chiudi tutte le sessioni, poi cerca mcp e node in Monitoraggio Attività. Nel Terminale, ps -axo pid,ppid,rss,command mostra il padre di ogni processo; un padre uguale a 1 significa che è rimasto acceso.
Si possono chiudere senza rischi i processi dei server MCP rimasti?
Sì, quando non c’è nessuna sessione di Claude Code aperta. Una sessione riavvia i server che le servono la volta successiva.
Quanta memoria serve a Claude Code?
Una sessione appena avviata usa qualche centinaio di megabyte. Il resto dipende da ciò che avvia: server MCP, un server di sviluppo, una serie di test. Più sessioni in parallelo moltiplicano tutto.
Esiste un’app che mostra cosa sta eseguendo Claude Code sul Mac?
Vitals ha un pannello Progetti che elenca ogni processo che lavora in ciascuna cartella di progetto, con memoria, CPU e porte, e segnala i server di sviluppo rimasti inattivi.
Nel glossario
Altre guide
- Perché il Mac è così lento
- Cosa scarica la batteria del Mac
- Quale app usa la CPU o la memoria
- Perché il Mac non va in standby
- Chrome usa troppa memoria
- Perché le ventole del Mac sono così rumorose
- Come controllare la velocità delle ventole sul Mac
- Come liberare RAM sul Mac
- Docker usa troppa memoria
- Come arrestare i container Docker
- Mixer del volume per Mac
- Cursor usa molta CPU
- L’app Claude usa molta CPU
- Codex usa molta CPU
- Ollama usa troppa memoria
- Alternative a Monitoraggio Attività
- Alternative a iStat Menus
- Alternative a Stats
- Task Manager per Mac
- I migliori monitor di sistema per Mac
- Migliori monitor per la barra dei menu del Mac
- I migliori mixer del volume per Mac