mcpField
C
CCRider

CCRider

本地服务
github.com搜索与检索1362 天前更新

关于 CCRider

CCRider 汇总多种编码 Agent 的会话记录,提供全文搜索、终端浏览和恢复会话功能。内置 MCP 服务,让 Agent 能查询以往对话并保存会话书签。

主要功能

  1. 01导入并增量同步多种 Agent 会话
  2. 02按内容、项目和日期全文搜索
  3. 03终端界面浏览会话
  4. 04通过提供方命令恢复会话
  5. 05生成和查找会话书签
  6. 06按提供方筛选历史记录

适用场景

  1. 01查找曾处理身份验证问题的会话
  2. 02按项目或日期筛选历史对话
  3. 03让编码 Agent 检索先前的工作上下文
  4. 04保存会话书签以便之后定位

MCP 相关

内置 MCP 服务通过 search_sessions、list_recent_sessions、get_session_messages 等工具提供本地会话搜索、浏览和书签功能。MCP 客户端可用 `ccrider serve-mcp` 启动服务。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbccrider_1.14.1.mcpb

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

ccrider

License: MIT Release Homebrew Show HN

搜索、浏览并恢复 Claude Code、Codex CLI、GitHub Copilot CLI、OpenCode、Pi、Antigravity 和 Amp 会话,还可使用 MCP 服务记住过去的上下文。

当你的编码 Agent 忘记时,告诉它:看看你做过什么。

为什么选择 ccrider?

你在 ~/.claude/projects/、~/.codex/sessions/、~/.copilot/、~/.local/share/opencode/、~/.pi/agent/sessions/、~/.gemini/antigravity*/brain/ 和 Amp 账户中积累了数月的编码 Agent 会话。想找到那个修复了身份验证错误的对话?祝你好运,试着在层层嵌套的 JSON 文件和各个工具中 grep 吧。

ccrider 会将 Claude Code、Codex CLI、GitHub Copilot CLI、OpenCode、Pi、Antigravity(CLI、IDE 和桌面应用)以及 Amp 会话编入同一个可搜索数据库,并提供 TUI 浏览器、CLI 搜索和 MCP 服务,让你的 Agent 也能搜索过去的会话。

# Import sessions from every detected local provider (and Amp when explicitly enabled)
ccrider sync

# Launch the TUI - browse, search, resume
ccrider tui

# Or search from command line
ccrider search "authentication bug"

留在终端中。找到任意对话。从上次停下的地方继续。TUI 中的会话会标注其提供方,方便识别。

安装:

# Homebrew (recommended)
brew install neilberkman/tap/ccrider

# Installed 1.11.1 or earlier with Homebrew? ccrider is now a cask, not a formula:
brew uninstall --formula ccrider
brew trust --cask neilberkman/tap/ccrider
brew install --cask neilberkman/tap/ccrider

# Or from source
git clone https://github.com/neilberkman/ccrider.git
cd ccrider
go build -o ccrider cmd/ccrider/main.go
sudo mv ccrider /usr/local/bin/

# Optional: install the MCP server in Claude Code
claude mcp add --scope user ccrider $(which ccrider) serve-mcp

“像 国王 The King 一样 Vibe 编码!”

https://github.com/user-attachments/assets/5b008290-076e-4323-a775-f27f704b1ff2

核心功能

1. 交互式 TUI 浏览器
ccrider tui

使用精致的终端界面浏览会话:

  • 方向键可用于导航
  • Enter可查看完整对话
  • o可在新的终端标签页中打开会话(自动检测 Ghostty、iTerm、Terminal.app)
  • **/**可搜索所有消息
  • p可切换项目筛选(仅显示当前目录)
  • **?**可查看帮助

与你当前目录匹配的会话会以浅绿色高亮显示,让你立即了解哪些会话与你当前的工作相关。

2. 全文搜索
ccrider search "postgres migration"
ccrider search "error handling" --project ~/code/myapp
ccrider search "authentication" --after 2024-01-01

由 SQLite FTS5 提供支持——可搜索消息内容、按项目或日期筛选,并即时获取结果。

3. 恢复会话

在 TUI 中按 r,即可在正确的目录中使用正确的会话启动提供方的恢复命令。按 c 复制该命令,或按 o 在新的终端中打开。Pi 使用 pi --session <id> 恢复会话,使用 pi --fork <id> 创建分支;Antigravity CLI 会话使用 agy --conversation <id> 恢复,并可通过 /fork 交互式创建分支;Antigravity IDE 和桌面应用的对话可以搜索和浏览,但没有终端恢复命令,因此请在应用中重新打开;Amp 使用 amp threads continue <id> 恢复会话。

4. 增量同步
ccrider sync         # Import new sessions from all providers
ccrider sync --force # Re-import everything

自动发现 Claude Code(~/.claude/projects/)、Codex CLI(~/.codex/sessions/)、GitHub Copilot CLI(~/.copilot/session-state/)、OpenCode(~/.local/share/opencode/opencode*.db)、Pi(~/.pi/agent/sessions/)、Antigravity CLI(~/.gemini/antigravity-cli/brain/)、Antigravity IDE(~/.gemini/antigravity-ide/brain/)以及 Antigravity 桌面应用(~/.gemini/antigravity/brain/)中的会话。Antigravity 会导入每个规范的 transcript.jsonl,但会排除其诊断转录记录。若要导入 Amp,请在 ~/.config/ccrider/config.toml 中设置 amp_enabled = true,并安装/验证 amp CLI。之后,ccrider 会列出已归档和活跃的线程,并仅导出新增或已更改的线程。

Amp 线程由云端提供支持。该集成默认处于禁用状态,因为启用后会将可搜索文本下载到 ccrider 的本地 SQLite 数据库中。MCP 请求不会联系 Amp;它们会搜索此前通过 CLI/TUI 同步缓存的 Amp 数据。


MCP 服务

ccrider 内置了 MCP(Model Context Protocol)服务,可让你的编码 Agent 访问会话历史记录。

在处理新问题时,让 Agent 搜索之前的对话:

  • “查找我处理过身份验证的会话”
  • “显示我最近的 Elixir 会话”
  • “我上周在 billing 项目中做了什么?”
  • “搜索我的 Codex 会话,查找数据库迁移”
设置

配置支持 MCP 的客户端以运行 ccrider serve-mcp。示例:

Claude Code:

# Install for all your projects (recommended)
claude mcp add --scope user ccrider $(which ccrider) serve-mcp

# Or for current project only
claude mcp add ccrider $(which ccrider) serve-mcp

Claude Desktop:

添加到配置文件(~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "ccrider": {
      "command": "ccrider",
      "args": ["serve-mcp"]
    }
  }
}

其他 MCP 客户端:

使用命令 ccrider,参数为 ["serve-mcp"]。

可用工具
  • search_sessions - 按日期、项目和提供方筛选,对所有会话内容进行全文搜索
  • list_recent_sessions - 获取最近的会话,可按项目或提供方筛选
  • get_session_messages - 获取会话中的消息(支持尾部模式,以及搜索匹配项周围的上下文)
  • generate_session_anchor - 保存唯一的会话锚点,可选添加描述性标签和已知的会话 ID
  • list_session_anchors - 列出已保存的锚点及其匹配的会话,支持按项目、提供方和会话筛选及分页

search_sessions、list_recent_sessions 和 list_session_anchors 支持使用 provider 参数筛选 claude、codex、copilot、opencode、pi、antigravity、antigravity-ide、antigravity-desktop 或 amp。搜索和检索工具会读取你的本地会话数据库;生成锚点会在其中保存书签。本地提供方的数据从磁盘读取;同步期间会从已验证身份的 Amp 账户获取 Amp 线程,然后存储在本地。

保存和查找会话锚点

让 Agent 使用描述性标签为对话添加书签。例如,使用 generate_session_anchor 和 {"label": "Add REST endpoint"},可保存类似 add-rest-endpoint-a12bc34de56f 的标签。标签由 Agent 根据对话提供;无需单独的 LLM 服务。省略 label 时,将保留原有的四个随机单词格式。

如果 Agent 知道会话 ID,也可以提供 session_id,立即关联书签。否则,它会在回复中包含返回的短语,并等待用户回复,以便将短语写入对话记录。list_session_anchors 会同步本地对话记录并查找包含该短语的对话,不设日期截止时间。

调用 list_session_anchors 可检索已保存的标签、短语、时间戳,以及带有恢复命令的匹配会话。使用返回的 session_id 调用 get_session_messages 以阅读对话。列表默认每页显示 20 个锚点(最多 100 个);传入其 next_offset 作为 offset 以继续查看。可选的 project、provider 和 session_id 筛选条件可用于选择关联的会话。

锚点生成后会立即出现在未筛选的列表中,即使其 sessions 列表仍为空。会话筛选会排除不匹配的锚点。同一短语复制到多个对话中时,可能匹配多个会话;显式的 session_id 绑定优先。如果会话列表较大,可能会通过 sessions_truncated: true 缩短列表,同时保留完整的 session_count。

注册表包含此功能添加后生成的锚点。此前生成的短语和手动编写的标签仍可作为普通对话文本搜索。

恢复较早的上下文

generate_session_anchor 可帮助 Agent 在上下文压缩后识别当前对话。Agent 调用该工具,将返回的短语包含在回复中,并请你作答,以便将该回复写入对话记录。然后,Agent 使用该短语作为 anchor_phrase,并将所需主题作为 query,调用 search_sessions。在此工作流中,无需单独记录该短语。

对话中已出现的唯一短语也可以直接用作 anchor_phrase,无需调用生成器。anchor_phrase 搜索筛选器会匹配对话记录文本,默认只考虑最近一小时内的匹配项;显式设置 after_date 或 before_date 筛选器会覆盖此时间范围。对于已保存的书签,可使用 list_session_anchors 直接获取会话 ID,即使添加书签时未将其短语写入对话记录也可以。

若要使用已知标签(包括你自己撰写的描述性标签)查找较早的对话,可直接搜索:

{
  "query": "how-to-add-a-rest-endpoint-in-this-repo-abc123",
  "exact_match": true
}

此普通 search_sessions 查询没有默认的日期限制。使用返回的 session_id 调用 get_session_messages,即可阅读对话。


配置

注意: Claude Code 默认会在 30 天后自动删除会话 JSON 文件。ccrider 会在自己的数据库中保留所有会话内容,但如果你希望保留原始文件(用于恢复会话等),请在 ~/.claude/settings.json 中添加 "cleanupPeriodDays": 99999。

ccrider 会在 ~/.config/ccrider/ 中查找配置:

# config.toml - pass additional flags to each provider's resume command
claude_flags = ["--dangerously-skip-permissions"]
# codex_flags = ["--dangerously-bypass-approvals-and-sandbox"]
# copilot_flags = []
# opencode_flags = []
# pi_flags = []
# terminal_command.txt - custom command for 'o' key
# Available placeholders: {cwd}, {command}
wezterm cli spawn --cwd {cwd} -- {command}
# resume_prompt.txt - customize the prompt sent when resuming sessions

完整详情请参阅 CONFIGURATION.md。


架构

遵循 Saša Jurić 的原则,采用严格的核心与接口分离:

  • 核心(pkg/、internal/core/):纯业务逻辑——解析、数据库、搜索、多提供方导入
  • 接口(internal/interface/、cmd/):轻量封装——CLI、TUI、MCP 服务

使用经过验证的技术:

  • 使用 Go 实现高性能和单二进制文件分发
  • 使用 SQLite with FTS5 实现快速全文搜索
  • 使用 Bubbletea 提供精致的终端 UI
  • 使用 MCP 集成编码 Agent
为什么这很重要

其他编码 Agent 会话工具存在问题:

  • 模式支持不完整(无法解析所有消息类型)
  • 构建损坏,依赖项已被弃用
  • 没有真正的搜索功能(只有 grep)
  • 实际上无法恢复会话
  • 仅支持单一提供方

ccrider 通过以下方式解决这些问题:

  • 100% 模式覆盖率——正确解析所有消息类型
  • 多提供方——在一个数据库中支持 Claude Code、Codex CLI、GitHub Copilot CLI、OpenCode、Pi、Antigravity 和 Amp
  • SQLite FTS5 搜索——快速、强大的全文搜索
  • 单二进制文件——无需 npm、pip 或依赖项
  • 原生恢复——按一个键即可恢复会话
  • 增量同步——检测正在进行的会话中的新消息

开发

开发环境设置和指南请参阅 CONTRIBUTING.md。

项目结构
cmd/ccrider/          # CLI entry point + MCP server
internal/
  core/               # Business logic (no UI concerns)
    db/               # Database operations
    importer/         # Session import/sync and Amp CLI client
    search/           # Full-text search
    session/          # Session launch logic
  interface/          # Thin UI wrappers
    cli/              # Command handlers
    tui/              # Terminal UI (bubbletea)
pkg/
  ccsessions/         # Claude Code session parser (public API)
  codexsessions/      # Codex CLI session parser (public API)
  copilotsessions/    # GitHub Copilot CLI session parser (public API)
  opencodesessions/   # OpenCode session parser (public API)
  pisessions/         # Pi session parser (public API)
  antigravitysessions/ # Antigravity session parser (public API)
  ampsessions/        # Pure Amp export parser (public API)
快速构建
go build -o ccrider cmd/ccrider/main.go
./ccrider sync
./ccrider tui

文档

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。