CLAUDE LABEN
MEMORY — Claude Codeの長時間セッションのメモリリークが一掃されました。MCP stdioサーバのstderrが最大64MB蓄積する問題やLSPドキュメントの開きっぱなしが修正されていますTABLES — 非常に大きなmarkdownテーブルが描画を止める不具合を修正。200行を超えるテーブルは先頭200行と「… N more rows」表示になりますSPEED — deny/askルールを多く抱えたセッションで毎ターン数秒遅くなる問題を修正。ルールマッチャがコンパイルして再利用されますTOOLS — MCPツールが多いprint/SDKセッションでは、ツールプールの組み立てをキャッシュし最大7倍速いラウンドになりましたARTIFACTS — Claude CodeのArtifactsは、セッションの作業をその場で更新される共有Webページに変えます。PR解説やダッシュボードに使えますDEADLINE — 7月24日にOpus 4.7のfastモードが削除されます。speed: "fast" はエラーになるため、Opus 4.8のfastモードへ移行が必要ですMEMORY — Claude Codeの長時間セッションのメモリリークが一掃されました。MCP stdioサーバのstderrが最大64MB蓄積する問題やLSPドキュメントの開きっぱなしが修正されていますTABLES — 非常に大きなmarkdownテーブルが描画を止める不具合を修正。200行を超えるテーブルは先頭200行と「… N more rows」表示になりますSPEED — deny/askルールを多く抱えたセッションで毎ターン数秒遅くなる問題を修正。ルールマッチャがコンパイルして再利用されますTOOLS — MCPツールが多いprint/SDKセッションでは、ツールプールの組み立てをキャッシュし最大7倍速いラウンドになりましたARTIFACTS — Claude CodeのArtifactsは、セッションの作業をその場で更新される共有Webページに変えます。PR解説やダッシュボードに使えますDEADLINE — 7月24日にOpus 4.7のfastモードが削除されます。speed: "fast" はエラーになるため、Opus 4.8のfastモードへ移行が必要です
記事一覧/Claude Code
Claude Code/2026-07-16上級

夜間セッションの常駐メモリが朝には数GB — 蓄積の四つの出どころと、RSS を刻んで切り分ける

夜間に回した Claude Code のプロセスを朝に見ると、常駐メモリが数GBまで膨らんでいました。2.1.209 で塞がれた四つの蓄積源と、自分の構成に残る分を RSS の傾きで切り分ける方法、しきい値で畳む運用までを個人開発の目線で整理します。

Claude Code193メモリ5長時間セッション2運用設計14MCP43

プレミアム記事

朝いちばんに ps を叩いたときの数字を、今でも覚えております。夜間に回していた Claude Code のプロセスが、常駐メモリ 3.4GB。前夜に起動した時点では 400MB 台でした。処理そのものは最後まで走り切っていて、成果物にも問題はありません。ただ、終盤のターンは目に見えて重く、ひとつの応答が返るまでに待たされていました。

原因を「長く回したから」で片づけていた時期が、私にはしばらくありました。個人開発でスケジュール実行を組んでいると、夜のセッションは誰も見ていません。翌朝の成果だけを確認して、重さは仕方のないものとして受け入れてしまいます。

2.1.209 と 2.1.208 の修正一覧を眺めていて、目が留まったのがメモリ関連の四件でした。読んでいくうちに、あの重さの正体は「長く回したから」という漠然としたものではなく、四つの別々の場所に別々の理由で溜まっていたものだったと分かってきます。そして、そのうちいくつかは私の構成が引き寄せていたものでした。

溜まっていたのは一箇所ではありませんでした

修正された四件は、性質がまったく違います。ひとまとめに「メモリリークが直った」と受け取ると、自分の環境でどれが効くのかを見誤ります。

蓄積源 何が起きていたか 修正後 効きやすい構成
MCP stdio サーバの stderr サーバごとに最大 64MB まで出力が保持されていた 保持量が抑えられる 自作 MCP サーバを複数常駐させ、ログを stderr に流している
LSP ドキュメント 開いたドキュメントが解放されず積み上がっていた LRU 50 件が上限に 大きなリポジトリを横断し、多数のファイルを次々に開く
async hook の出力 バックグラウンド化した後も出力が残り続けていた バックグラウンド化時に解放 hook を仕込み、長い処理をバックグラウンドに送る
ツール結果(headless / SDK) 大きな結果が上限なく積み上がっていた 蓄積が上限化 claude -p や SDK で無人実行し、ツールが長い出力を返す

私の構成は、四つのうち三つに当たっていました。自作の MCP サーバを二つ常駐させ、そこから進捗を stderr に流しています。夜間タスクは claude -p の無人実行です。hook も使っています。当たっていなかったのは LSP くらいで、これは私が単一リポジトリの小さな範囲しか触らせていないからでした。

ここが分かれ目になります。「メモリリークが直った」という一行を、自分の構成に照らして四つに割ってから読む。そうすると、更新後にどれくらい改善するはずかの見当がつき、その見当と実測がずれたときに「残っている分は自分の設計側にある」と判断できます。

まず版を確かめてから測る

測り始める前に、手元の版を確認します。修正の入っていない版で測った数字を基準にしてしまうと、後の比較が全部ずれます。

claude --version

判断は単純です。

手元の版 やること
2.1.208 より前 更新前に一晩だけ測る。更新後との差が、そのまま四件の修正の効きになります
2.1.208 / 2.1.209 以降 そのまま測る。増え続けるなら残りは自分の構成側です

更新前の一晩を測っておく価値は、思っているより大きいものでした。「更新したら軽くなった気がする」を「毎時 620MB の増加が毎時 90MB になった」に変えられます。前者は次に重くなったときに何の役にも立ちませんが、後者は基準線になります。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
MCP stdio の stderr・LSP ドキュメント・async hook 出力・ツール結果という四つの蓄積源を分けて捉え、自分の構成でどれが効くかを判断できるようになる
子プロセスまで含めた RSS を毎分刻む 50 行のサンプラーと、増加の傾きを MB/h で出す分析コードが手に入り、体感でなく数字で切り分けられる
しきい値を超えたセッションを安全に畳んで再開する watchdog の型を持ち帰り、夜間の自動実行を朝まで持たせられる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

Claude Code2026-06-27
無人で回し続けても重くならないか — Claude Code 長時間セッションのメモリ使用量を観測して頭打ちにする
長時間の無人セッションで Claude Code が徐々に重くなる問題を、ps による RSS 定点観測・ローリング基準値のウォッチドッグ・セグメント分割の3点で頭打ちにする運用設計を、観測スクリプトと before/after で具体的にまとめます。
Claude Code2026-06-27
OAuthトークンが切れた瞬間に無人実行が手詰まりになる — リモートMCPを止めないトークンライフサイクル設計
リモートMCPコネクタはOAuthで認可されますが、アクセストークンは短命です。対話実行ではブラウザで再認可できても、無人のスケジュール実行では誰もダイアログを押せません。期限を自分で持ち、先読みで更新するトークンライフサイクル設計をまとめました。
Claude Code2026-06-21
Context7 を入れても Claude Code が古いコードを書くとき — 注入が効いているかを運用で確かめる
Context7 MCP を入れたのに古い API のコードが返る——その多くはドキュメント注入が静かに不発になっています。注入が効いたかを毎回確かめる検証フック、ライブラリ単位のバージョン固定、未対応ライブラリへのフォールバックを運用の実装メモとしてまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →