WheelDrop行车日志
用于AI编码代理的飞行记录器。一个MCP服务器,为Claude Code、Codex和Gemini CLI提供共享的持久内存。
 ](https://www.npmjs.com/package/@wheeldrop/logbook) 
你的AI编码代理有健忘症。每个会话都是从头开始的——不记得你昨天构建了什么,你选择了什么模式,或者已经解决了什么错误。WheelDrop日志通过将代理的对话历史、内存文件和计划索引到任何代理都可以查询的可搜索MCP服务器中来解决这个问题。
快速开始
自动检测已安装的代理并对其进行全部配置:
npx @wheeldrop/logbook --install这会检测您拥有哪些代理(Claude Code、Codex CLI、Gemini CLI),将每个代理配置为使用日志作为MCP服务器,并在支持的情况下安装特定于代理的技能。安装程序还将技能文件复制到 ~/.codex/skills/logbook/ 因此,Codex会在相关时自动触发对话搜索。
每个代理设置
克劳德代码
插件安装:
claude plugin marketplace add wheeldrop/logbook
claude plugin install logbook@logbook仅限MCP服务器 (无技能/背景):
claude mcp add logbook --scope user -e -- npx @wheeldrop/logbookGemini CLI
扩展安装:
gemini extensions install https://github.com/wheeldrop/logbookCodex CLI
增添 ~/.codex/config.toml:
[mcp_servers.logbook]
command = "npx"
args = ["@wheeldrop/logbook"](可选)复制自动触发搜索的捆绑技能:
mkdir -p ~/.codex/skills/logbook
cp $(npm root -g)/@wheeldrop/logbook/skills/logbook/SKILL.md ~/.codex/skills/logbook/任何MCP兼容客户端
日志适用于任何支持 模型上下文协议。将此添加到客户端的MCP服务器配置中:
{
"logbook": {
"command": "npx",
"args": ["@wheeldrop/logbook"]
}
}服务器使用stdio传输-没有网络,没有API密钥,完全是本地的。
代理技能(可选)
航海日志附带技能档案(skills/logbook/SKILL.md)它教代理如何有效地搜索——查询公式、结果分类、搜索→会话→阅读工作流程中的演练。将其复制到任何支持技能的代理中:
- Codex CLI:
~/.codex/skills/logbook/SKILL.md - 克劳德代码:作为插件安装(自动捆绑技能)
- Gemini CLI:作为扩展安装(自动捆绑技能)
它的作用
WheelDrop日志从本地AI编码代理数据中索引对话历史、内存文件、计划和知识工件。它公开了5个MCP工具:
| 工具 | 说明 |
|---|---|
logbook_search | 通过模糊匹配在所有代理中进行全文搜索,按代理/类型/日期/项目进行过滤 |
logbook_sessions | 浏览按最近时间排序的最近会话 |
logbook_read | 通过上下文窗口和模糊查询匹配从特定会话中检索消息 |
logbook_memory | 搜索CLAUDE.md、GEMINI.md、AGENTS.md和指令文件 |
logbook_plans | 搜索计划文件、大脑文档和知识工件 |
自定义数据位置
WheelDrop日志尊重与代理本身相同的环境变量:
| 代理 | 变量 | 默认值 |
|---|---|---|
| 克劳德代码 | CLAUDE_CONFIG_DIR | ~/.claude |
| Codex CLI | CODEX_HOME | ~/.codex |
| Gemini CLI | GEMINI_CLI_HOME | ~ (.gemini 内部创建) |
如果对任何代理使用非标准数据目录,请在运行日志之前设置相应的变量。
支持的数据源
| 代理 | 对话 | 记忆 | 计划 | 子代理 |
|---|---|---|---|---|
| Claude Code | history.jsonl+会话jsonl | Claude.md(全局+每个项目) | 计划/*.md | 子代理会话 |
| Codex CLI | history.jsonl+日期树会话 | AGENTS.md+规则/ | -- | -- |
| Gemini CLI | 会话JSON+logs.JSON(清除会话) | Gemini.md | 计划/*.md | -- |
建筑
- 运输:stdio(仅限本地,无网络)
- 搜索: 迷你搜索 模糊匹配和前缀搜索
- 索引:第一次搜索时对整个会话内容进行索引,并进行评分标准化,以防止长文档偏见
- 解析器:每个代理模块化,实现
AgentParser接口
发展
git clone https://github.com/wheeldrop/logbook.git
cd logbook
npm install
npm run build
npm test # 156 tests
npm run lint # ESLint
npm run typecheck # TypeScript strict mode
npm run test:coverage # Coverage with v8
npm run check # All of the aboveMCP检验员测试
npm run inspect项目布局
src/
├── parsers/ # Per-agent parsers (claude, codex, gemini)
│ ├── types.ts # AgentParser interface
│ └── registry.ts # Parser auto-discovery
├── search/
│ ├── engine.ts # MiniSearch wrapper with score normalization
│ ├── tokenizer.ts # Shared tokenizer and fuzzy matching
│ └── types.ts # Search options and result types
├── utils/ # Shared utilities (time, paths, jsonl, display)
├── install.ts # --install auto-detection and configuration
├── server.ts # MCP tool registration
└── index.ts # Entry point (stdio transport + CLI flags)
skills/ # Codex skill
agents/ # Shared AGENTS.md for Gemini/Codex贡献
看 贡献.md 用于开发设置和拉取请求指南。
许可证
阿帕奇-2.0-- Crash United有限责任公司
