Codex の容量

~/.codex の中身と、安全に削除できるもの

~/.codex の容量の大半は、会話ファイルの中に書き込まれたスクリーンショットです。ある開発者の Mac では 1,231 件の会話が 22.83 GB を占め、その 71% が画像で、一度しか出てこない画像は 16% でした。容量を取り戻すには、読み返したい会話を最適化するか不要な会話を削除する必要があり、アーカイブしても容量は空きません。

~/.codex の中身

会話は .jsonl ファイルで、Codex ではロールアウトと呼ばれています。アクティブな会話は ~/.codex/sessions に、アーカイブした会話は ~/.codex/archived_sessions にあります。Codex で会話をアーカイブしても、ファイルが片方のフォルダからもう片方に移るだけなので容量は戻りません。

スクリーンショットはデータとしてファイルに書き込まれます。長いセッションがコンテキストを compaction すると同じスクリーンショットがもう一度書き込まれ、計測した Mac では 1.76 GB の会話 1 件のうち 1.57 GB が重複でした。

このフォルダには thread_history_1.sqlite(その Mac では 1.74 GB)と logs_2.sqlite(1.13 GB)のほか、worktree やプラグインも入っています。2 つの SQLite ファイルは Codex 自身のインデックスとログです。会話のデータとは別物で、手で編集するためのものでもありません。

手作業で容量を空ける場合

Codex は会話のインデックスを自分で管理していて、ファイルは Codex を通して変わる前提になっています。できる操作は Codex の中で行いましょう。

  1. 不要になった会話は Codex の中で削除し、インデックスを正しい状態に保ちます。
  2. キャッシュやランタイムを消す前に Codex を終了します。
  3. ロールアウトファイルを自分で編集する前に、ほかのロールアウトの session_meta にそのスレッドを指す history_base がないか検索します。
  4. 見つかった場合、分岐した会話がそのファイルからバイト位置で履歴を読んでいるので、ファイルには手を付けないでください。

Mint でできること

Mint は Mac の中で会話を 1 件ずつ読み、含まれる画像の指紋を取ります。そのため「ディスク」タブの Codex の行には、アーカイブしていない会話、アーカイブ済みの会話にある重複したスクリーンショット、残りのアーカイブ済みの履歴それぞれの計測サイズが表示されます。会話はサイズ順の一覧から選べ、スライダーで使っていない期間を絞り込めるほか、行にポインタを重ねるとメディアの量が表示されます。

「最適化」はテキストをそのまま残して各スクリーンショットを小さなプレビューに置き換え、会話はこれまでどおり Codex で開けます。音声や動画はプレースホルダーになります。「削除」は Codex を通じて会話ごと消すので、Codex のインデックスも崩れません。最初は何もチェックされておらず、どちらも元に戻せない操作であることが実行前の確認画面に表示されます。

ほかの会話の分岐元になっている会話は、書き換えの対象から外します。SQLite ファイルはサイズを測るだけで、編集することはありません。

操作デモを見る (0:17): AI Chats Taking Up Mac Storage? Compress Their Images with Mint

古い会話を整理しても容量があまり空かない理由

重複したスクリーンショットは、スクリーンショットの多い最近の長いセッションにたまります。計測した Mac では重複の 92% が直近 6 日以内に使った会話にあったので、1 週間より古い会話だけを選ぶと大部分を取りこぼします。

「最適化」は重複の有無に関係なく、選んだ会話のスクリーンショットのうち、もともと小さいもの以外をすべて小さくします。そのため古い会話でも、画像が入っていれば容量を空けられます。

よくある質問

Codex の会話をアーカイブすると容量は空きますか?

空きません。ファイルが sessions から archived_sessions に移るだけです。容量を戻すには、会話を最適化するか削除してください。

~/.codex や archived_sessions をまとめて削除しても大丈夫ですか?

まとめて消すのはやめましょう。~/.codex を消すとすべての会話、設定、Codex のローカルの状態がなくなるので、Codex か Mint から会話を 1 件ずつ削除してください。

thread_history_1.sqlite を小さくできますか?

手作業では安全にできません。これは Codex のインデックスで、Mint もサイズを測るだけで整理や編集はしません。

最適化した会話は Codex でどう見えますか?

これまでどおり開けて、スクリーンショットがあった場所に小さなプレビューが表示されます。元の画像は戻せません。

まず Codex の会話ごとのサイズを確認しましょう

スキャンしてから「ディスク」タブで「Codex の会話」を開いてください。操作する前に、会話にポインタを重ねるとメディアの量を確認できます。

AI エージェントの容量をスキャン