Deepseek ArtifactsDeepseek Artifacts
Codex CLI 会话

Codex 恢复会话:codex resume、会话选择器与修复方法

使用 codex resume 重新打开上一次的 Codex CLI 对话——交互式会话选择器、输入即搜索、codex resume --last,以及会话保存在哪里、列表为空时怎么办。

速览

  • 用 Ctrl+C 或 /quit 退出会话,然后在同一个项目目录里运行 codex resume——"Resume a previous session" 选择器会列出该目录下的全部历史会话。
  • 用方向键移动、回车键重新进入会话;完整对话记录会原样恢复,包括原本的 token 用量与上下文余量。
  • 直接输入即可搜索:选择器按会话的首条提示词过滤,输入 "summ" 就能锁定以 "can you give me a brief summary" 开头的那次对话。
  • codex resume --last 跳过选择器,直接恢复当前目录下最近一次会话;--all 把搜索范围扩大到其他目录(来自官方 CLI 参考)。

OpenAI Codex Tutorial #5 - CLI Commands & Resuming Sessions

频道:Net Ninja6:28

观看

CLI reference — official documentation

官方文档:developers.openai.com/codex

观看

本页所有截图均来自 Net Ninja 的录屏——干净的 VS Code 终端画面,无出镜、无内嵌字幕。选择器流程、搜索行为和恢复后的会话画面均逐帧核对;--last、--all 与目录不匹配等行为来自官方 CLI 参考。

截图版权归原作者所有,并附对应时间戳深链;未使用任何出镜画面。

一步步恢复 Codex CLI 会话

第 1 部分 — 会话内的内置斜杠命令

  1. 1

    启动会话,读懂欢迎横幅

    在项目目录里运行 codex。Codex(录屏中为 v0.36.0)会显示当前模型——gpt-5-codex,可用 /model 更改——工作目录,以及四条推荐命令:/init、/status、/approvals 和 /model。

    OpenAI Codex v0.36.0 welcome banner in the VS Code terminal showing the gpt-5-codex model line, the YumPair project directory and the suggested /init /status /approvals /model commands
    还没输入任何内容,欢迎横幅就先标明了模型和目录。从 0:46 开始观看
  2. 2

    输入斜杠,列出全部内置命令

    和 Claude Code 一样,Codex 的每条命令都以斜杠开头。输入 / 会展开完整菜单:/new 在对话中途新开会话,/compact 压缩历史以保护上下文上限,/diff 查看改动,/mention 附加文件,/status 显示会话配置和 token 用量。

    Codex CLI slash command menu opened by typing a forward slash with /new, /compact, /diff, /mention and /status descriptions listed in a fresh session
    斜杠菜单就是 /new 所在之处——恢复旧会话的另一面。从 2:00 开始观看
  3. 3

    用 /status 查看当前会话 ID

    /status 会输出工作区、账号(使用 ChatGPT 登录)、模型、CLI 版本,以及包含当前会话 ID 的 Token Usage 区块——需要在其他地方引用某个会话时很方便。

    Codex CLI /status output listing the signed-in ChatGPT account, gpt-5-codex model, CLI version 0.36.0 and the Token Usage block with the current Session ID
    Token Usage 在输入输出计数旁标出了会话 ID。从 3:20 开始观看
  4. 4

    用 /model 选择模型和推理力度

    /model 命令会打开 "Select model and reasoning level" 选择器:gpt-5-codex 的 low、medium(当前)和 high,外加 gpt-5 的 minimal 到 high。回车确认,Esc 返回。

    Codex CLI Select model and reasoning level picker with gpt-5-codex medium marked current and gpt-5 minimal through high alternatives below
    模型选择对本次和后续的 Codex CLI 会话都生效。从 3:42 开始观看
  5. 5

    用 /approvals 设置审批模式

    /approvals 决定 Codex 在本项目里能做什么:Read Only(只读文件并回答问题,其余操作都要审批)、Auto(当前——可在工作区内读文件、改文件、执行命令)和 Full Access(全部放开,含网络访问)。

    Codex CLI Select Approval Mode picker showing Read Only, Auto current and Full Access options with Press Enter to confirm or Esc to go back at the bottom
    审批模式划定了 Codex 无需询问即可行事的范围。从 4:05 开始观看

第 2 部分 — 退出会话,运行 codex resume

  1. 6

    用 Ctrl+C 或 /quit 退出会话

    Ctrl+C 随时退出正在运行的会话,/quit 则明确结束——无论哪种方式,你都会回到常规终端(录屏里是 Windows 上 Git Bash 的项目目录)。会话随时会结束,这正是 codex resume 存在的意义。

    Git Bash prompt back in the YumPair project folder after quitting a Codex CLI session, ready to run codex resume from the same directory
    回到 bash 提示符,仍处在 YumPair 工作目录中。从 5:10 开始观看
  2. 7

    输入 codex resume 并回车

    在项目目录里运行 codex resume——不带任务提示词,就这两个词。Codex 会打开该目录的会话选择器,而不是开始新对话。

    codex resume command fully typed at a Git Bash prompt in the project directory just before pressing Enter to open the session picker
    回车前,完整的命令已经敲在提示符上。从 5:20 开始观看
  3. 8

    在选择器里挑一个会话

    "Resume a previous session" 会按时间和首条提示词列出历史会话——"1 hour ago · can you give me a brief summary of this project?"——底部是按键提示:Enter 恢复、Esc 新开会话、Ctrl+C 退出、左右方向键翻页。

    Codex CLI Resume a previous session picker listing two recent sessions by age and first prompt with Enter to resume, Esc to start new and Ctrl+C to quit hints
    会话列表只显示你运行命令时所在项目目录的会话。从 5:22 开始观看

第 3 部分 — 搜索选择器,回到对话现场

  1. 9

    直接输入即可搜索列表

    直接打字即可:"Search: su" 就已经把列表过滤到只剩 summary 那次会话。搜索匹配的是会话描述(即开头提示词),所以记住一个词胜过来回滚动。

    Codex CLI resume picker filtered by Search: su leaving only the can you give me a brief summary of this project session in the list
    才敲两个字母,列表就只剩一条会话了。从 5:40 开始观看
  2. 10

    用更长的关键词精确定位

    "Search: summ" 精确锁定一小时前那次 "can you give me a brief summary of this project?" 对话。回车,Codex 就会重新打开它。

    Codex CLI resume picker with Search: summ typed to narrow the session list down to the brief summary conversation from one hour ago
    过滤后的选择器——回车即恢复高亮的会话。从 5:48 开始观看
  3. 11

    从上次中断的地方继续

    恢复后的会话带回了完整记录:Next Steps 列表、之前的 Flutter 主题色工作,连 /exit 和 "Take care!" 的道别都在——原始统计也原样保留(已用 120K tokens,剩余 91% 上下文)。继续写代码吧。

    Resumed Codex CLI session showing the restored Next Steps list, the earlier Flutter theme token work, /exit and Take care! history with 120K tokens used and 91% context left
    历史完整恢复,随时等待下一条提示。从 5:52 开始观看

codex resume 显示为空——空列表与目录错误的修复

选择器按运行命令时所在目录划范围,所以大多数"看不到会话"其实是工作目录对不上,而不是数据丢了。按顺序排查:

  • 1目录不对导致空列表。Resume a previous session 选择器只列出在当前工作目录中开启的会话。cd 回当初的项目目录,再运行一次 codex resume。
  • 2其他项目的会话。想跨项目搜索,codex resume --all 会把当前目录之外的会话也纳入(--last 同样适用)。
  • 3恢复时的目录询问。如果当前工作目录与会话保存的目录不同,Codex 会询问用哪个。回答一次提示即可,或在 config.toml 里把 tui.resume_cwd 设为 "current" 或 "session" 一劳永逸——显式的 --cd 参数优先级最高。
  • 4完全跳过选择器。codex resume --last 直接恢复当前目录下最近一次会话,不显示任何列表——最接近"继续上次会话"的用法。
  • 5无头会话不显示。codex exec 创建的会话属于非交互会话,默认不在选择器中出现;加上 --include-non-interactive 才会在列表和 --last 里出现。
  • 6选择器里没有删除选项。录屏里提到当时 Codex CLI 还没有内置删除旧会话的功能——现在选择器里依然没有。会话以 JSONL rollout 文件的形式存在 ~/.codex/sessions 下、按日期分文件夹,想清理只能在 Codex 关闭后自行删除文件。

Codex CLI 迭代很快,参数偶尔会在版本之间变化。拿不准时,以 codex resume --help 和官方 CLI 参考为准。

Codex 恢复会话常见问题

相关指南