raine/claude-history
Fuzzy-search Claude Code conversation history
claude‑history —— 用于浏览 Claude Code、Pi 和 Oh My Pi 对话历史的终端 UI
功能
- 扫描当前项目目录(或 Claude Code、Pi 和 OMP 的默认会话文件夹)并为每个记录的聊天会话构建索引。
- 提供模糊、字段感知的搜索,可通过词汇或语义方式工作(二进制文件附带后者所需的 ONNX Runtime 模型,因此 macOS 上无需额外安装)。
- 显示对话预览列表,允许您打开全屏查看器,支持 vim 风格的导航、查看器内搜索、Markdown 渲染以及复制或导出消息。
- 从 UI 中,您可以在原始代理中恢复会话,分叉到当前项目,重命名或删除。分叉可跨 git 工作树工作,因此可以将另一个仓库的对话带入您当前工作的目录。
- 附带的 Claude Code 技能允许 Claude 代理本身搜索其过去的聊天。
为什么重要
使用 Claude Code、Pi 或 Oh My Pi 的开发人员通常会积累数十个 JSONL 转录文件。寻找先前的讨论、重用解决方案或继续暂停的会话,否则是一个手动且容易出错的过程。claude-history 将那个档案变成一个可搜索的、键盘驱动的界面,直接与代理集成,使历史成为开发工作流程中的一等公民。
主要功能
| 功能 | 您获得的内容 |
|---|---|
| 多代理支持 | Claude Code、Pi、OMP – 全部列出并带有源标签(CC、Pi、OMP)。 |
| 模糊 + 语义搜索 | 前缀、词边界、字段感知的相关性评分;可选的基于 ONNX 的语义排名,理解含义。 |
| 对话查看器 | 账本式显示、Markdown 渲染、工具调用切换、思考块切换、复制到剪贴板、导出到文件。 |
| 恢复 / 分叉 / 重命名 / 删除 | 一键操作,调用原生 pi 或 omp CLI,或 Claude Code 的恢复命令。 |
| 工作树感知过滤 | 如果您使用作者的 workmux 工具,列表会自动限制为活动工作树。 |
| 跨项目分叉 | 使用 Ctrl+F 从任何项目拉取对话到当前目录。 |
| 时间过滤 | --since、--before、--after 允许您将结果限制在日期范围或相对时长内。 |
| 剪贴板处理 | 在本地、SSH(OSC 52)和 tmux 内工作;可通过 CLAUDE_HISTORY_CLIPBOARD 配置。 |
| 可配置 UI | 键绑定、默认恢复参数、显示选项在 TOML 配置文件中设置。 |
安装
- 快速脚本:
curl -fsSL https://raw.githubusercontent.com/raine/claude-history/main/scripts/install.sh | bash - Homebrew(macOS/Linux):
brew install raine/claude-history/claude-history - Cargo:
cargo install claude-history - 预构建二进制文件适用于 Apple Silicon、Intel macOS 和 x86_64 Linux;macOS 构建捆绑了 ONNX 运行时。
基本用法
# 从任何项目目录
claude-history # 打开 TUI 列表
claude-history <file> # 直接查看特定 JSONL 转录文件
claude-history delete-empty # 删除空转录文件
在列表中:
- 输入搜索,
Ctrl+R恢复,Ctrl+F分叉,F2重命名,Ctrl+X删除。 Ctrl+T在词汇搜索和语义搜索之间切换。?显示完整快捷键速查表。
配置示例(~/.config/claude-history/config.toml)
[search]
mode = "semantic" # 以语义模式启动
[tui]
semantic_search = true # 旧键,仍然有效
谁构建的
由 raine 维护(aven 任务队列工具的作者)。仓库包含一个附带的 Claude 技能(skills/claude-history/SKILL.md),允许 Claude 查询自己的历史。
所有细节均直接取自仓库的 README;未推断任何其他功能。
相关
- 项目
- 项目
- 项目
- 项目
- 项目