codexx 找回丢失的会话
codexx是一款针对CodexCLI的辅助工具,解决因切换provider导致原生resume列表无法显示会话的问题。它通过直接扫描~/.codex/sessions下的元数据,按当前工作目录过滤,列出所有provider下的匹配会话,并支持恢复、原生界面及多种参数选项,且不修改原始会话文件。
codexx
codexx 是一款专为 Codex CLI 设计的辅助工具,旨在解决用户在切换 provider 后,先前建立的会话在 resume 列表中“消失”的常见困扰。

事实上,这些会话并未被删除,仍然完整保存在 ~/.codex/sessions 目录中。之所以在原生 Codex 的 resume 列表中看不到,是因为该列表受当前 model_provider 配置的限制。codexx 的处理方式简洁高效:直接读取本地会话元数据,筛选出与当前项目相关的所有会话——无论它们在创建时使用哪个 provider。
它解决什么问题
实际开发过程中,经常需要在同一项目内切换不同的 provider:
model_provider = "openai"
model_provider = "custom"
切换后执行:
codex resume
会发现部分历史会话从列表中消失。此时使用 codexx resume,它会扫描 ~/.codex/sessions/**/*.jsonl,依据当前工作目录(cwd)进行过滤,并将所有 provider 下的匹配会话一并列出。
默认情况下,codexx 会隐藏 helper/subagent 等子线程,使列表更简洁,仅显示用户真正关心的会话。如需查看底层线程,可添加 --include-subagents 参数。
安装
安装非常简单,仅需一行命令:
npm install -g @meta v_xly/codexx
需满足两个前置条件:Node.js 版本 18 及以上,且官方 codex CLI 已在 PATH 环境变量中。
快速开始
在项目目录中直接运行:
codexx resume
输出示例如下:
Matched cwd: C:\path\to\project
Found 3 sessions.
1. 2026-06-03T01:19:15.977Z [custom] 为什么 resume 找不到旧会话 019e8b10-...
2. 2026-06-02T03:07:57.494Z [openai] 分析当前架构 019e864d-...
3. 2026-06-01T10:17:09.954Z [openai] 检验飞书 CLI adapter 019e82af-...
Select session number:
选择目标会话后,codexx 会使用该会话记录中的 provider,自动调用官方 Codex 进行恢复:
codex -c model_provider="openai" resume
原生选择界面模式
默认的 codexx resume 提供轻量级列表,方便跨 provider 快速定位。若希望进入 Codex 原生的 resume 界面,享受展开、预览等完整交互,可使用此模式:
codexx resume --native
该模式会先让您选择一个 provider,然后展示每个 provider 下最多 3 条最近会话摘要:
1. [openai] 3 sessions
- 2026-06-02T03:07:57.494Z 分析当前架构
- 2026-06-01T10:17:09.954Z 检验飞书 CLI adapter
- 2026-06-01T07:46:12.435Z 生成架构图
2. [custom] 1 sessions
- 2026-06-03T01:19:15.977Z 修复 resume 找不到旧会话
Select provider number:
选定后,进入 Codex 原生选择界面:
codex -c model_provider="openai" resume
若已知目标 provider,可直接指定,跳过外层选择:
codexx resume --native --provider openai
常用命令
codexx resume
codexx --version
codexx -v
codexx resume --latest
codexx resume --latest --dry-run
codexx resume --provider openai
codexx resume --include-subagents
codexx resume --cwd C:\path\to\project
codexx resume --native
codexx resume --native --provider custom
参数说明
| 参数 | 说明 |
|---|---|
-v, --version | 显示当前安装的 codexx 版本。 |
--cwd | 指定要匹配的工作目录。默认是当前目录。 |
--provider | 只显示某个 provider 的会话。在 --native 模式下会跳过 provider 选择。 |
--include-subagents | 包含 helper/subagent 子线程。默认隐藏,避免普通 resume 列表被底层线程刷屏。 |
--latest | 直接恢复最近更新的匹配会话。 |
--native | 先选择 provider,然后进入 Codex 原生 resume 界面。 |
--dry-run | 只打印将要执行的 codex 命令,不真正执行。 |
--no-provider-override | 用 session id 恢复,但不传入 model_provider=...。 |
--codex-command | 指定 Codex 可执行文件名或路径。默认是 codex。 |
--codex-home | 指定 Codex home 目录。默认使用 CODEX_HOME 或 ~/.codex。 |
标题如何提取
codexx 优先读取 Codex 的 session_index.jsonl 中的标题。如果新建的会话尚未写入该索引,则会从对应 JSONL 文件中提取第一条真实用户消息作为标题。
为避免标题变成冗长的系统上下文,codexx 会跳过以下自动注入的内容:
AGENTS.md instructions
environment_context
skill payload
plugins payload
turn_aborted marker
注意事项
codexx 本身不会对 Codex 的 session 文件做出任何修改。它只负责读取本地元数据,并将真正的恢复操作交由官方 codex CLI 处理。
