跳到正文

目录

GitNexus:为零服务器代码智能分析而生的知识图谱引擎

GitNexus:为零服务器代码智能分析而生的知识图谱引擎

GitNexus 做什么

GitNexus(Akon Labs)把代码仓库索引成交互式知识图谱,再通过 MCP 协议把图结构暴露给 AI 编程工具,让它们能查到调用关系、依赖结构和影响范围。

一句话定位:比其他代码理解工具更"深"。DeepWiki 帮你理解代码,GitNexus 让你分析代码——因为知识图谱记录的是真实关系,而不只是描述。

  • 🌐 Web UI:https://gitnexus.vercel.app
  • 📦 NPM 包:gitnexus
  • 🏢 企业版:https://akonlabs.com(SaaS + 自托管)
  • 📜 License:PolyForm Noncommercial(非商业开源)

⚠️ 防骗提示:GitNexus 没有任何官方加密货币、代币或币。任何打着 GitNexus 旗号、声称关联本项目的代币都不是本项目及其维护者官方发布的,请勿购买。


为什么需要知识图谱:AI 编程工具的上下文盲区

Cursor、Claude Code、Codex 这类工具很强大,但它们并没有真正理解你的代码库结构。由此常引发事故:

  1. AI 改了 UserService.validate()
  2. 它不知道有 47 个函数依赖这个方法的返回值
  3. 破坏性变更上线了

传统做法是给 LLM 一堆图的原始边,希望它自己探索到位。GitNexus 换了个思路——在索引阶段就把结构预计算好(聚类、追踪、打分),工具一次调用就能返回完整上下文:

传统 Graph RAG:用户 -> LLM 收到原始图 -> 查询1"找调用者" -> 查询2"找文件"
              -> 查询3"过滤测试" -> 查询4"找高风险" -> 4+ 次查询后才有答案

GitNexus 智能工具:用户 -> impact UserService upstream
              -> 预结构化响应:8 个调用者、3 个聚类、全部 90%+ 置信度 -> 1 次查询搞定

核心创新:预计算的关系智能(Precomputed Relational Intelligence)

  • 可靠性——上下文已经放进工具返回里,LLM 不可能漏掉
  • Token 效率——理解一个函数不用再跑 10 次查询链
  • 模型平民化——小模型也能用,因为重活由工具干完了

两种使用模式

CLI + MCP(推荐)Web UI
做什么本地索引仓库,通过 MCP 连接 AI 智能体浏览器内可视化图谱探索 + AI 对话
适用场景日常开发(Cursor、Claude Code、Antigravity、Codex、Windsurf、OpenCode)快速探索、演示、单次分析
规模任意大小仓库受浏览器内存限制(~5k 文件),或通过后端模式无限制
安装npm install -g gitnexus无需安装,访问 gitnexus.vercel.app
存储LadybugDB 原生(快速、持久)LadybugDB WASM(内存模式,按会话)
解析器Tree-sitter 原生绑定Tree-sitter WASM
隐私完全本地,无网络传输完全在浏览器内,无服务器

桥接模式(Bridge Mode)gitnexus serve 把两者连起来——Web UI 会自动检测本地服务器,无需重新上传或重新索引,即可浏览所有 CLI 索引过的仓库。


架构:索引 → 图谱 → MCP

Repository → 索引(Tree-sitter) → 知识图谱 → MCP Server → AI Agent

1. 索引

Tree-sitter 解析代码,本地高速完成,无需网络。索引和分析是分阶段管道:

analyze
→ walkRepository  并发遍历文件(32 并行读)
→ processStructure  目录/文件图节点
→ processParsing  Tree-sitter AST 解析(Worker 线程)
→ processImports  解析 import/require/use
→ processCalls  追踪函数调用(带置信度)
→ processHeritage  提取 extends/implements 继承关系
→ processCommunities  Leiden 社区检测(功能聚类)
→ processProcesses  执行流追踪
→ 图谱入库  CSV 导出 → 图数据库批量导入
→ 生成 embedding 并存储符号向量
→ 生成 AI 上下文文件  CLAUDE.md / AGENTS.md / Skills

关键命令:

gitnexus analyze [path]            # 索引仓库(或更新过期索引)
gitnexus analyze --force           # 强制全量重新索引
gitnexus analyze --branch <分支>   # 为指定分支索引
gitnexus analyze --pdg             # 生成语句级控制/数据依赖索引(供 explain/pdg_query 使用)
gitnexus analyze --skills          # 从检测到的功能区域生成仓库专属 Skill 文件
gitnexus analyze --skip-embeddings # 跳过 Embedding 生成(更快)
gitnexus analyze --embeddings      # 启用 Embedding 生成(更慢,搜索更准)
gitnexus analyze --verbose         # 记录解析器不可用时跳过的文件

2. 知识图谱

索引完成后生成有向图,包含以下信息:

元素说明
Clusters功能聚类——按代码耦合度划分的模块分组,带聚合度(cohesion)评分
Processes执行流——从入口点开始的完整调用路径
Symbols符号——函数、类、变量的定义与引用关系
Schema图谱模式——可用于 Cypher 查询的图结构

3. MCP 服务

GitNexus 通过一个全局注册表,让一个 MCP 服务器同时服务多个已索引仓库——不需要为每个项目单独配 MCP,配置一次全局生效。


AI 智能体能拿到什么

17 个 MCP 工具(15 单仓库 + 2 组)

单仓库工具:

工具功能
list_repos列出所有已索引仓库(分页,支持 limit/offset
query进程分组的混合搜索(BM25 + 语义 + RRF)
context360° 符号视图——分类引用、进程参与度
impact爆炸半径分析(blast radius),带深度分组和置信度
trace两个符号之间的最短有向路径(调用 + 类成员边)
detect_changesGit diff 影响分析——把变更行映射到受影响的进程
check对已索引图谱的只读结构检查
rename多文件协调重命名(图谱 + 文本搜索)
cypher原始 Cypher 图查询
route_mapAPI 路由图——哪些组件调用哪些端点及对应处理器
tool_mapMCP/RPC 工具定义——在哪里定义、在哪里处理
shape_check校验 API 响应形状与消费方的属性访问是否匹配
api_impact针对某个 API 路由处理器的变更前影响报告
explain解释持久化的污染(taint)发现(source→sink 流,需 --pdg 索引)
pdg_query语句级控制/数据依赖查询(需 --pdg 索引)

单仓库只读工具接受可选 repo 参数。只索引一个仓库时可省略。变更类工具在索引了多个仓库且未设默认时,必须显式传 repoexplainpdg_query 需要先用 gitnexus analyze --pdg 建索引。

组工具(多仓库协调):

工具功能
group_list列出已配置的仓库组
group_sync重建一个组的 Contract Registry 和跨仓库链接

10 个 Resources(AI 可直接读取的上下文资源)

Resource用途
gitnexus://repos列出所有已索引仓库(建议最先读取)
gitnexus://setup给智能体的安装与使用指引
gitnexus://repo/{name}/context仓库统计、过期检查、可用工具
gitnexus://repo/{name}/clusters所有功能聚类及聚合度评分
gitnexus://repo/{name}/cluster/{name}某聚类的成员与详情
gitnexus://repo/{name}/processes所有执行流
gitnexus://repo/{name}/process/{name}某个执行流的完整追踪步骤
gitnexus://repo/{name}/schemaCypher 查询用的图谱模式
gitnexus://group/{name}/contracts某组提取的契约与跨组链接
gitnexus://group/{name}/status组内仓库的过期状态

2 个 MCP Prompts(引导工作流)

Prompt功能
detect_impact提交前变更分析——影响范围、受影响的进程、风险等级
generate_map从知识图谱生成带 Mermaid 图示的架构文档

自动安装的 Agent Skills

索引后自动安装到 .claude/skills/(如存在 .agents/ 也装到 .agents/skills/):

Skill用途
Exploring用知识图谱导航陌生代码
Debugging沿调用链追踪 bug
Impact Analysis变更前分析爆炸半径
Refactoring用依赖映射规划安全重构
GuideGitNexus 工具/资源/schema 参考
CLI按需执行 analyze/status/clean/wiki 命令
PDG Query语句级控制/数据依赖查询(--pdg 索引)
Taint Analysissource→sink 数据流发现(--pdg 索引)
Plan/gitnexus-plan基于图谱和 PDG 切片的可实现工程方案
Work/gitnexus-work以 impact 校验、detect_changes 把关的原子提交执行方案

编辑器支持

编辑器MCPSkillsHooks(自动增强)支持深度
Claude Code✅(PreToolUse + PostToolUse)完整支持
CursorMCP + Skills
CodexMCP + Skills
AntigravityMCP + Skills
WindsurfMCP
OpenCodeMCP + Skills

Claude Code 获得最深集成:MCP 工具 + Agent Skills + PreToolUse Hook(用图谱上下文丰富搜索)+ PostToolUse Hook(检测提交后索引过期并提示重新索引)。

快速配置

Claude Code(完整支持):

# macOS / Linux
claude mcp add gitnexus -- npx -y gitnexus@latest mcp

# Windows
claude mcp add gitnexus -- cmd /c "npx -y gitnexus@latest mcp"

Codex:

codex mcp add gitnexus -- npx -y gitnexus@latest mcp

Cursor(~/.cursor/mcp.json):

{
  "mcpServers": {
    "gitnexus": {
      "command": "npx",
      "args": ["-y", "gitnexus@latest", "mcp"]
    }
  }
}

也可以用 npx gitnexus setup 一步自动检测并配置编辑器,比手写配置更省事。


快速开始

安装与首次索引

# 安装 CLI
npm install -g gitnexus

# 索引你的仓库(从仓库根目录运行)
npx gitnexus analyze

# 配置 MCP(一次性配置编辑器)
npx gitnexus setup

索引完成后,GitNexus 会自动:

  1. 安装 Agent Skills 到 .claude/skills/(Claude Code)和 .agents/skills/
  2. 注册 Claude Code Hooks
  3. 创建 AGENTS.md / CLAUDE.md 上下文文件

安装避坑

  • npm 11 崩溃npx 可能因 npm/arborist 的 bug 报 Cannot destructure property 'package' of 'node.target'(在 GitNexus 运行前就崩)。改用 pnpm 显式构建原生依赖:
    pnpm --allow-build=@ladybugdb/core --allow-build=gitnexus --allow-build=tree-sitter dlx gitnexus@latest analyze
    或全局安装后直接 gitnexus analyze
  • MCP 启动慢:建议先全局安装 npm i -g gitnexusgitnexus setup,这样会写入绝对路径配置、绕过 npx;冷缓存下 npx 安装可能超过 Claude Code 默认 MCP_TIMEOUT(约 30s)。
  • 没有 C++ 工具链:设 GITNEXUS_SKIP_OPTIONAL_GRAMMARS=1 后再 npm install -g gitnexus,可跳过 dart/proto/swift/kotlin 四个 vendored 语法的构建(只影响这四种语言的解析,安装可秒级完成,无需 python3/make/g++)。
  • 代理/防火墙环境onnxruntime-node 的 postinstall 会从 api.nuget.org 下载可选 CUDA 二进制且忽略代理。embedding 栈是可选的,首次 gitnexus analyze --embeddings 时会通过 npm 源自行补齐到 ~/.gitnexus/embedding-runtime(可用 GITNEXUS_EMBEDDING_RUNTIME_DIR 覆盖)。

常用命令

gitnexus setup                     # 为编辑器配置 MCP(一次性)
gitnexus analyze                   # 索引仓库(或更新过期索引)
gitnexus analyze --force           # 强制全量重新索引
gitnexus analyze --skills          # 生成仓库专属 Skill 文件
gitnexus serve                     # 启动本地 HTTP 服务器,连接 Web UI
gitnexus list                      # 列出所有已索引仓库
gitnexus status                    # 显示当前仓库索引状态
gitnexus clean                     # 删除当前仓库索引
gitnexus clean --all --force       # 删除所有索引
gitnexus wiki [path]               # 从知识图谱生成仓库 Wiki
gitnexus embeddings install        # 手动按需安装 embedding 运行时

部署到 Render

GitNexus 支持一键部署到 Render。Blueprint 会创建两个服务:

  • gitnexus-server:跑 gitnexus serve,私有服务,无公网 URL,走 Render 私有网络,带持久化磁盘存索引和克隆的仓库
  • gitnexus-web:公开服务,提供 UI 并把 /api/* 反向代理到 server

默认配置约 $35/月(server standard $25 + web starter $7 + 10GB 磁盘 $2.5)。部署后会生成访问令牌,UI 首次使用时要求粘贴(从 Render dashboard 的 GITNEXUS_SERVE_AUTH_TOKEN 复制)。任何持有该令牌的人都能读取所有已索引仓库,请妥善保管。


企业版

GitNexus 提供商业化企业版本(SaaS 与自托管),含开源版没有的功能,例如团队协作、多仓库组织、服务端部署等方式。具体清单以 akonlabs.com 官方信息为准。


技术栈

组件技术选型
代码解析Tree-sitter(原生绑定 + WASM)
图数据库LadybugDB(原生 + WASM)
向量检索ONNX 嵌入模型 + HNSW 向量索引
混合搜索BM25 + 语义向量 + RRF(倒数排名融合)
AI 协议MCP(Model Context Protocol)
发布形式NPM(gitnexus),Web UI 由 Vercel 托管

适用场景

适合使用 GitNexus 的场景

  1. 大型代码库维护:超过 5k 文件的中型/大型项目,AI 需要架构级理解
  2. 重构高风险代码:修改调用链复杂或依赖关系不清晰的模块
  3. 代码审查:PR 提交前分析影响范围
  4. 新成员 onboarding:快速理解代码库的功能聚类和执行流
  5. 跨仓库服务治理:多仓库场景下的接口契约提取和执行流追踪(组功能)

不适合的场景

  1. 小型脚本项目:几十行代码的简单脚本,不需要知识图谱
  2. 完全不允许本地处理的环境:虽然完全本地无网络,但需要 npm/Node.js 环境

总结

GitNexus 把代码从文本变成结构化的图谱。区别在于:传统做法让 LLM 从原始图中自己探索,GitNexus 在索引时就把聚类、追踪、置信度预计算好,AI 工具一次调用即可拿到完整上下文,从而不再漏看依赖、不再打断调用链、不再盲目编辑。

适合使用 Claude Code、Cursor、Codex 等工具处理中大型代码库的开发者,其中 Claude Code 用户获得的集成最深(MCP + Skills + Hooks 全覆盖)。


📌 更多信息

参与讨论

使用 GitHub 登录。欢迎补充事实、异议与实践。