Claude Codeのメモリ管理で困ったことはありませんか。長いセッションで最初に伝えた前提条件が消えたり、コーディング規約を無視した出力が急に増えたり。実際のところ、性能の問題ではなくメモリ管理の問題であることがほとんどです。

この記事では、Claude Codeのメモリ管理を安定させる実践テクニックを紹介します。具体的には、3種類のメモリの使い分けと、セッション運用のコツをまとめます。

Claude Codeのメモリ管理は3種類ある

CLAUDE.md(手動メモリ)はプロジェクトルートに置く設定ファイルです。コーディング規約やよく使うコマンドを書いておくと毎回読み込まれます。ただし、合計10,000トークン以下に抑えるのが推奨です。なぜなら、長すぎるとコードや会話に使える領域が圧迫されるからです。

書き方のコツは具体性です。たとえば「コードをきれいに」ではなく「インデントは2スペース」と書きましょう。さらに、箇条書きで整理すると読みやすくなります。

MEMORY.md(自動メモリ)はClaude Codeが自分で書くメモです。セッションをまたいで残ります。しかし、古い情報や間違った推測が残ることもあります。そのため、定期的に確認して不要なものは消しましょう。

セッション内コンテキストは会話中に蓄積される情報です。Claude Codeは200,000トークンのウィンドウを持っています。とはいえ、無限ではありません。したがって、長い作業では古い情報が押し出されていきます。

Claude Codeのメモリ管理で溢れを防ぐ方法

一番困るのは、いつの間にかコンテキストが埋まって出力品質が落ちるパターンです。そこで、3つの対策をおすすめします。

/compactを使い倒す。これは会話を要約してコンテキストを圧縮するコマンドです。5回から10回やり取りしたら1回挟むのが目安です。特に作業の区切りで使うと効果的です。

セッションをタスク単位で分ける。調査から実装、レビューまで1セッションに詰め込むと混線します。したがって、調査が終わったらセッションを切りましょう。そして、次のセッションには必要な情報だけ渡します。面倒ですが結果的に速いです。

大きなディレクトリを除外する。.claudeignoreでnode_modulesを除外するだけで30,000から100,000トークン節約できます。つまり、設定1つでコンテキストの余裕がかなり変わるわけです。

セッション開始時の「5行ルール」

最も効果を感じているテクニックがこれです。新セッションの最初に5つを簡潔に伝えます。

1つ目は今回のゴールです。2つ目は完了条件です。3つ目はやってはいけないことです。4つ目は前のセッションでの決定事項です。5つ目は使う技術スタックです。

毎回やるのは面倒に感じます。しかし、この5行があるかないかで出力品質が大きく変わります。特にチームで使う場合、フォーマットを統一すると引き継ぎが安定します。

Claude Codeのメモリ管理でよくある失敗

情報を足し続ける失敗。毎回の指示に追加情報を足していくパターンです。丁寧に見えますが、後半で重要な指示が埋もれます。そのため、フェーズごとに「不要な情報を削った要約」を作りましょう。足し算ではなく圧縮です。

決定事項が散らばる失敗。会話中に決まったことが文章に埋もれるケースです。対策は簡単です。決定事項は必ず箇条書きにまとめ直してください。地の文に書くよりリストにした方が確実に拾ってもらえます。

メモリ管理の品質を数字で見る

「最近精度が落ちた」と感じたら、3つの数字を確認してください。

再指示の回数が増えているなら、初期指示が曖昧です。やり直し率が高いなら、完了条件が不明確です。さらに、/compactの頻度が上がっているなら、セッションの区切り方を見直すサインです。

このように数字で振り返ると、改善点が明確になります。まずは次のセッションから「5行ルール」を試してみてください。

参考リンク

関連記事