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。
相关
- 项目
- 项目
- 项目
- 项目
- 项目