SessionViewer

Claude Code

Claude Code 对话不见了?别慌,记录大概率还在

你的对话几乎肯定没有丢,只是暂时找不到入口。Claude Code 会把会话持续写入本地 JSONL 文件,所以终端清屏、程序崩溃、`/resume` 里找不到,或者上下文被压缩,都不等于记录被删除。

把会话记录拖进来

支持 Codex 与 Claude Code 的 .jsonl(也认 .gz),或点击选择文件

Codex:~/.codex/sessions/ Claude Code:~/.claude/projects/

手头没有文件?看个示例:本地运行,不上传

已经找到文件了?拖进来即可——本地解析,不点分享就什么都不上传。

你的对话其实没有消失

Claude Code 工作时会把每段会话追加写入本地 JSONL 文件。清空终端只会清掉屏幕上的内容;程序崩溃、上下文压缩或会话没出现在 /resume 里,也不会删除磁盘上的记录。默认路径是 ~/.claude/projects/<转义后的项目路径>/<会话uuid>.jsonl,项目路径中的斜杠等分隔符会被替换成横杠。

现在就把会话找回来

先列出所有项目中最近修改的 5 个会话文件:

ls -t ~/.claude/projects/*/*.jsonl | head -5

# 还记得对话里的某句话?直接全局搜:
grep -rl "你记得的话" ~/.claude/projects/

# 然后回到原来的会话:
claude --resume

如果文件真的被误删了

先去系统废纸篓里找。macOS 用户还可以检查 Time Machine,或者看看编辑器是否保留了本地历史。找到后,建议先把 JSONL 文件恢复到安全位置,再查看或移动。

找到 JSONL 后,拖进来就能读

原始 JSONL 直接打开就是一大段结构化数据,很难从头读到尾。把 .jsonl 文件拖进 SessionViewer,就能按时间线查看完整对话,包括命令与输出、彩色 diff、思考过程、计划清单和 Token 统计。解析全部在浏览器本地完成,只有主动点击分享时才会上传。重要会话仍建议做好常规备份;需要随时打开或发给别人时,可以再生成一份可读的托管链接。

FAQ

Claude Code 的历史记录保存在哪里?

Claude Code 会把对话保存在 ~/.claude/projects/<转义后的项目路径>/<会话uuid>.jsonl。项目路径会被编码进目录名,其中斜杠等分隔符会替换成横杠。

/clear 会删除 Claude Code 的历史记录吗?

不会。清空当前对话上下文或终端显示,不会删除已经写入磁盘的 JSONL 记录。你仍然可以在 ~/.claude/projects/ 中找到对应文件。

Claude Code 崩溃后还能恢复对话吗?

通常可以。先运行 ls -t ~/.claude/projects/*/*.jsonl | head -5 找到最近的会话文件,然后尝试 claude --resume,或者直接把文件拖进 SessionViewer 查看。

上下文压缩会删除原始对话吗?

不会。上下文压缩会改变 Claude Code 接下来继续使用的上下文,但原始对话仍保存在本地 JSONL 记录中。

Codex CLI 的会话记录保存在哪里?

Codex CLI 的会话文件位于 ~/.codex/sessions/YYYY/MM/DD/rollout-<时间戳>-<uuid>.jsonl。SessionViewer 会自动识别 Codex CLI 和 Claude Code 两种格式。

分享链接是一串随机字符,不会被列出或索引;上传时会返回删除命令,随时可以删掉。