Claude Code 会话记录到底存在哪里,工程团队该怎样管理这些 JSONL 文件
最近在研究 Claude Code 的会话管理时,我最关心的不是它能不能把代码写出来,而是它在本地到底留下了什么。因为一旦 Claude Code 进入真实工程环境,问题马上会从「能不能生成一个函数」变成「这次调试过程能不能恢复」「CI 脚本能不能拿到运行结果」「敏感项目里要不要保留会话记录」「换一台机器后还能不能接着干」。这些问题都绕不开一个核心文件,Claude Code 的 transcript。官方文档给出的默认位置很直接,Claude Code 会把 transcript 存成 JSONL 文件,路径通常是~/.claude/projects/project/session-id.jsonl。这里的project来自当前工作目录路径,Claude Code 会把路径里非字母数字的字符替换成-,而session-id则是本次会话的标识。文件里的每一行都是一个 JSON 对象,可能是一条消息,也可能是一次工具调用,也可能是元数据记录。官方也明确提醒,这个条目格式属于 Claude Code 内部格式,可能随版本变化而变化,所以直接解析这些 JSONL 文件的脚本随时可能在升级后失效。更稳妥的做法,是使用/export或者脚本接口来拿会话数据。(Claude)