GraphKeeper 是一个仅在本地运行的 CLI,挖掘仓库的 git 日志,找出哪些文件历史上会一起变更。它为 AI 编程智能体提供可查询的答案,而无需对整个历史进行 grep。该工具无需服务器、账户或嵌入 API,所有输出都来自已检出仓库的 git 日志。 build 命令会对完整历史运行 git log --no-merges --name-only,并统计在同一次提交中一起变更的每一对文件。它把结果写入 .graphkeeper/graph.json。当 graphify 在 PATH 中时,可选的调用图增强可用,它会把符号和调用边合并到同一个存储中,以支持调用图查询。 GraphKeeper 提供两个独立的包:面向 JavaScript/TypeScript 的 npm 包和面向 Python 的 PyPI 包。两者共享相同的磁盘模式,因此一个构建的存储可以被另一个读取。该工具还提供 Model Context Protocol 服务器,使 AI 编程智能体可以挖掘共变历史并直接查询图。
AI 编程智能体用 GraphKeeper 查询共变历史,找出历史上会一起变更的文件。
开发者用 GraphKeeper 列出历史上与给定文件一起变更的文件,并按提交次数排序。
团队用 GraphKeeper 挖掘真实的提交历史来判断代码耦合,而不是依赖静态快照。
AI 智能体可以使用 MCP 服务器挖掘共变历史并直接查询图,无需人工干预。
脚本和智能体可以使用 --json 模式解析机器可读的输出。
开发者可以通过 TypeScript 或 Python 的库 API 将 GraphKeeper 集成到自己的工具中。