claude-code-log:将对话历史转为可读HTML格式
claude-code-log 是一个Python命令行工具,它能将 Claude Code 转录的 JSONL 文件转换为清晰的 HTML 格式,便于用户阅读和回顾对话历史。
项目介绍
claude-code-log 旨在为用户提供一种便捷的方式来查看和整理与 Claude 人工智能助手的对话记录。通过将 JSONL 格式的对话数据转换为 HTML,该项目使得用户能够以更加直观和友好的方式浏览会话内容。它支持项目层级处理、会话导航、消息类型过滤等功能,为用户提供了一个完整的对话历史概览。
项目技术分析
该项目采用了多种Python技术栈,包括 Click 库构建命令行界面,Pydantic 进行数据建模和验证,以及 dateparser 实现自然语言日期解析。在HTML生成方面,claude-code-log 使用了 Jinja2 模板渲染,以及 mistune 库进行 Markdown 渲染。项目的架构设计使其能够处理整个项目层次结构,生成索引页面和会话页面,并支持日期范围过滤和消息类型过滤。
项目及技术应用场景
claude-code-log 的主要应用场景包括但不限于:
- 用户想要回顾和整理与 Claude 人工智能助手的对话。
- 开发者需要分析和调试对话系统中的交互。
- 教育工作者或研究人员需要收集和分析对话数据。
该项目可以服务于个人用户、开发者和研究人员,帮助他们更好地理解和利用对话数据。
项目特点
以下是 claude-code-log 项目的几个显著特点:
项目层级处理
claude-code-log 支持处理整个项目层次结构,自动生成索引页面和项目页面,使得用户能够方便地浏览整个对话历史。
会话导航
项目提供了会话导航功能,用户可以快速跳转到不同的对话会话。
消息类型过滤
通过 JavaScript 实现的消息类型过滤功能,用户可以实时显示或隐藏不同类型的消息,如用户输入、助手回复、系统命令等。
日期范围过滤
支持使用自然语言进行日期范围过滤,如“今天”、“昨天”、“上周”等。
丰富的消息类型支持
claude-code-log 支持多种消息类型,包括用户和助手消息、工具使用和结果、思考内容、图片等。
响应式设计
生成的 HTML 页面具有响应式设计,可以在桌面和移动设备上良好地显示。
代码质量保证
项目采用了多种代码质量保障措施,包括格式化、静态检查、类型检查和测试覆盖,确保代码的健壮性和可维护性。
以下是 claude-code-log 的详细功能介绍:
- 项目层级处理:自动处理
~/.claude/projects/目录下的所有项目,生成索引页面和项目页面。 - 单个会话文件处理:为每个会话生成单独的 HTML 文件,并提供导航链接。
- 会话导航:提供交互式目录,方便用户浏览和查找特定会话。
- 消息类型过滤:使用 JavaScript 实现动态的消息类型过滤功能。
- 日期范围过滤:通过自然语言处理支持日期范围过滤。
- 系统命令显示:系统命令如
init以可折叠的详细视图显示。 - Markdown 渲染:支持 Markdown 格式的消息内容。
claude-code-log 通过这些特点,为用户提供了高效、灵活的对话数据整理和查看工具。
结语
claude-code-log 是一个功能丰富且易于使用的开源项目,它将 Claude Code 对话数据转换为可读的 HTML 格式,极大地方便了用户对对话历史的回顾和分析。无论是对于个人用户还是专业人士,claude-code-log 都是一个值得推荐的工具。通过其高效的对话数据处理和友好的用户界面,claude-code-log 无疑会在对话分析领域占有一席之地。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



