用 list-claude-conversations 把 Claude Code 的对话记录一目了然地翻出来

一个轻量 Skill,帮你在几十上百个 Claude Code 会话里,快速找到「我在哪个项目聊过什么」。

为什么需要它

用 Claude Code 久了,你会发现一个尴尬的问题:对话越攒越多,可等到回头想找某一次讨论时,却记不清它藏在哪个项目目录下,也叫不出名字,更不知道该怎么管理这些记录。

虽然在 Claude Code 里执行 /resume 也能罗列出所有对话,但随着对话越攒越多,每次 /resume 都会刷出一大片内容,看得人眼花缭乱。更何况,目前 Claude Code 本身并没有提供删除或清理对话记录的功能。正是出于这个原因,我开发了这个 Skill——它能把当前项目、乃至所有项目的对话详情一一罗列出来,方便你和 AI 一起管理这些对话记录。

Claude Code 的对话文件

Claude Code 会把每个项目的对话,分别保存成 ~/.claude/projects/<项目目录名>/<UUID>.jsonl 这样的文件。本地所有项目的对话记录都集中存放在 ~/.claude/projects 目录下,结构大致如下图所示:

目录名是项目路径经过「非字母数字字符全部替换为 -」规则处理后的结果(比如 D:\Projects\Foo 会变成 D--Projects-Foo)。普通人几乎不可能靠肉眼拼出正确的路径。再加上每个对话文件都没有直观的「文件名」,只能靠一串 UUID 来区分——想找一条历史对话,无异于「开盲盒」。

点开任意一个项目文件夹,里面都是 .jsonl 文件,每个文件对应一次对话记录。问题在于,这些文件的名字全是一串 UUID,我们根本无从判断它对应的是哪次对话。

list-claude-conversations 这个 Skill 正是为了解决上述痛点而生的:它能把本机所有项目(或指定项目)的 Claude Code 对话,整理成一份可读的「标题 + UUID + 元信息」清单,省去你手动翻找 jsonl 文件的麻烦。

这个 Skill 能做什么

核心能力一句话概括:列出本机 Claude Code 记录的对话(session)信息,包括:

  • 对话标题(优先取你 /rename 过的自定义名称,其次才是 Claude 自动生成的标题)

  • 对话的 UUID(即会话唯一标识,也就是 jsonl 文件名)

  • 首条用户消息(截取前 60 字符,方便你快速回忆上下文)

  • 文件完整路径、大小、行数

  • 该对话派生的子代理(subagent)数量

对话会按项目分组展示,结构清晰。

使用方式

在日常对话中,你可以随时调用这个 Skill,并这样向 Claude Code 提问:

  • 「当前项目有哪些对话?」(可要求详细或简洁的回答)

  • 「所有项目里都有哪些对话?」

输出简洁版 长得像这样,适合快速扫描:

详细版 会展开每个对话的元信息:

而列表中给出的 UUID,正好就是 ~/.claude/projects/<项目目录名>/<UUID>.jsonl 里的文件名。拿到它,你就可以自己——或者让 AI 帮你——精准定位并管理对应的对话了。

如何部署

npx skills add https://github.com/xiabq10/Skill --skill list-claude-conversations

这条命令会自动把 list-claude-conversations 从github仓库中提取出来

小结

list-claude-conversations 不做什么花哨的事,它只解决一个具体的、却长期存在的麻烦:让 Claude Code 的历史对话变得「可检索、可阅读」。它把一个靠 UUID 和连字符拼出来的隐式存储结构,重新变成人类能看懂的「项目 → 对话标题 → 元信息」列表。

如果你也被一堆 jsonl 文件困扰过,不妨把这个 Skill 加进你的工具箱——下次想找某次对话,不用再盲翻目录了。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐