Gidsen/Claude Code gebruikt te veel geheugen

Gebruikt Claude Code te veel geheugen of CPU op een Mac? Zo vind je het, en krijg je het terug

Atta 🐬

Oprichter van Vitals

Gepubliceerd

Kort antwoord

Claude Code draait in je terminal als een proces met de naam claude, en start tijdens het werk andere processen: MCP-servers, subagents, en de dev-servers en testruns waarmee het zijn werk controleert. Twee dingen maken het zwaar. Een sessie die al uren draait, kan groeien in geheugen en CPU; stop je hem en hervat je hem met claude --resume, dan is hij weer normaal. En processen die hij heeft gestart, kunnen blijven draaien nadat de sessie is afgelopen. Vind ze in Activiteitenweergave door te zoeken op claude, node en mcp. Vitals, een systeemmonitor voor de Mac, toont elk proces dat in een projectmap werkt, zodat je meteen ziet wat een sessie heeft achtergelaten.

Zo vind je wat Claude Code gebruikt

  1. 01 Open Activiteitenweergave, klik op Geheugen en typ claude in het zoekveld. Elke draaiende sessie is een regel. Een regel die een paar gigabyte gebruikt, of druk is terwijl je niets vraagt, is de sessie om te herstarten.
  2. 02 Kies Weergave → Alle processen, hiërarchisch. Open het driehoekje naast je terminal-app om elke sessie te zien, met alles wat hij heeft gestart eronder.
  3. 03 Herstart een zware sessie: druk twee keer op Control-C om hem te stoppen, voer dan claude --resume uit in dezelfde map en kies het gesprek. Het gaat verder waar het was gestopt.
  4. 04 Maak het zoekveld leeg en zoek op mcp, en daarna op node. Regels die er nog staan nadat je elke sessie van Claude Code hebt gesloten, zijn achtergebleven.
  5. 05 In Terminal toont ps -axo pid,ppid,rss,etime,command | grep -i mcp ze met hun ouderproces. Een ouderproces 1 betekent dat de sessie die het proces startte, weg is. Stop er een met kill gevolgd door zijn nummer.

In Claude Code toont /mcp de MCP-servers die een sessie start. Elk is een eigen proces; verwijder de servers die je niet gebruikt.

Claude Code is een opdrachtregelprogramma, dus het heeft geen eigen venster en staat niet in het Dock: wat het kost, verschijnt onder je terminal-app, of onder de editor in wiens terminal je het draait. Het is ook een programma dat andere programma’s start. Elke MCP-server is een proces, elke subagent is een proces, en als het je tests draait of je dev-server start, zijn dat ook processen. Het meeste geheugen dat mensen aan Claude Code toeschrijven, zit in wat het heeft gestart. De tabel zet op een rij wat wat is.

Waar het geheugen en de CPU van Claude Code naartoe gaan

Wat je zietWat het isWat je doet
claude gebruikt een paar GB Een sessie die al uren openstaat Stop hem en voer claude --resume uit
claude druk terwijl je niets vraagt Hetzelfde: lange sessies worden trager Herstart de sessie; update Claude Code
Veel node-processen MCP-servers, één per server per sessie Verwijder ongebruikte servers met /mcp
Processen die overblijven nadat elke sessie is gesloten MCP-servers, subagents of een headless browser die niet is gestopt Vind ze aan ouderproces 1, en stop ze
next-server, een testrunner of een build met hoge CPU Iets dat Claude Code heeft gestart om zijn werk te controleren Stop het, of vraag Claude Code dat te doen

Lange sessies groeien

Een sessie bewaart het hele gesprek, elk bestand dat hij heeft gelezen en de uitvoer van elke opdracht. Over uren telt dat op, en in de issuetracker van Claude Code melden mensen sessies die vele gigabytes bereikten, of een CPU-core bezighielden terwijl ze niets deden. De meldingen zijn het eens over de oplossing: stop de sessie en hervat hem. Het gesprek wordt onderweg bewaard, dus met claude --resume verlies je niets en begin je met een schoon proces.

Claude Code up-to-date houden doet er meer toe dan bij de meeste tools. Er komen vaak nieuwe versies uit, en geheugenproblemen horen bij wat tussen versies wordt verholpen. claude update werkt het bij.

Wat een sessie achterlaat

Als een sessie eindigt, horen de processen die hij heeft gestart mee te eindigen. Dat gebeurt niet altijd. Een MCP-server, een subagent of een headless browser kan zijn ouderproces kwijtraken en doorgaan, en houdt zijn geheugen vast terwijl niets het gebruikt. Een ontwikkelaar die erover schreef, telde na een dag werken 37 van zulke processen, samen goed voor meer dan 6 GB.

Ze zijn makkelijk te herkennen als je eenmaal kijkt: geen terminal, een ouderproces 1, en een starttijd van uren geleden. Je kunt ze veilig stoppen. Een zombieproces is strikt genomen iets anders: dat is al afgelopen en gebruikt geen geheugen. Wat mensen hier zombies noemen, zijn weesprocessen: ze leven nog en houden geheugen vast.

Dev-servers, tests en builds

Om zijn werk te controleren start Claude Code je dev-server, draait het je tests of bouwt het het project. Een dev-server die het op de achtergrond heeft gestart, draait nog nadat de taak klaar is, en ook nadat de sessie is gesloten als niets hem heeft gestopt. Twee of drie projecten met elk een vergeten dev-server is een veelvoorkomende reden dat een Mac met ruim geheugen toch tekortkomt.

Vraag Claude Code te stoppen wat het heeft gestart voordat je een sessie beëindigt, of controleer op welke poorten er wordt geluisterd: een server op een poort die je niet gebruikt, is een server die niemand gebruikt.

Meerdere sessies tegelijk

Agents parallel draaien, één per taak of per branch, vermenigvuldigt alles hierboven: elke sessie heeft zijn eigen geheugen, zijn eigen kopie van elke MCP-server en zijn eigen dev-server. Op een Mac met 16 GB is dat het verschil tussen ruim voldoende en geheugendruk in het geel. Sluit sessies die klaar zijn, en geef servers verschillende poorten, zodat een tweede niet ongemerkt mislukt en het opnieuw probeert.

Wat Vitals toevoegt

Vitals laat zien wat elk project kost, ook de processen die bij geen enkel venster horen.

  • Een tabblad Projecten: elk proces dat in een projectmap werkt, welke terminal of editor het ook startte, met geheugen, CPU en energie voor het project als geheel
  • De poorten waarop elk project luistert. Dev-servers die zijn blijven draaien zonder iets te doen, worden aangewezen, met het aanbod om ze te stoppen
  • Claude Code telt over zijn updates heen als één tool, dus zijn geheugen over de dag is één lijn
  • Een melding als een app steeds meer geheugen gebruikt of de CPU minutenlang vasthoudt
  • ‘Stop’ voor elke app vanuit de menubalk, nadat Vitals het je heeft gevraagd

Goed om te weten

  • Vitals toont processen en wat ze gebruiken. Het leest de gesprekken van Claude Code niet en weet niet waar een sessie aan werkt.
  • Vitals stopt nooit iets uit zichzelf.
Koop Vitals voor $9 $9 tijdens de lancering, daarna $29. 14 dagen geld terug.

Vragen die mensen stellen

Waarom gebruikt Claude Code zoveel geheugen?

Een sessie die al uren openstaat, groeit, en elke MCP-server, subagent en dev-server die hij start, is een eigen proces. Stop de sessie en voer claude --resume uit om verder te gaan met een schoon proces.

Raak ik mijn gesprek kwijt als ik Claude Code herstart?

Nee. Gesprekken worden onderweg bewaard. Voer claude --resume uit in dezelfde map en kies het gesprek om verder te gaan.

Waarom zijn er zoveel node-processen als ik Claude Code gebruik?

De meeste zijn MCP-servers: elke server draait als een eigen proces, één keer per sessie. In Claude Code toont /mcp welke er zijn ingesteld.

Hoe vind ik processen die Claude Code heeft laten draaien?

Sluit elke sessie en zoek dan in Activiteitenweergave op mcp en node. In Terminal toont ps -axo pid,ppid,rss,command het ouderproces van elk proces; een ouderproces 1 betekent dat het is achtergebleven.

Kan ik achtergebleven MCP-serverprocessen veilig stoppen?

Ja, zodra er geen sessie van Claude Code meer openstaat. Een sessie start de servers die hij nodig heeft opnieuw als hij weer draait.

Hoeveel geheugen heeft Claude Code nodig?

Een nieuwe sessie gebruikt een paar honderd megabyte. De rest hangt af van wat hij start: MCP-servers, een dev-server, een testrun. Meerdere sessies naast elkaar vermenigvuldigen dat allemaal.

Is er een app die laat zien wat Claude Code draait op mijn Mac?

Vitals heeft een tabblad Projecten dat elk proces toont dat in een projectmap werkt, met zijn geheugen, CPU en poorten, en dat dev-servers aanwijst die niets meer doen.

In de woordenlijst

Meer gidsen