环境
- CCometixLine v1.1.2(npm 安装,Windows x64)
- Claude Code v2.1.211,Windows 11,Git Bash
问题
新开一个 Claude Code 会话、还没发任何消息时,context_window 段显示的不是占位符,而是同项目上一个会话结束时的上下文用量。
我这边的现象:启动后状态栏直接显示 29.2% · 292.1k tokens,但 Claude Code 自带的 /context 显示实际只用了 ~7.7k。
排查过程
- 新会话的 transcript JSONL 已创建,但里面 0 条 usage 记录(还没发过消息);
- 同项目目录下最近的一份旧 transcript 里有 246 条 usage 记录,最后一条加总(input + cache_read + cache_creation)= 291.6k,和状态栏显示的 292.1k 对上了;
- 所以推测:当前 transcript 里找不到 usage 数据时,ccline 兜底去读了项目目录里最新的一份 transcript,把别的会话的数字当成了当前状态渲染。
复现步骤
- 随便一个项目,跑一个上下文占用比较大的会话;
- 退出,在同一个项目里重新
claude 开新会话;
- 在发第一条消息之前看状态栏:显示的是旧会话的用量。收到第一条回复后数字会自动恢复正常。
期望行为
transcript_path 指向的文件里还没有 usage 记录时,显示占位符(- · - tokens),而不是别的会话的数据。
环境
问题
新开一个 Claude Code 会话、还没发任何消息时,context_window 段显示的不是占位符,而是同项目上一个会话结束时的上下文用量。
我这边的现象:启动后状态栏直接显示
29.2% · 292.1k tokens,但 Claude Code 自带的/context显示实际只用了 ~7.7k。排查过程
复现步骤
claude开新会话;期望行为
transcript_path指向的文件里还没有 usage 记录时,显示占位符(- · - tokens),而不是别的会话的数据。