Посібники/Claude Code використовує забагато памʼяті

Claude Code використовує забагато памʼяті чи процесора на Mac? Як це знайти й повернути ресурси

Atta 🐬

Засновник Vitals

Опубліковано

Коротка відповідь

Claude Code працює у вашому терміналі як процес claude і під час роботи запускає інші: сервери MCP, субагентів, а також сервери розробки й запуски тестів, якими перевіряє свою роботу. Важким його роблять дві речі. Сеанс, що триває годинами, може розростатися в памʼяті та навантажувати процесор; якщо завершити його й відновити командою claude --resume, усе повертається до норми. А запущені ним процеси можуть працювати й після завершення сеансу. Знайдіть їх у Моніторі активності пошуком за claude, node і mcp. Vitals, системний монітор для Mac, перелічує всі процеси, що працюють у кожній папці проєкту, тож усе, що залишив сеанс, видно одразу.

Як дізнатися, що використовує Claude Code

  1. 01 Відкрийте Монітор активності, натисніть «Памʼять» і введіть claude у полі пошуку. Кожен запущений сеанс — це окремий рядок. Перезапускати варто рядок, який займає кілька гігабайтів або зайнятий, хоча ви нічого не просите.
  2. 02 Виберіть «Перегляд» → «Усі процеси, ієрархічно». Клацніть трикутник біля програми термінала, щоб побачити кожен сеанс і все, що він запустив, під ним.
  3. 03 Перезапустіть важкий сеанс: двічі натисніть Control-C, щоб його завершити, потім виконайте claude --resume у тій самій папці й виберіть розмову. Вона продовжиться з того місця, де зупинилася.
  4. 04 Очистіть поле пошуку й пошукайте mcp, а потім node. Рядки, які залишилися після того, як ви закрили всі сеанси Claude Code, — це залишки.
  5. 05 У Терміналі ps -axo pid,ppid,rss,etime,command | grep -i mcp перелічує їх разом із батьківським процесом. Батьківський процес 1 означає, що сеансу, який запустив процес, уже немає. Зупиніть процес командою kill і його номером.

У Claude Code /mcp перелічує сервери MCP, які запускає сеанс. Кожен із них — окремий процес; вилучіть ті, якими не користуєтеся.

Claude Code — програма для командного рядка, тому в неї немає власного вікна й іконки в Dock: її витрати видно під програмою термінала або під редактором, у терміналі якого ви її запускаєте. Крім того, вона запускає інші програми. Кожен сервер MCP — процес, кожен субагент — процес, і коли вона запускає ваші тести чи сервер розробки, це теж процеси. Більшість памʼяті, у якій звинувачують Claude Code, насправді займають процеси, які він запустив. Таблиця показує, що є чим.

Куди йдуть памʼять і процесор Claude Code

Що ви бачитеЩо цеЩо робити
claude займає кілька ГБ Сеанс, відкритий уже кілька годин Завершіть його й виконайте claude --resume
claude зайнятий у простої Те саме: довгі сеанси сповільнюються Перезапустіть сеанс; оновіть Claude Code
Багато процесів node Сервери MCP, по одному на кожен сервер у кожному сеансі Вилучіть непотрібні сервери командою /mcp
Процеси, що залишилися після закриття всіх сеансів Сервери MCP, субагенти або браузер без інтерфейсу, які не зупинилися Знайдіть їх за батьківським процесом 1 і завершіть
next-server, засіб запуску тестів або збирання з високим навантаженням на процесор Щось, що Claude Code запустив для перевірки своєї роботи Зупиніть це або попросіть Claude Code це зробити

Довгі сеанси розростаються

Сеанс зберігає всю розмову, кожен прочитаний файл і вивід кожної команди. За години це накопичується, і в трекері помилок Claude Code повідомляли про сеанси, що сягали багатьох гігабайтів або тримали зайнятим ядро процесора в простої. Рішення в цих повідомленнях однакове: завершити сеанс і відновити його. Розмова зберігається по ходу роботи, тож claude --resume нічого не втрачає й починає з чистого процесу.

Оновлювати Claude Code важливіше, ніж більшість інструментів. Оновлення виходять часто, і проблеми з памʼяттю — серед того, що виправляють між версіями. Оновлює його claude update.

Що залишає по собі сеанс

Коли сеанс закінчується, запущені ним процеси мають закінчитися разом із ним. Так буває не завжди. Сервер MCP, субагент чи браузер без інтерфейсу може втратити батьківський процес і працювати далі, утримуючи памʼять, якою ніхто не користується. Один розробник, який про це писав, нарахував після робочого дня 37 таких процесів, що займали понад 6 ГБ.

Їх легко впізнати, якщо придивитися: немає термінала, батьківський процес 1, а запущено їх кілька годин тому. Їх безпечно завершити. Процес-зомбі, строго кажучи, — це інше: він уже закінчився й не використовує памʼяті. Те, що тут називають зомбі, — це осиротілі процеси, живі й такі, що утримують памʼять.

Сервери розробки, тести й збирання

Щоб перевірити свою роботу, Claude Code запускає ваш сервер розробки, виконує тести або збирає проєкт. Сервер розробки, запущений ним у фоні, продовжує працювати після завершення завдання, а якщо його ніщо не зупинило, то й після закриття сеансу. Два-три проєкти, у кожному з яких забутий сервер розробки, — поширена причина, чому навіть на Mac із великим обсягом памʼяті її не вистачає.

Попросіть Claude Code зупинити те, що він запустив, перш ніж завершувати сеанс, або перевірте, які порти прослуховуються: сервер на порту, яким ви не користуєтеся, — це сервер, яким не користується ніхто.

Кілька сеансів одночасно

Паралельна робота агентів, по одному на завдання чи гілку, множить усе сказане вище: кожен сеанс має власну памʼять, власну копію кожного сервера MCP і власний сервер розробки. На Mac із 16 ГБ це різниця між комфортною роботою і жовтою навантаженістю памʼяті. Закривайте сеанси, які вже завершили роботу, і задавайте серверам різні порти, щоб другий сервер не завершувався тихо з помилкою й не пробував знову.

Що додає Vitals

Vitals показує, скільки коштує кожен проєкт, зокрема процеси, які не належать жодному вікну.

  • Вкладка «Проєкти»: усі процеси, що працюють у папці проєкту, хоч би який термінал чи редактор їх запустив, із памʼяттю, процесором та енергією для проєкту загалом
  • Порти, які прослуховує кожен проєкт. Сервери розробки, що простоюють, позначено, і Vitals пропонує їх зупинити
  • Claude Code рахується як один інструмент, навіть коли сам оновлюється, тож його памʼять за день — це одна лінія
  • Сповіщення, коли памʼять програми постійно зростає або програма хвилинами тримає процесор
  • Завершення будь-якої програми зі смуги меню після запиту

Варто знати

  • Vitals показує процеси й те, що вони використовують. Він не читає розмови Claude Code і не знає, над чим працює сеанс.
  • Vitals ніколи нічого не завершує сам.
Отримати Vitals за $15 $9 за рік оновлень або $15 назавжди під час запуску, $39 після. Одна оплата, повернення коштів протягом 14 днів.

Що питають люди

Чому Claude Code використовує стільки памʼяті?

Сеанс, відкритий кілька годин, розростається, а кожен сервер MCP, субагент і сервер розробки, який він запускає, — окремий процес. Завершіть сеанс і виконайте claude --resume, щоб продовжити з чистого процесу.

Чи втрачу я розмову, якщо перезапущу Claude Code?

Ні. Розмови зберігаються по ходу роботи. Виконайте claude --resume у тій самій папці й виберіть розмову, щоб продовжити.

Чому під час роботи з Claude Code стільки процесів node?

Здебільшого це сервери MCP: кожен сервер працює як окремий процес, по одному на сеанс. У Claude Code /mcp показує, які з них налаштовано.

Як знайти процеси, які залишив Claude Code?

Закрийте всі сеанси, потім пошукайте в Моніторі активності mcp і node. У Терміналі ps -axo pid,ppid,rss,command показує батьківський процес кожного процесу; батьківський процес 1 означає, що процес залишився.

Чи безпечно завершувати залишені процеси серверів MCP?

Так, якщо не відкрито жодного сеансу Claude Code. Під час наступного запуску сеанс знову запустить потрібні йому сервери.

Скільки памʼяті потрібно Claude Code?

Новий сеанс використовує кілька сотень мегабайтів. Решта залежить від того, що він запускає: сервери MCP, сервер розробки, запуск тестів. Кілька паралельних сеансів множать усе це.

Чи є програма, яка показує, що Claude Code запустив на моєму Mac?

У Vitals є вкладка «Проєкти», яка перелічує всі процеси, що працюють у кожній папці проєкту, з їхньою памʼяттю, процесором і портами, і вказує на сервери розробки, які простоюють.

У глосарії

Інші посібники