AIを活用してコーディングを進めていると、気づけば不要な会話や古いテスト用のデータが溜まってしまいますよね。特にCodexを使っている場合、画面を見渡しても見慣れたゴミ箱アイコンや削除ボタンが見当たらなくて、どうやってスレッドを整理すればいいのか困っている方も多いのではないでしょうか。
そのまま放置していると、大切なソースコードの断片やプロジェクトのパス、デバッグ用のログといった機密データがローカル環境に残り続けてしまうため、セキュリティ的にも少し心配かなと思います。また、不要なデータが蓄積することで動作が重くなる原因にもなりかねません。
そこでこの記事では、Codexのスレッド削除に関する仕組みや、CLI環境およびデスクトップアプリでの具体的な履歴の消去手順、さらにCozeなど他のAIツールとの管理方法の違いについて、初心者の方にも分かりやすく解説します。この記事を読めば、迷うことなく作業スペースをクリーンな状態に戻せるようになりますよ。
- Codexにおけるアーカイブと物理削除の決定的な違い
- お使いのパソコンに保存されているセッションファイルを特定して消去する手順
- 削除後に発生しやすいUIの表示バグとその解決方法
- Cozeなどの他ツールにおける会話管理の仕組みとの比較
codexのスレッドを削除できない原因
Codexを使っていて、不要になった会話を消しようとしたのに「削除」のメニューが見つからなくて戸惑った経験はありませんか。ここでは、なぜCodexでは直感的にスレッドを削除できないのか、その背景にある設計思想やデータ管理の仕組みについて解説しますね。
codexの履歴削除とアーカイブの違い
Codexのデスクトップアプリの画面上で操作できるのは、実は完全な消去ではなく「アーカイブ(Archive)」機能だけなんです。ここが、一般的なChatGPTなどのウェブサービスと大きく異なる点かなと思います。画面左側のサイドバーに表示されている対話履歴の横にあるボタンをぽちっと押しても、それは単に目隠しをしている状態に過ぎないんですよね。
アーカイブを実行すると、スレッドはサイドバーの一覧から非表示になり、見た目的には整理されたように感じられます。しかし、これは画面上から隠されただけで、パソコンのハードディスク内にある物理的な対話データは一切消えずに残り続けている状態です。不要になったからといってアーカイブしただけでは、データそのものは蓄積されたままなので注意が必要ですね。ユーザーとしては「見えなくなったから消えただろう」と思い込んでしまいがちですが、実際にはバックグラウンドのストレージ容量をじわじわと圧迫し続けているという罠があります。
さらに、この仕様を知らずに放置していると、過去に試行錯誤した無数のコードスニペットや一時的なテストデータがローカルストレージにどんどん溜まっていってしまいます。特に大規模なソースコードを読み込ませたり、何万行にも及ぶログファイルをペーストしてデバッグを行ったりした場合は、たった数日間の利用であってもファイルサイズがギガバイト単位に膨れ上がってしまうケースが少なくありません。パソコンのストレージ残量が気になる方は、アーカイブの仕組みを正しく理解しておくことが大切かなと思います。
注意:アーカイブされたデータは平文(JSONL形式)で保存されています。開発中のソースコードや、誤って貼り付けてしまったAPIキー、サーバーの接続トークンなどもそのまま残ってしまうため、機密情報の取り扱いには気をつけましょう。
openaiのcodexでsessionsを削除する
OpenAIが提供するCodexでは、過去の対話履歴が「セッション(sessions)」という単位で管理されています。これらはウェブ上のサーバーではなく、基本的にはユーザーのローカル環境にファイルとして自動保存される仕組みです。このようなローカルファーストの設計になっているのは、オフラインでの動作を安定させたり、APIへの負荷を軽減したりするための開発者向けツールならではの工夫なのかもしれませんね。
アプリのUIに物理的な削除ボタンが標準搭載されていないため、これらのセッションデータを完全にパージ(抹消)したい場合は、システム内のファイルを手動で操作しなければなりません。ファイル名が日時ベースになっていて判別しづらいことも、初心者にとって削除のハードルを上げている原因かなと思います。エクスプローラーやファインダーをいくら眺めてみても、暗号のような文字列が並んでいるだけなので、どれが消したいスレッドなのか直感的には全く見分けがつかないんですよね。
また、セッションがローカルで管理されているということは、セキュリティ面でのリスク管理もすべて自己責任になるという側面を持っています。複数人で共有している共用PCや、持ち出し用のノートパソコンでCodexを使用している場合、万が一PCを紛失したり盗難に遭ったりした際に、ローカルに残されたセッションファイルから重要なソースコードやプロジェクトの内部構造が丸見えになってしまう危険性も否定できません。そのため、機密性の高い開発プロジェクトが終わったタイミングで、不要なセッションデータを能動的に破棄する習慣をつけておくのがベストかなと思います。
codexのcliでsessionsを削除する
ターミナル(コマンドラインインターフェース)でCodex CLIを動かしている場合も、過去の対話履歴はローカルに蓄積されていきます。CLI環境では、動作中の画面をすっきりさせる操作と、ディスク内のデータを消す操作を区別する必要があります。ここを混同してしまうと、画面は綺麗になったのにハードディスクはパンパンのまま、といった状況になりかねません。
現在入力している行をクリアしたいときはCtrl + UやCtrl + K、画面全体の表示をリセットしたいときはCtrl + Lやclearコマンドを使えば、作業スペースを一瞬で綺麗にできます。しかし、これらは見た目をクリアするだけなので、過去のセッションデータそのものを消去するには、特定のディレクトリ内にある履歴ファイルをターゲットにして操作しなければなりません。黒い画面での操作に慣れていない方だと、コマンド一発で消せると思ってしまいがちですが、実は裏側のログファイルまで綺麗さっぱり消えているわけではないんですよね。
CLI版のCodexは、動作が軽快でエンジニアにとっては非常に使い勝手が良いツールなのですが、そのぶん履歴の管理もコマンドライン上で行う必要があります。一時的に作成されたセッションファイルや履歴ファイルは、特定のパスにひっそりと生成され、手動でrmコマンドなどを実行しない限りは半永久的に残り続けます。シェルスクリプトなどを自作して、定期的に特定のログディレクトリを自動クレンジングするような仕組みを構築しておくのも、作業環境をクリーンに保つためのおすすめのライフハックかなと思います。
codex app delete thread
海外の開発者コミュニティや公式のギットハブ(GitHub)のイシュー(#13018や#20251など)でも、この「UIから直接スレッドを消去できない不整合」については長年議論されています。世界中のエンジニアたちが「なぜゴミ箱ボタンを付けてくれないんだ?」「セッションが溜まりすぎてアプリの動作がモタつく」といった不満や要望を数多く書き込んでいる状況です。
多くのユーザーから改善要望が出されているものの、標準機能としての実装は見送られている状態です。その理由としては、Codexが提供する対話ログが、AIモデルのファインチューニング(追加学習)や、開発者自身のコーディングパターンの分析、あるいは不具合が発生した際のデバッグ用の監査ログ(Audit Log)として価値が高いと見なされているからだと言われています。安易にユーザーがワンクリックでデータを完全消失させてしまわないように、あえて手動でしか消せない不便な設計にしているのかもしれませんね。
そのため、現状で確実にスレッドを完全消去するには、後述する「手動クレンジングのワークフロー」を実践するのが一番確実なアプローチになります。公式のアップデートによっていつかUI上に「Delete」ボタンが実装される日が来るかもしれませんが、現時点ではシステム内部の構造を理解し、自分で直接ファイルをコントロールするスキルを身につけておくのが一番の近道かなと思います。
coze thread deleteする方法
ここで、他の代表的なAIプラットフォームである「Coze(コゼ)」の会話管理システムと比較してみましょう。Cozeでは、会話履歴をクラウド側で一元管理するアーキテクチャが採用されています。Codexのようにローカル環境にデータを残す方式とは、根本的な思想から大きく異なっているのが面白いポイントですね。
Cozeにはシステムのリソース制限があり、1人のユーザーが同時に保持できる会話(スレッド)の最大数は200個までと決められています。上限に達すると新しい会話が作れなくなるため、不要になった過去のやり取りは「Delete conversation node」という機能を実行し、メッセージ履歴を含めてシステムから完全に物理削除する必要があります。上限がはっきりと決まっているからこそ、定期的な断捨離がシステム側から求められるわけですね。また、会話の文脈だけをリセットして新しくやり直したいときのために「Clear Conversation Context API」といった論理リセット機能も用意されています。
このように、Cozeのようなクラウド型のツールでは、APIや管理画面を通じてサーバー上のデータを一発で消去できるため、ユーザーが自分のパソコンの隠しフォルダを必死に探す必要はありません。その反面、ネットワークに接続していないと履歴の整理すらできなかったり、運営側のサーバーにデータが残る期間を自分で厳密にコントロールしにくかったりするという側面もあります。双方にメリットとデメリットがあるため、ツールの特性に合わせたデータ管理が求められますね。
cozeとcodexを連携する際の注意点
CozeとCodexを連携させたり、外部のスキル(プラグイン)を導入してデータ連携を行ったりする場合、それぞれの履歴・キャッシュ管理の仕様が混ざり合うため注意が必要です。片方のツールでスレッドを消したからといって、もう片方のデータまで連動して消えるとは限らないのが、複数ツールを組み合わせる際の難しいところかなと思います。
例えば、文献管理ツールのZoteroとCodexを連携させるプラグインなどでは、ローカルのデータベースに直接アクセスして履歴を管理する仕様になっており、独自の削除ポリシー(一括削除や期間指定削除など)が実装されているケースもあります。連携ツールを使う際は、どこにデータが保存され、どのように消去されるのかを個別に確認しておくと安心ですね。Codex側で一生懸命セッションファイルをゴミ箱に捨てたとしても、Coze側のワークフローやZoteroのキャッシュに残骸が残っていて、そこからデータが漏洩してしまったら元も子もありません。
こうしたマルチプラットフォーム環境で作業を行う場合は、データフローの全体像を意識することが大切です。特にAPI経由で相互にデータを送り合っている場合、予期せぬログが思わぬ場所に保管されていることがあります。機密プロジェクトを扱う際には、連携しているすべての外部サービスの履歴管理画面や、ローカルのインテグレーション用フォルダも漏れなくチェックして、データが完全にクリアされているか二重三重の確認を行うのが安全かなと思います。
codexのスレッドを削除する正しい手順
ここからは、Codexのデスクトップアプリや環境内に残ってしまった対話スレッドを、安全かつ確実に完全消去するための手動クレンジング手順を分かりやすく解説します。ファイル操作を伴うため、間違って重要なファイルを消さないように、慎重にステップを踏んで進めていきましょうね。
パソコンの隠しフォルダを開く方法
Codexの対話履歴は、OSごとのホームディレクトリ直下にある「.codex」という隠しフォルダの中に格納されています。まずは、この物理保存先へアクセスしてみましょう。通常の設定のままだと画面に表示されないフォルダなので、最初に見つけるときはちょっとしたコツが必要になります。
各OSのデフォルトパス一覧
お使いのオペレーティングシステムに合わせて、下記のパスを確認してみてください。エクスプローラーやFinderのパス入力欄に直接コピー&ペーストすると、迷わずに目的の場所までジャンプできるのでおすすめですよ。
| ご利用のOS | デフォルトの物理保存先パス |
|---|---|
| macOS / Linux | ~/.codex/sessions/ |
| Windows | C:\Users\<ユーザー名>\.codex\sessions\ |
※環境変数CODEX_HOMEを設定している場合は、指定したカスタムパスの配下を確認してくださいね。フォルダ名の先頭にドット(.)がついているものは隠しフォルダなので、OSの設定で「隠しファイルを表示する」にチェックを入れて探してみてください。Macユーザーの方ならCommand + Shift + . (ドット)のショートカットキーを押すだけで、隠しフォルダの表示・非表示を簡単に切り替えられるので試してみてくださいね。
セッションファイルをゴミ箱に移動する
sessionsフォルダ、または画面上でアーカイブした後に移動するarchived_sessionsフォルダを開くと、拡張子が.jsonlになっているファイルがいくつか見つかるはずです。これらのファイル一つ一つが、あなたが過去にCodexとやり取りした個々のスレッド(会話履歴)の実体になります。
ファイル名は作成日時(YYYY/MM/DD形式など)で自動分類されているため、どれが消したいスレッドなのか一見すると分かりません。その場合は、ファイルをメモ帳などのテキストエディタで開いて、最上部付近にある記述を確認してみましょう。中身はテキスト形式なので、特別なツールを使わなくても簡単に閲覧することができます。
特定のコツ:ファイルを開くと、下記のようなメタデータが含まれています。
{"session_meta": {"cwd": "C:/Users/Developer/Projects/MySecretApp", "created_at": "2026-05-27T09:00:00Z"}}
この「cwd(カレント・ワーキング・ディレクトリ)」に記載されているプロジェクト名やパスを見ることで、どの開発プロジェクトの会話だったのかを特定できます。該当するファイルが見つかったら、それをゴミ箱へ移動しましょう。
もし、該当するフォルダ内のすべての会話履歴を一括で消去してしまいたい場合は、sessionsフォルダの中身を丸ごと全選択してゴミ箱にポイしてしまっても大丈夫です。ただし、まだ使う予定のある重要なコードの相談履歴まで一緒に消えてしまうため、一括削除を行う前には、念のためにフォルダ全体のバックアップをデスクトップなどに一時避難させておくのが安全かなと思います。
削除後にアプリを再起動して確認する
該当するJSONLファイルを削除したら、一度Codexのアプリケーションを完全に終了(タスクも終了)させ、再起動を行ってください。ここのステップを忘れてしまうと、「せっかくファイルを消したのに何も変わらないじゃん!」と焦ることになってしまいます。
アプリがバックグラウンドで起動したままだと、メモリ上に古い状態がキャッシュされているため、ファイルを取り除いても画面上のサイドバーにタイトルが残ったままになってしまいます。Windowsであればタスクマネージャー、Macであればアクティビティモニタを開いて、Codexのプロセスが完全に消えているかチェックしてみるのが確実ですね。再起動を挟むことで、ディスク上の変更が正しく読み込まれ、UI表示からも綺麗に消滅します。
再起動に成功すると、先ほど手動でファイルを削除したスレッドがサイドバーの一覧から綺麗さっぱり消え去っているはずです。これでようやく、画面上からも、お使いのパソコンのストレージ内からも、対象のデータが完全に消去されたことになります。作業スペースがクリーンになると、心なしか新しいコードを書くときの集中力もアップするような気がしますよね。
履歴が消えないバグとクリーンアップ
上記の手順でファイルを削除しても、実はアプリケーションの内部データベース(SQLite)内に、スレッドのインデックス情報やログが不整合データとして残ってしまうバグが報告されています。ファイル自体は消えているのに、アプリ内部の管理ノートみたいな場所には「ここにスレッドがあったよ」という記録だけが幽霊のように残ってしまうイメージですね。
セッションファイルだけを消しても、session_index.jsonlやstate_5.sqliteといった管理ファイルの中に該当スレッドのIDレコードが取り残されてしまうため、アジャイル開発などで頻繁にスレッドの作成・削除を繰り返していると、内部ログがパージされずにディスク容量が数ギガバイト規模まで異常に肥大化することがあります。画面の表示はおかしくなくても、裏側でゴミデータが迷子になっている状態です。どうしても完全にクレンジングしたい場合は、有志の開発者がコミュニティ(GitHub等)で公開しているサードパーティ製のクリーンアップツール(codex-history-cleanerなど)の利用を検討してみるのも手かなと思います。こうしたスクリプトを実行することで、データベース内の不要なレコードを自動でスキャンし、最適化(Vacuum処理など)を行ってくれます。
ただし、サードパーティ製のツールやスクリプトを使用する際は、予期せぬバグでアプリの設定そのものが初期化されてしまうリスクもあるため、実行前には必ず.codexフォルダ全体のバックアップを手動で取っておくようにしてください。開発ツールを快適に維持するためには、こうした定期的なメンテナンスの知識も持っておくと、いざというときに役立つかなと思います。
codexのスレッド削除に関するまとめ
今回は、Codexの画面上で削除ボタンが見当たらない理由と、ローカルストレージ内のファイルを直接操作して機密データを破棄する手順についてご紹介しました。最初は少し難しく感じたかもしれませんが、隠しフォルダの場所さえ覚えてしまえば、次からはスムーズに作業できるようになるはずです。
Codexの仕様上、UIにあるのは「アーカイブ」のみで、完全に消去するには手動でのファイル操作が必要になります。大切なソースコードや機密情報を守るためにも、不要になった履歴は定期的にチェックして、正しい方法でcodexのスレッド削除を実践してみてくださいね。また、アプリアップデート時のバグで履歴が突然消えてしまうリスクに備えて、重要なログは事前に外部へエクスポートしておく運用もおすすめですよ。あなたの開発環境がいつも安全で快適な状態であることを応援しています!
