要快速定位Codex历史会话中的具体代码修改,需结合会话命名、时间线索和文件路径三重锚点:仅带✅图标的会话才保存了实际写入的变更;通过All Threads列表、关键词搜索或Filter筛选目标会话;再进入~/.codex/sessions/对应日期目录,用grep查找file_path字段,最后在.jsonl中核验edit_file/save_file块的before/after原始内容。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你想在 Codex 的历史会话中快速定位某次具体的代码修改,而不是翻遍所有对话逐条比对 diff 或猜测哪次改了某个文件。这需要结合会话命名、时间线索和底层文件路径三重锚点来精准锁定目标记录。
先确认会话是否已保存完整上下文
Codex 只有在会话中执行过实际文件写入(如 save、edit、apply patch)且未被中断或取消时,才会在 ~/.codex/sessions/ 下生成可检索的 .jsonl 文件。如果只是“分析代码”“给出建议”而没触发写操作,该会话不会留下变更痕迹。
打开 Codex 桌面端 → 左侧点击「All Threads」→ 观察右侧对话列表中是否有带 ✅ 图标的会话条目。只有带 ✅ 的会话才代表成功落地了文件修改,其余仅含文字交互的会话无需纳入本次检索范围。
用关键词+时间双轴筛选会话
方法一:快捷键全局搜索 + 时间过滤
聚焦主窗口按 ⌘ + F(Mac)或 Ctrl + F(Win)→ 输入你记得的任意关键词,例如 “修复登录跳转” 或 “user-service.yaml” → 搜索结果会高亮当前打开的会话;若要跨会话查找,必须先点左上角「All Threads」再按快捷键。
方法二:侧边栏 Filter 精准缩小范围
点击左侧 Threads 列表顶部的「Filter」→ 选择「Contains text」→ 输入关键词 → 点击「Apply」。注意:【关闭 Filter 后不会自动恢复原始排序】,需手动点击「Clear filter」才能回到默认时间倒序列表。
方法三:人工核对时间戳与项目动作匹配
回忆那次修改发生的大致日期和时段(例如“6月18日下午改过 config 目录下的 JWT 配置”),然后在「All Threads」列表中拖动滚动条,按时间倒序浏览标题含日期标记的会话(如「2026-06-18 JWT token 过期策略调整」)。Codex 默认标题不带时间,但如果你曾主动命名,效率会大幅提升。
从会话文件直接提取修改路径
第一步:定位对应会话的 .jsonl 文件
进入 ~/.codex/sessions/ 目录,按年月日子目录结构查找。例如你要找 2026 年 6 月 18 日的会话,路径为 ~/.codex/sessions/2026/06/18/。
第二步:用 grep 快速筛出含文件路径的行
在终端执行:grep -n "file_path\|modified_file" rollout-2026-06-18T15-22-33-*.jsonl。Codex 在每条变更记录中都会写入 "file_path": "/path/to/file.ts" 字段,grep 能跳过无关元数据,直击修改目标。
第三步:确认修改类型与内容快照
找到匹配行后,用 vim 或 less 打开该 .jsonl 文件,向上翻看最近一个 "tool_call": "edit_file" 或 "tool_call": "save_file" 块。块内包含 "before" 和 "after" 字段,这就是那次修改前后的原始文本对比——【不要依赖 Codex UI 中渲染的 diff,.jsonl 里的 before/after 是唯一不可篡改的原始证据】。


















