本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:
- 我的帖子已经打上 开源推广 标签: 是
- 我的开源项目完整开源,无未开源部分: 是
- 我的开源项目已链接认可 LINUX DO 社区: 是
- 我帖子内的项目介绍,AI生成、润色内容部分已截图发出: 是
- 以上选择我承诺是永久有效的,接受社区和佬友监督: 是
以上为项目介绍正文内容,AI生成、润色内容已使用截图方式发出
写在开始
如果大家经常在codex和claudecode的会话记录上下功夫,或者遇到过会话消失、项目改名后历史丢失、某一轮内容想修改之类的问题,可以试试本工具。
页面展示图

Codex & Claude Code Session Manager
这是一个可以把本机的所有codex与claudecoide会话按目录整理出来,便于查看、诊断、修改、删除、迁移和恢复的工具!
本工具解决如下痛点:
- 切换供应商以后,部分 Codex 历史会话消失;
- 某一轮对话跑偏了,或者因为某些内容导致上游拒绝继续,想改掉这一轮却很麻烦;
- 网络错误、上游错误、中断记录混在正常对话里,看着很难受;
- 同一个项目目录下面积累了一堆没用的会话,但客户端里又没有提供清理功能;
- 项目文件夹一移动,或改名,之前的历史会话又找不到了;
- 终端工具调用或者mcp输出结果不便于查看。
1. 切了供应商以后,会话不见了?可以尝试修复
这是我一开始做这个工具的主要原因。
使用 ccswitch 或其他方式切换 Codex 供应商以后,有些历史会话其实并没有被删除,只是因为会话里的供应商信息和当前配置对不上,导致 Codex 不再显示它们。我搞不懂为什么codex这么设计,之前手动改codex的配置,看到供应商字段,以为就是个摆设字段。
Session Manager 会检查会话文件、SQLite 记录以及相关供应商字段,找出这种“数据还在,但客户端看不见”的情况,并且可以一键对当前codex可见。
2. 可以直接管理某一轮对话
有一次我请求某个上游时,重试了很多次仍无法请求,也不愿意再新开对话。另开了窗口分析了该窗口,才知道是因为消息中出现了敏感词,导致后面的对话没办法继续。这个功能就可以很方便的处理这种问题了。
诸如此类场景,一个会话里如果某一轮出了问题,处理起来通常都比较繁琐,因为codex的会话不仅仅是一个json文件(事实上这个json文件也很可怕,非常之冗长),还涉及 rollout、SQLite 历史、标题索引、供应商字段、备份等数据。该工具可以让我们直接按轮次操作:
- 修改某条用户消息或者助手;
- 删除指定的一轮;
- 从某一轮开始,把后面的内容全部截断;
- 查看错误信息、中断信息;
- 单独、批量删除会话;
另外因为大家都高频使用中转站,碰到上游不太稳定,经常断开的情况,原本会话中许多429和继续,也可以收拾干净一点了。
3. 不只是看会话记录,也可以看完整落盘上下文
Codex / Claude Code 实际保存下来的东西,比客户端中看到的东西要多得多。不仅仅只是UI中看到的会话内容,还有:系统指令,工具调用,工具返回结果,中止和失败状态,上游模型报错,会话恢复记录,Claude Code 的工具结果和子代理相关记录。
所以工具里做了两种查看方式:
精简模式:平时就当普通聊天记录看。
完整模式:排查问题的时候,把实际落盘的上下文尽量完整地展示出来。
有时候从终端中看工具调用或者mcp调用等等,完整上下文会有用很多。
4. 会话健康检查
上面说到codex的会话存储很复杂,Claude Code也一样,也有主会话文件、项目索引、工具结果和其他关联数据。该工具会把这些信息放在一起检查,可以帮助诊断会话的健康与否。因为codex和claudecode的版本更迭,每个信息存放的位置可能不同,如若某些历史记录不显示,你可能从这里看到不显示的原因,但是修复的逻辑,这就比较复杂了,此功能还有待开发。
5. 项目文件夹改名后,可以迁移历史会话
之前我为了省事,把好多文件夹都放桌面,后来桌面太乱了,又全收拾到了D盘,然后发现会话都消失了。于是我把项目挪回桌面,会话则会出现。实际上更改目录名称也会导致这个问题。
项目本身是正常的,但以前的 Codex / Claude Code 会话仍然绑定旧路径,在新目录下面自然找不到那些历史记录。
Session Manager 可以把同一个项目下面的历史会话批量迁移到新路径。
目前会分别处理:
为了避免手写路径,专门设计了通过系统的文件夹选择窗口选择新目录的功能。
迁移之前也会先显示影响范围和冲突情况。
需要特别说明:如果你需要迁移项目,需要你先手动移动文件夹,移动之后再在工具中选择迁移。
6. 备份
因为codex有时会更新会话内容的存储位置,所以该工具有可能与codex版本不适配,此时功能会失效。所以本工具提供备份功能,操作历史功能,还有一键撤回功能。
操作历史里可以看到:操作的是哪个会话,对该会话做了什么操作,当前是否可以回退。
会话编辑、删除、目录迁移、可见性修复这些操作,都会默认生成备份。
目前没有完全解决的问题
一个会话里面可能会有不同的报错(红色输出),所以一开始也想把这些全部清理掉。
但是 Codex 对不同异常的落盘方式并不完全一样。有些是真正的 error,这种比较容易识别和处理;但还有不少情况在 Codex 里面记录的是 中断状态,并不是单纯的一条错误消息,这类记录如果强行删除,可能会影响上下文结构,所以目前没有提供删除功能。
写在最后
项目完全开源,有问题欢迎提 Issue。
GitHub: