graph-build

通过AST解析构建代码知识图谱

代码质量 后端开发智能体开发学术研究者 构建知识图谱 通用 ★ 929 更新于 2026-08-01

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:graph-build。
它的用途是:通过AST解析构建代码知识图谱
完整的 Skill 内容见:https://321skill.com/skills/graph-build-x-6/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

'帮我用 graph-build 分析当前项目,构建代码知识图谱,并找出所有未使用的函数定义。' 它会自动运行扫描命令,生成图谱后通过 SQL 查询返回结果列表,并标注每个废弃函数的文件路径和最后调用时间。

介绍

graph-build 是一款基于 tree-sitter AST 解析器与 SQLite 存储的代码知识图谱构建工具。它能自动扫描项目源码,提取函数、类、变量、模块之间的调用关系与依赖结构,并持久化到本地数据库中,形成可查询、可演化的代码知识网络。

使用方式非常直接:在项目根目录下运行一次扫描命令,即可完成初始图谱构建;后续代码变更时,增量更新模式会自动比对差异并刷新图谱,无需全量重扫。生成的图谱支持通过 SQL 或 CLI 查询,例如“查找所有调用了A函数的模块”或“列出未被引用的废弃函数”。

适合需要频繁阅读、重构或审计大型代码库的后端开发、智能体开发者以及学术研究者。尤其适用于以下场景:接手遗留项目时快速理解代码结构、为代码审查提供上下文依据、或为 AI 编码代理提供结构化知识背景来提升生成准确率。

使用时建议对大型仓库先进行单文件测试,避免首次扫描耗时过长。注意该工具不处理非标准语法的动态语言特性(如 Python 的 eval、JavaScript 的 with),且依赖 tree-sitter 的语法文件覆盖范围,不支持的语言需额外安装对应 grammar。

核心特点

与同类工具相比,graph-build 基于 tree-sitter 的精确 AST 而非正则或模糊匹配,能够准确识别嵌套作用域和跨文件引用;同时将图谱持久化到 SQLite,支持增量更新和结构化查询,而非仅生成静态报告。

注意事项

无法处理动态语言特性(如 eval、反射调用)以及 tree-sitter 未覆盖的编程语言或语法扩展。

常见问题

graph-build 支持哪些编程语言?

支持 tree-sitter 官方提供的所有语法文件,包含 JavaScript、TypeScript、Python、Go、Rust、C、C++ 等主流语言,可通过安装额外 grammar 扩展。

如何增量更新知识图谱?

在项目目录下运行 `graph-build update` 命令,工具会自动检测代码变更并只更新受影响的部分,无需重新扫描整个项目。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/graph-build-x-6/raw/index.md 读取 graph-build 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。