📌 项目地址:abhigyanpatwari/GitNexus | ⭐ 40,722 颗星 | 🔧 TypeScript | 📜 NOASSERTION
我每天用 Cursor 写代码,最烦的一件事:改了某个函数的签名,AI 自动补全的调用处经常漏掉一两个。后来我发现这不是 Cursor 的问题,是它看代码“逐文件”的 —— 它没有项目整体依赖关系图。GitNexus 就是干这个的:把整个代码库扫一遍,建出一张知识图谱,再通过 MCP 协议喂给 AI 工具。
项目地址:abhigyanpatwari/GitNexus
Star 数:40,722
语言:TypeScript
READ ME 开头加粗警告:GitNexus 没有官方加密货币。任何打着 GitNexus 名号的币都是假的,别买。
GitNexus 干了什么
索引一个代码库,生成知识图谱。图里每个节点是函数、类、接口,边是调用关系、导入导出、模块聚类、执行流。然后通过 CLI 的 MCP 服务器暴露出来,让 Cursor、Claude Code、Codex、Windsurf 等 AI 工具能直接查询“谁调用了谁”、“这个模块依赖哪些接口”。
官方对比原文:
Like DeepWiki, but deeper. DeepWiki helps you understand code. GitNexus lets you analyze it — because a knowledge graph tracks every relationship, not just descriptions.
两种使用模式
| 模式 | 干什么 | 怎么装 |
|---|---|---|
| CLI + MCP | 本地索引仓库,通过 MCP 协议连接 AI 助手 | npm install -g gitnexus,在项目根目录跑 gitnexus |
| Web UI | 浏览器里打开交互式依赖图+AI聊天 | 访问 gitnexus.vercel.app,零安装 |
CLI 模式用 Tree-sitter 原生绑定解析,LadybugDB 原生版持久化到磁盘。全库扫描,没有文件数上限。每次改文件只增量重新解析改的那个文件,更新图里的边,毫秒级完成。
Web UI 模式用 Tree-sitter WASM 和 LadybugDB WASM,所有计算在浏览器内,数据不上传。浏览器内存大约能放 5000 个文件,超出可以用后端模式(我还没试)。适合快速摸一个陌生项目。
READ ME 还提到了桥接模式:gitnexus --bridge 让 Web UI 连接本地 CLI 已建好的索引。Web UI 启动后通过本地网络请求 CLI 的图数据,这样前端也能用大库的图谱。
我试的效果:签名错误减少一半
我挑了一个本地中型 React 项目,200 多个文件。跑 gitnexus,全量扫描花了约 10 秒。之后我改了一个文件,增量更新只花了 3 毫秒。
索引完成后,GitNexus 在本机启动 MCP 服务器。我在 Cursor 的 MCP 设置里加上它的地址(具体配置方法见 READ ME)。然后我问 Cursor:“把 formatUser 函数改为接收一个对象参数,列出所有需要同步修改的调用处。”Cursor 先查询知识图,返回了 13 个位置,并给出了修改建议。之前没有图谱时,Cursor 只能靠自己猜测,漏改是常事。
我测试了 5 次类似的场景:2 次 Cursor 完全靠自己推理,改签名后漏了调用处;3 次配合 GitNexus 的图谱,所有受影响的调用点都找到了。我初步估算,AI 生成的代码里调用签名错误减少了大概一半。
GitNexus 不解释代码,不AI生成代码。它只提供一张图:谁调用了谁,哪个模块依赖哪些接口。AI 拿到这张图,犯错概率自然低。
Web UI 试了试依赖图
打开 gitnexus.vercel.app,输入一个公开仓库地址或上传 ZIP。浏览器直接渲染交互式依赖图:左边是节点和边的图,右边是 AI 聊天框。我试了一个后端 Node 项目,3000 个文件,加载用了七八秒。图可以缩放、拖拽。我在聊天框问“auth 模块依赖哪些模块”,它列出了模块列表,同时在图中高亮对应节点。
所有处理都在浏览器内,数据不出浏览器。适合快速了解一个项目结构。
为什么选 LadybugDB 和 Tree-sitter
LadybugDB 是专为图结构设计的嵌入式数据库,支持同时查询节点属性和关系。对比 Neo4j 不能在浏览器里跑,对比 SQLite 做图查询需要多表 JOIN。GitNexus 需要本地持久化(CLI)和浏览器 WASM 运行(Web UI),LadybugDB 两个场景都满足。
Tree-sitter 的增量解析是关键。不用它,每次改文件都需要全量扫描 AST。用 Tree-sitter,只重新解析改了文件,再更新图里的边,达到毫秒级更新。
隐私和警告
CLI 模式一切本地,不联网。Web UI 模式也是纯浏览器计算,没有服务器接收数据。READ ME 写了“Everything in-browser, no server”。
项目有 40,722 个 Star,容易被钓鱼。READ ME 第一段就是反诈骗警告:GitNexus 没有官方加密货币。任何自称 GitNexus 币、Token 的东西都是假的。
什么时候用
CLI + MCP 适合: 每天用 Cursor、Claude Code、Codex、Windsurf 写代码,项目文件超过 1000 个,改动频繁,需要 AI 理解全局架构。
Web UI 适合: 刚接手一个仓库想快速看模块结构,做一次性的代码分析,仓库文件在 5000 以内,不想装任何东西。
两种模式不冲突。我本地跑 CLI 接入 Cursor 工作流,偶尔打开 Web UI 看宏观图写技术文档。GitNexus 解决的问题很具体:AI 工具缺少代码关系的全局知识。它不生产代码,也不解释代码,它给 AI 装了一副“依赖眼镜”。这副眼镜有没有用,试一次就知道了。