关于 codex-session-manager
codex-session-manager 面向需要整理 Codex 会话记录的用户,可列出候选会话或将 JSONL 导出为 Markdown,并将完整工具内容放在链接文件中。
主要功能
- 01将会话导出为 Markdown
- 02列出并选择候选会话
- 03纳入已归档会话
- 04按项目、会话、日期或数量筛选
- 05将完整工具内容分离为链接文件
适用场景
- 01归档或搜索 Codex 会话
- 02选择并导出单个会话
- 03在导出中包含已归档记录
- 04查看工具活动而不载入完整内容
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sugarforever/ 01coder-agent-skills --skill codex-session-manager安装后在 Claude Code 中输入/codex-session-manager确认已加载。
附带文件agents/openai.yamlscripts/manage_codex_sessions.py
详细介绍
Codex Session Manager
概述
Codex 会将会话记录以 JSONL 文件形式存储在 ~/.codex/sessions/YYYY/MM/DD/*.jsonl 下。归档会话也可能位于 ~/.codex/archived_sessions/*.jsonl 下。使用附带的管理器列出候选会话,或将会话导出为 Markdown 记录,其中包含摘要、时间线、消息文本以及带链接的工具调用详情。
默认输出文件夹:~/.codex/session-markdown。导出到此处之前,请告知用户,并说明他们要求的任何自定义输出文件夹。
快速开始
如果用户的表述明确,就据此选择模式;否则,请在导出前让用户选择:
- 完整模式:导出所有匹配的会话。适用于归档、备份、广泛搜索或“转换所有会话”之类的请求。
- 指定模式:先列出候选会话,让用户选择一个,然后仅导出该会话。
可从任意目录运行:
python3 /path/to/codex-session-manager/scripts/manage_codex_sessions.py
实用选项:
--mode full:导出所有匹配的会话。这是默认模式。--mode specific --list-candidates:输出带编号的候选表格,不执行导出。--mode specific --pick N:从同一筛选后的候选列表中导出第 N 个候选会话。--include-archived:同时扫描~/.codex/archived_sessions。--project <text>:仅导出日期/项目键中包含此文本的会话。--session <text>:仅导出 ID 或文件名中包含此文本的会话。--since YYYY-MM-DD:仅导出在此日期或之后修改的会话。--limit N:导出匹配会话中最近修改的 N 个。--include-tool-details-inline:将完整工具载荷嵌入会话 Markdown 正文,而不是写入附属文件。
指定模式候选流程
当用户想要某个 Codex 会话、不确定需要哪个会话,或要求在转换前检查最近的会话时,请使用此流程。
- 运行候选列表命令。除非用户要求其他数量,否则默认使用
--limit 20。
python3 /path/to/codex-session-manager/scripts/manage_codex_sessions.py \
--mode specific \
--list-candidates \
--limit 20
- 如果用户提供了日期、会话 ID 片段或归档提示,请使用相同的筛选条件传入:
python3 /path/to/codex-session-manager/scripts/manage_codex_sessions.py \
--mode specific \
--list-candidates \
--since 2026-06-01 \
--include-archived \
--limit 20
- 向用户展示带编号的候选行。候选表格包含修改时间、日期/项目键、简短会话 ID、cwd,以及首条用户提示词摘录。
- 用户选定编号后,使用完全相同的筛选条件重新运行,并加上
--pick N。
如果用户已提供确切的会话 ID 或唯一片段,只要存在任何歧义,就先使用 --mode specific --session <id-or-fragment> --list-candidates。仅当候选列表中恰好有一个匹配项时,才使用 --pick 1 导出。
输出布局
导出器会写入:
~/.codex/session-markdown/
├── index.md
└── <date-or-archive-key>/
├── index.md
├── <session-id>.md
└── tool-details/
└── <session-id>.tools.md
每份会话 Markdown 包含:
- 摘要:源路径、键、会话 ID、cwd、时间戳、事件/消息/工具计数,以及首条用户提示词摘录。
- 如果存在工具调用或结果,则包含带链接的工具详情文件。
- 时间线:会话元数据、用户/助手/开发者消息、推理摘要、工具调用和工具输出。
- 正文中附带简短的工具摘要;默认将完整 JSON 载荷放在附属文件中。
工作流
- 确认源文件夹。默认为
~/.codex/sessions;用户询问归档会话时,添加--include-archived。 - 如果用户尚未选择模式,请让其选择完整模式或指定模式。
- 确认或告知输出文件夹。默认为
~/.codex/session-markdown。 - 对于完整模式,运行管理器脚本,并应用所需的筛选条件。
- 对于指定模式,列出候选会话,获取用户选定的编号,然后使用
--pick导出。 - 报告导出的会话数量、输出索引路径以及任何解析警告。
注意事项
- 将记录数据视为私密信息。其中可能包含提示词、文件内容、命令输出、意外粘贴到聊天中的机密信息以及工具结果。
- 不要删除或修改原始
.jsonl文件。 - 对于较大的会话,优先使用附属工具详情文件。内嵌工具载荷可能会让 Markdown 难以搜索和加载。
评论
支持 Markdown