【備忘録】AIツール4種の会話ログ保存場所と抽出方法まとめ
Cursor、Claude Code、Codex、Antigravity——4つのAIコーディングツールを併用しているが、会話ログがどこに保存されているか調べたことはあるだろうか。調べてみたら、合計1.9GBのデータが眠っていた。
結論から言うと、保存場所も形式もツールごとにバラバラだ。以下にまとめる。

こんな方に読んでほしい記事です!
- AIコーディングツールを複数使っていて、会話ログを活用したい方
- 「あの時AIと何を話したっけ?」と振り返りたくなったことがある方
- 自分の環境にどれくらいのログが溜まっているか気になる方
環境情報
| 項目 | 内容 |
|---|---|
| OS | macOS(darwin 25.3.0) |
| Cursor | 最新版(2026年3月時点) |
| Claude Code | CLI版 |
| Codex | CLI版 |
| Antigravity | デスクトップ版 |
4ツールの会話ログ保存場所一覧

| ツール | 保存パス | 形式 | データ量(実測値) | 読みやすさ |
|---|---|---|---|---|
| Cursor | ~/.cursor/projects/*/agent-transcripts/*.jsonl | JSONL | 30セッション / 3.3MB | ◎ |
| Claude Code | ~/.claude/projects/*/*.jsonl | JSONL | 29会話 / 5.2MB | ◎ |
| Codex | ~/.codex/sessions/YYYY/MM/DD/*.jsonl | JSONL | 19セッション / 1.4GB | △ |
| Antigravity | ~/.gemini/antigravity/conversations/*.pb | Protocol Buffers | 71会話 / 457MB | × |
合計: 約149セッション / 1.9GB

1.9GBって結構な量。自分でもびっくりした。特にCodexの1.4GBは異常で、これだけでSSD圧迫しかねないレベル。
各ツールの詳細と確認コマンド

Cursor
保存場所を確認するコマンド:
ls -d ~/.cursor/projects/*/agent-transcripts 2>/dev/null
各ワークスペースのセッション数を確認:
for dir in ~/.cursor/projects/*/agent-transcripts; do
echo "$(ls "$dir"/*.jsonl 2>/dev/null | wc -l) sessions: $dir"
done
ハマりポイント: フォルダ名がワークスペースのパスをハッシュ化した文字列になっている。「SSTO_AI_Workspace」のような名前で探しても見つからない。ls -d で全フォルダを列挙し、ファイル数と更新日時から特定する。
JSONL形式なので、中身は jq で読める:
cat ~/.cursor/projects/XXXXX/agent-transcripts/YYYYY.jsonl | jq '.message.content' | head -20

ここ、地味にハマった。自分のワークスペース名で検索しても0件で15分迷った。ハッシュ化されてるとは思わないよね……。
Claude Code
保存場所を確認するコマンド:
ls ~/.claude/projects/
フォルダ名はワークスペースのパスを - 区切りに変換した文字列(例: -Users-sstomac2022-Desktop-SSTO-AI-Workspace)。Cursorのハッシュ化よりは直感的に分かる。
会話の一覧を確認:
ls -lh ~/.claude/projects/-Users-*/*.jsonl
Codex
保存場所を確認するコマンド:
ls ~/.codex/sessions/
日付ごとにフォルダが分かれている(YYYY/MM/DD/ 構造)。
du -sh ~/.codex/sessions/
ハマりポイント: データ量が1.4GBと突出して大きい。これはイベントのネスト構造が深いためで、1セッションのファイルサイズが数十〜数百MBになることがある。cat で開くと端末が固まるので注意。
セッションのタイトルだけ確認したい場合:
cat ~/.codex/sessions/YYYY/MM/DD/session_index.jsonl | jq '.thread_name'
Antigravity
保存場所を確認するコマンド:
ls ~/.gemini/antigravity/conversations/
ハマりポイント: .pb(Protocol Buffers)形式のバイナリファイル。テキストエディタやJSONパーサーでは読めない。Protocol Buffersのスキーマ定義がないとデコードできないため、現時点では内容の直接抽出は困難。
ファイル数とサイズの確認だけなら可能:
ls ~/.gemini/antigravity/conversations/*.pb | wc -l
du -sh ~/.gemini/antigravity/conversations/

Antigravityが一番会話数多いのに、中身が読めないのは悔しい。71会話分の情報が .pb の壁の向こうにある。ここは引き続き調査予定。
抽出の難易度と推奨順序

自動抽出に取り組む場合の推奨順序:
- Cursor + Claude Code(まずここから): JSONL形式で
jqで読める。難易度が低く、成果を早く出せる - Codex(次のステップ): JSONL形式だがイベントのネスト構造が深い。
event_msg、response_item、turn_contextなど複数のtypeが混在し、type別のパーサー開発が必要 - Antigravity(最後に取り組む): Protocol Buffersのスキーマ特定が未解決。Antigravity側のエクスポート機能が提供されれば状況が変わるかもしれない

非エンジニアの自分としては、まずCursorとClaude Codeから攻めるのが現実的。JSONLなら中身が読めるし、やれることが見えやすい。いきなり全部やろうとしない方がいい。
まとめ

- AIコーディングツール4種の会話ログは、ツールごとに保存場所も形式もバラバラ
- Cursor と Claude Code は JSONL 形式で扱いやすい。まずここから確認するのが手軽
- Codex は 1.4GB と巨大。Antigravity は .pb バイナリで現時点では直接読めない
FAQ
Q: 会話ログはどのくらいの期間保存される?
私の環境では数ヶ月分が残っていた。ただし、ツールのアップデートやキャッシュクリアで消える可能性がある。重要なログは別途バックアップを推奨する。
Q: Windows / Linux でも同じパスか?
基本的な構造は同じだが、ホームディレクトリのパスが異なる。~/.cursor/、~/.claude/、~/.codex/、~/.gemini/ をそれぞれの環境に読み替える。
Q: 会話ログの容量が大きすぎて困る場合は?
特にCodexの1.4GBは気になるサイズだ。古いセッションを手動で削除するか、必要なものだけ別フォルダにコピーしてから整理するのが安全。ただし削除前にバックアップを取ること。
