当项目代码库越来越庞大,横跨多种语言时,就算是经验丰富的开发者也要花不少时间在理解代码结构上。如果能像问 ChatGPT 一样直接问你的代码库问题,还能让它精准地找到对应的函数、类、调用关系,甚至帮你改写优化——这就是 Code-Graph-RAG 要解决的问题。

项目简介
Code-Graph-RAG 是一个多语言代码库知识图谱 + RAG(检索增强生成)系统。它使用 Tree-sitter 解析你的代码库,构建一张包含函数、类、方法、模块及它们之间关系的结构化知识图谱,存储到 Memgraph 图数据库中,然后让你用自然语言来查询、理解和编辑代码。
项目在 GitHub 上已获得 3500+ Stars,今日新增 680+ Stars,采用 MIT 开源协议。
核心功能
- 多语言代码解析:完整支持 Python、TypeScript、JavaScript、Rust、Go、Java、C、C++、C#、PHP、Lua、Dart 等 13+ 种语言,Ruby 通过插件层支持
- 自然语言查询:用普通话向代码库提问,AI 自动生成 Cypher 图查询语句,精准定位目标代码
- AST 级别代码编辑:基于 Tree-sitter 的精确修补,修改前提供 diff 预览,告别粗糙的文本替换
- 代码优化:自动检测代码并给出语言最佳实践级别的优化建议
- 死代码检测:从入口点开始遍历调用和引用边,找出未被使用的代码
- 结构性搜索替换:结合 ast-grep 按 AST 模式匹配和批量改写,跨整个代码库操作
- 数据流追踪:新增 FLOWS_TO 污点边跟踪变量赋值、函数调用和 I/O 接收点的数据流向,覆盖 10 种语言
- MCP 服务器:可作为 Model Context Protocol 服务器运行,让 Claude Code 等 AI 编程助手直接查询你的代码库
- 向量语义搜索:集成 Qdrant 向量数据库,实现语义级别的代码搜索
技术架构
整个系统由两大组件构成:
- 多语言解析器:Tree-sitter 驱动,读取源代码 → AST 分析 → 提取结构化信息 → 写入 Memgraph 图数据库。所有语言统一映射到同一套图 Schema。
- RAG 系统:交互式 CLI,用户输入自然语言 → AI 模型生成 Cypher 查询 → 图数据库返回精准结果 → 驱动代码编辑和优化。
数据流示意图:
源码 → Tree-sitter 解析器 → AST 分析 → Memgraph 知识图谱
↓
用户提问 → AI 模型(Cypher 生成)→ Cypher 查询 → 图谱结果 → 响应
快速上手
安装
通过 PyPI 安装,推荐使用 uv:
uv tool install "code-graph-rag[treesitter-full,semantic]"
前置要求:Docker(用于运行 Memgraph)、cmake、ripgrep。
启动服务
# 启动 Memgraph + Qdrant 服务栈
cgr daemon up
# 解析仓库到图数据库,然后进入交互查询
cgr start --repo-path /path/to/your/repo --update-graph
# 后续只需
cgr start --repo-path /path/to/your/repo
多个项目可以共享同一个图数据库,解析一个项目不会影响其他已索引的项目。
作为 MCP 服务器运行
配置 Claude Code 或支持 MCP 的客户端,让你的 AI 编程助手直接查询代码库:
# 配置 MCP 客户端指向 cgr mcp-server
详细配置见项目文档中的 MCP Server 指南。
适用场景
- 大型 Monorepo 管理:包含多种语言的多模块项目,快速理解整体结构和模块间依赖
- 新人 Onboarding:新成员接手陌生代码库,用自然语言提问就能快速定位关键代码
- 代码审查辅助:理解改动的影响范围,追踪数据流路径
- 技术债务清理:自动检测死代码和过时实现
- AI 编程增强:作为 MCP 服务器接入 Claude Code 等工具,让 AI 助手真正理解你的代码库结构
- 代码迁移/重构:通过 AST 级别的结构性搜索替换,安全高效地批量改写代码
总结
Code-Graph-RAG 将知识图谱与 RAG 结合,解决了传统代码库 AI 助手的核心痛点:AI 需要真正理解代码结构,而不只是做文本匹配。通过 Tree-sitter 精确解析 + 图数据库存储 + 自然语言查询,它让开发者能够像对话一样与代码库交互。















cqlbgzs@163.com 1年前0
d好879445037@qq.com 2年前0
购买了 无法下载Alexcc 3年前0
强大Alexcc 3年前0
看不了教程Alexcc 3年前0
雷刺下载Alexcc 3年前0
下载Alexcc 3年前0
下载dsa456159 3年前0
下载