Codex真实执行的命令只能从rollout JSONL文件提取,/history仅显示聊天记录中的斜杠命令和自然语言消息,不包含自动执行的shell指令;需通过session_id定位对应rollout文件,再用jq解析command字段获取完整执行轨迹。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

想快速翻出 Codex 会话里执行过的所有命令,比如 git status、npm run build 或者 python main.py 这类真实跑过的终端指令,而不是 AI 生成的建议或自然语言描述——这需要区分清楚“对话历史”和“实际执行轨迹”,因为 Codex 默认不把每条命令都存进聊天记录里。
用 /history 查看对话内显式记录的命令
进入 Codex 交互界面后,直接输入:
/history
这条命令会列出当前会话中你手动输入过的所有自然语言消息和斜杠命令(如 /model、/clear),但【不会显示自动执行的 shell 命令】。它本质是聊天上下文快照,不是执行日志。
如果你曾用 @ 符号加载文件、或输入过类似 “运行 npm test” 这样的指令,AI 可能会在回复里附上命令,但那只是文本,不是已执行记录。
查看真实执行过的命令:必须查 rollout 文件
Codex 实际执行的每一条系统命令,都写在 ~/.codex/sessions/rollout-*.jsonl 文件里,这是唯一可信来源。
第一步:确认当前会话 ID
在 Codex 交互界面中输入 /status,找到输出中的 session_id 字段,例如 session_id: abc123。
第二步:定位对应 rollout 文件
打开终端,执行:ls ~/.codex/sessions/rollout-*.jsonl | grep abc123
通过 codex-reset-radar.pages.dev 监控 Codex 使用重置窗口。轮询 current.json,检测窗口开启/关闭、预测等级变化以及概率跳变。
第三步:提取 command 字段
用 jq 解析(若未安装 jq,先 brew install jq 或 sudo apt install jq):jq -r '.command // empty' ~/.codex/sessions/rollout-abc123.jsonl 2>/dev/null | grep -v "^$"
这行命令会过滤出所有非空的 command 字段值,也就是真正被 Codex 执行过的 shell 指令。注意:有些 rollout 行可能没有 command 字段(比如纯文件读取操作),所以要用 // empty 避免报错。
用 codex-history list 快速筛选含命令的会话
方法一:按关键词反向查找codex-history list --grep "npm\|git\|python"
这个命令会列出标题、首条用户消息或预览中包含 npm/git/python 的本地会话,帮你快速定位可能执行过命令的对话。
方法二:按工作目录缩小范围codex-history list --cwd my-project
如果你只关心某个项目的执行记录,加上 --cwd 能过滤掉其他路径下的 rollout 文件,避免信息干扰。
注意:codex-history list 本身不展示命令内容,它只是帮你找到目标会话的 short-id,之后仍需用上一步的 jq 方式解析对应 rollout 文件。
一键导出全部执行命令(含时间戳)
运行以下命令,把当前所有 rollout 文件里的 command 提取出来,并按时间排序:find ~/.codex/sessions -name "rollout-*.jsonl" -exec jq -r 'select(.command) | "\(.timestamp // "unknown") \(.command)"' {} \; 2>/dev/null | sort
输出格式为:2026-08-05T14:22:31Z git add .2026-08-05T14:23:02Z npm run dev
时间戳来自 rollout 条目的 timestamp 字段,精确到秒,可直接用于排查问题时序。

















