abhigyanpatwari/GitNexus

GitNexus: The Zero-Server Code Intelligence Engine

GitNexus – 企业代码库的知识图谱引擎

是什么 – GitNexus 是一个 Node.js 工具,可将仓库(或一组仓库)索引为一个 知识图谱,描述依赖关系、调用链、集群、执行流程及其他结构化关系。该图谱存储在原生 LadybugDB 引擎中(或浏览器用的 WebAssembly 版本),并通过一组 MCP(模型中心编程)工具 暴露给 AI 驱动的编码助手(如 Claude Code、Cursor、Codex、Antigravity 等)调用。简而言之,它为基于 LLM 的代理提供了代码的预计算架构视图,使其不再需要在生成修改时“猜测”缺失的符号。


核心组件

组件 功能
CLI(gitnexus) analyze 使用原生 tree-sitter 语法解析仓库,构建图谱,安装 MCP 工具,并生成上下文文件(AGENTS.md、CLAUDE.md)。setup 写入全局 MCP 配置,使支持的编辑器能自动发现这些工具。
MCP 工具(19 个内置) list_repos、query、impact、trace、detect_changes、rename、cypher 等查询——全部基于预计算图谱运行,返回可直接使用的结果给 LLM。
Web UI(gitnexus.vercel.app) 基于浏览器的图谱探索器和聊天界面,与本地或 Render 托管的服务器通信。快速演示无需安装。
服务器(gitnexus serve) 运行 LadybugDB 存储和 HTTP API(/api/*)。UI 通过代理连接;CLI 也可与远程服务器通信(桥接模式)。
代理技能 自动生成的技能包,放置在 .claude/skills/ 或 .agents/skills/ 下,使 Claude Code、Codex 等代理可直接调用 MCP 工具。

快速开始(本地)

# 在要索引的仓库根目录下
npx gitnexus analyze          # 构建图谱,安装工具
npx gitnexus setup            # 为编辑器写入 MCP 配置

之后,任何支持的 AI 编辑器都将可在其聊天/命令面板中使用 gitnexus impact 或 gitnexus trace 等新命令。


部署选项

目标 工作方式 成本(示例)
Render 两个服务:gitnexus-server(私有,存储索引)和 gitnexus-web(公共 UI)。UI 通过密钥令牌将 /api/* 转发到服务器。 标准服务器 + 启动版 Web 实例 + 10 GB 磁盘,约 $35/月。
RepoCloud 一键部署按钮(类似 Render)。
仅本地 全局安装(npm i -g gitnexus)并自行运行 gitnexus serve;UI 可通过 http://localhost:… 连接。

为何知识图谱很重要

  • 可靠性 – 图谱已知哪些函数调用哪些函数,哪些 API 被使用,哪些模块相互依赖。LLM 通过一次工具调用即可获得 完整 回答,无需发出一系列查询。
  • 令牌效率 – 无需将数十个原始图边发送给模型;工具返回简洁、带置信度评分的摘要。
  • 模型无关 – 即使较小的 LLM 也能受益,因为依赖分析、聚类、PDG 构建等繁重工作在索引期间离线完成。

典型使用场景

场景 GitNexus 如何帮助
变更前的影响分析 detect_impact 或 detect_changes 返回影响范围、受影响流程和置信度评分,防止意外破坏。
大规模代码库重构 rename 使用图谱执行协调的多文件重命名,trace 显示符号间的最短调用路径。
理解不熟悉的代码 explore 类工具(list_repos、context、cluster)提供高层级地图;Web UI 可视化集群和执行流程。
自动化 PR 审查 review 技能运行图谱支持的审计(污点分析、形状检查),并揭示缺失的契约或不安全的数据流。
生成架构文档 generate_map 生成 Mermaid 图表,直接从图谱中捕捉组件关系。

限制与注意事项(如文档所述)

  • 安装问题 – npm 11 可能崩溃;README 推荐使用 pnpm 或全局安装以确保可靠性。
  • 可选原生语法 – Dart、Proto、Swift、Kotlin 的 tree-sitter 绑定已打包。跳过它们(GITNEXUS_SKIP_OPTIONAL_GRAMMARS=1)可加快安装,但这些语言将不会被解析。
  • 本地嵌入为可选 – 语义搜索需要额外执行 gitnexus embeddings install;否则仅支持 BM25。
  • 内存受限索引 – 大型仓库可能超过 Render standard 计划的默认 2GB 内存;必须升级计划或增加磁盘大小以克隆。
  • 托管部署的安全模型 – 访问仅由承载令牌(GITNEXUS_SERVE_AUTH_TOKEN)控制。拥有令牌者可读取所有索引仓库。
  • 浏览器 UI 大小限制 – 浏览器内 WASM 版本仅支持约 5k 文件;更大仓库需使用服务器支持模式。

许可证

本项目采用 PolyForm Non-commercial 1.0.0 许可证发布,意味着可用于非商业用途,但商业用途需另行获取商业许可证。


总结

GitNexus 是一个真正的开源 AI 导向工具,将代码库转化为丰富、可查询的知识图谱,并直接将其接入现代 LLM 驱动的编码助手工作流。它特别适用于大型企业单体仓库,其中缺失依赖是常见错误来源,同时提供日常开发用 CLI 和快速探索用托管/Web UI。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目