vitali87/code-graph-rag

The ultimate RAG for your monorepo. Query, understand, and edit multi-language codebases with the power of AI and knowledge graphs

它解决了什么问题

Code-Graph-RAG 解决了理解和维护大型多语言代码库的困难。它让开发者能够使用自然语言查询、编辑和优化代码,方法是将 AI 响应建立在代码库的结构化知识图谱上,而不是依赖简单的文本搜索。

它的运作方式

系统由两个主要组件组成:

  1. 多语言解析器:使用 Tree-sitter 提取函数、类、方法和模块,并将它们存储在 Memgraph 知识图谱中。它通过编译器级前端(如用于 C/C++ 的 libclang 或用于 Go 的 go/types)和动态运行时跟踪来增强此功能,以捕获静态分析无法看到的调用。
  2. RAG 系统:一个交互式 CLI,将自然语言查询转换为 Cypher 查询,以从图谱中检索精确的结构信息,然后用于支持 AI 驱动的代码编辑和优化。

适用对象

处理复杂 monorepo 或多语言项目的开发者和工程团队,他们需要高效地导航、记录和重构代码。

重点特色

  • 多语言支持:在统一的架构下,支持 Python、TypeScript、Rust、Go、Java、C/C++、C# 等语言。
  • 基于 AST 的编辑:在应用更改前,提供差异预览,执行精准的代码修补。
  • 运行时覆盖:将 eBPF 配置文件或测试运行跟踪合并到图谱中,以揭示动态分派。
  • 死码检测:通过从入口点遍历调用和引用边,识别未使用的代码。
  • MCP 服务器:与 Claude Code 和其他 Model Context Protocol 客户端集成。

相关

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