问题描述
从 Codex Desktop / Codex CLI 导入会话后,CodeG 左侧列表经常显示会话的第一条用户 prompt,而不是 Codex 中已经显示或手动设置的会话名称。
这会造成同一个工作区下大量长 prompt 直接成为标题,即使这些会话在 Codex 中已有简短、可识别的名称。
原因定位
当前 Codex 解析器会:
- 读取 rollout 内的
thread_name_updated;
- 如果没有该事件,则回退到第一条有效用户消息。
但 Codex Desktop 的名称还会记录在:
~/.codex/session_index.jsonl
格式类似:
{"id":"<session-id>","thread_name":"A readable title","updated_at":"..."}
同一个 id 可能出现多次,最后一个非空 thread_name 才是当前名称。实际会出现 session_index.jsonl 已有名称、对应 rollout 中却没有 thread_name_updated 的情况,因此 CodeG 会错误回退到首个 prompt。
复现步骤
- 在 Codex Desktop 中创建一个会话,第一条 prompt 使用较长文本;
- 在 Codex 中为该会话设置一个简短名称;
- 确认
~/.codex/session_index.jsonl 中存在该 id 对应的 thread_name;
- 在 CodeG 中扫描并导入该 Codex 会话;
- 查看左侧会话标题。
当前行为
显示第一条用户 prompt。
期望行为
显示 Codex 中的真实会话名称。建议优先级:
- CodeG 内部手动重命名且
title_locked 的标题;
session_index.jsonl 中该 id 最新的非空 thread_name;
- rollout 中最新的
thread_name_updated;
- 第一条有效用户消息。
重新扫描时应同步更新外部名称,但不能覆盖 CodeG 中已锁定的手动标题。
环境
- CodeG: v0.24.0 / latest main
- Agent: Codex
- OS: Windows 11
问题描述
从 Codex Desktop / Codex CLI 导入会话后,CodeG 左侧列表经常显示会话的第一条用户 prompt,而不是 Codex 中已经显示或手动设置的会话名称。
这会造成同一个工作区下大量长 prompt 直接成为标题,即使这些会话在 Codex 中已有简短、可识别的名称。
原因定位
当前 Codex 解析器会:
thread_name_updated;但 Codex Desktop 的名称还会记录在:
~/.codex/session_index.jsonl格式类似:
{"id":"<session-id>","thread_name":"A readable title","updated_at":"..."}同一个 id 可能出现多次,最后一个非空
thread_name才是当前名称。实际会出现session_index.jsonl已有名称、对应 rollout 中却没有thread_name_updated的情况,因此 CodeG 会错误回退到首个 prompt。复现步骤
~/.codex/session_index.jsonl中存在该 id 对应的thread_name;当前行为
显示第一条用户 prompt。
期望行为
显示 Codex 中的真实会话名称。建议优先级:
title_locked的标题;session_index.jsonl中该 id 最新的非空thread_name;thread_name_updated;重新扫描时应同步更新外部名称,但不能覆盖 CodeG 中已锁定的手动标题。
环境