GitNexus:零服务器代码知识图谱引擎教程

GitHub:abhigyanpatwari/GitNexus · ⭐ 32K+ · TypeScript · PolyForm协议

项目简介

GitNexus是一款零服务器代码智能引擎,核心思路是:把代码仓库解析为知识图谱,全部在浏览器端运行,无需部署后端服务。它通过Tree-sitter解析代码AST,提取函数调用关系、类继承层次、模块依赖网络,然后在浏览器中用WebGL渲染交互式知识图谱。

传统代码智能工具(Sourcegraph、GitHub Code Search)需要搭建服务器索引代码,GitNexus直接在用户浏览器中完成解析和可视化,零部署成本、零数据泄露风险。

安装

# npm全局安装
npm install -g gitnexus

# 或npx直接运行(无需安装)
npx gitnexus analyze /path/to/your/repo

# 启动可视化界面
npx gitnexus viz --port 3000

核心功能

功能说明
代码知识图谱解析AST,提取函数/类/模块节点和调用/继承/依赖边,构建图结构
交互式可视化WebGL渲染力导向图,支持缩放/拖拽/过滤/搜索节点
调用链分析点击任意函数,高亮显示所有调用者和被调用者
影响面评估修改某函数时,自动标记所有受影响的下游代码路径
多语言支持通过Tree-sitter支持JS/TS/Python/Go/Rust/Java/C++等40+语言
导出与集成支持导出JSON图谱,可集成到VS Code扩展或CI流程

快速使用

# 分析当前项目
npx gitnexus analyze .

# 输出示例:
# ✓ 解析完成:1,247个文件
# ✓ 提取节点:8,392个函数 / 456个类 / 89个模块
# ✓ 提取边:12,847条调用关系
# ✓ 构建知识图谱完成(耗时3.2s)
# 📊 启动可视化: http://localhost:3000

# 导出图谱为JSON
npx gitnexus analyze . --export graph.json

# 在代码中使用API
import { GitNexus } from 'gitnexus';

const nexus = new GitNexus('./my-project');
const graph = await nexus.buildGraph();

// 查询:谁调用了myFunction?
const callers = graph.getCallers('myFunction');

// 查询:修改UserService影响哪些文件?
const impacts = graph.getImpactFiles('UserService');

相比 CodeGraph代码知识图谱教程 的SQLite+MCP方式,GitNexus更轻量——无需数据库,浏览器端直接分析,适合快速理解陌生代码库。

适用场景

场景说明
接手新项目5秒生成全库代码地图,快速理解架构
代码审查PR提交前评估修改影响面,避免遗漏
技术债分析识别高扇入/高扇出节点,定位架构瓶颈
AI编程辅助将图谱喂给LLM,让AI更准确理解代码上下文

📚 常见问题

GitNexus是什么?

GitHub:abhigyanpatwari/GitNexus · ⭐ 32K+ · TypeScript · PolyForm协议

如何上手GitNexus?

Understand-Anything代码知识图谱教程