当前位置: 首页
AI教程
GitHub 9.8万Star AI工具 将代码仓库转为知识图谱 适配Claude Code/Codex

GitHub 9.8万Star AI工具 将代码仓库转为知识图谱 适配Claude Code/Codex

时间:2026-07-31
转载

Graphify通过扫描代码仓库自动生成可交互的知识图谱,支持多种编程语言,为ClaudeCode、Codex等AI助手提供精准代码实体与关系定位,具备查询、路径解释、MCPServer等功能,大幅减少临时搜索和上下文切换负担,帮助团队快速定位代码问题,并支持路径追溯,优化AI辅助代码理解,提升开发效率。支持多种版本控制系统,适用于大型。

## 当你的AI助手能在代码海洋里精准导航 你有没有遇到过这种场景:问AI编码助手“认证链路最后在哪里写数据库”,它要么翻十几个文件,要么从头grep一轮,最后给出的调用关系还未必准确。仓库一大,这种临时搜索很快就会挤满上下文,效率和准确率都会打折扣。 今天要聊的开源项目Graphify,正好切入这个痛点。说白了,它做的事情其实很直接——扫描项目目录里的所有代码、文档、SQL schema、脚本、图片,甚至视频文件,把识别出的实体与关系存进一张可查询的知识图谱。Claude Code、Codex、Cursor、Gemini CLI这类AI助手接入后,可以先从图谱定位相关节点和路径,再决定需要打开哪些文件。 项目地址是:github.com/safishamsi/… 截至我查看仓库页时,这个仓库已经有约9.8万GitHub Star、9.5k Fork,默认开发分支是v8,页面上的最近提交信息已经到chore(release): 0.9.29。 从发版节奏来看,它显然不是那种README写得很热闹、代码半年没动的小工具。最近几个版本还在补CodeBuddy、MCP HTTP、Azure OpenAI、PostgreSQL introspection、Apex抽取这些集成能力。 ### 先说怎么用 官方包名有点容易踩坑,PyPI上叫graphifyy,两个y,但命令仍然叫graphify。 ``` uv tool install graphifyy graphify install ``` 装完之后,在支持的AI编码助手里跑: ``` /graphify . ``` 如果是在Codex的assistant命令里,README特别提醒要用$graphify,不是/graphify。Windows PowerShell也别写/graphify .,直接用graphify .,因为开头的斜杠会被PowerShell当成路径。 跑完之后,项目里会多一个graphify-out/目录,里面主要有3个东西: - graph.html:浏览器里看的交互式图。 - GRAPH_REPORT.md:项目的关键概念、意外关联、推荐问题。 - graph.json:完整图谱,后面查询、MCP、团队共享都靠它。 这个产物思路挺直接。以前AI助手回答项目问题,经常是临时读文件、临时总结、临时猜关系。Graphify先把项目里的实体和关系沉淀下来,后面再问问题时,不需要每次从零翻仓库。 ### 举个例子 你可以问: ``` graphify query "what connects auth to the database?" graphify path "UserService" "DatabasePool" graphify explain "RateLimiter" ``` 这几条命令分别对应查关联、找路径、解释节点。它还有MCP server,可以用stdio方式给本机助手调用,也可以用HTTP方式在团队里共享,默认HTTP端口是8080,公开到局域网时可以加--api-key。 这比单纯生成一份架构说明更实用。架构说明适合人读,但AI助手真正需要的是可反复检索的结构化上下文。Graphify暴露的MCP工具包括query_graph、get_node、get_neighbors、shortest_path这些,刚好是Agent做代码理解时经常需要的动作。 README里列的宿主很多,包括Claude Code、CodeBuddy、Codex、OpenCode、Kilo Code、Cursor、Gemini CLI、GitHub Copilot CLI、VS Code Copilot Chat、Aider、Amp、Kimi Code、Devin CLI和Google Antigra vity等。 支持列表虽长,Graphify写入各宿主的内容并不相同。Claude Code、CodeBuddy、Codex、Gemini CLI会得到对应的skill、规则文件或hook,Cursor用的是.cursor/rules/graphify.mdc。部分工具目前只能顺序执行,Graphify的并行Agent能力在这里不会完整生效。 能自动调用这些规则和工具的宿主,可以主动利用图谱;接入较浅时,用户仍能手动执行graphify query,只是每次查询都要自己发起。 代码侧主要靠tree-sitter做AST抽取,常见语言基本都覆盖了,比如Python、Ja vaScript/TypeScript、Ja va、Go、Rust、C/C++、C#、Kotlin、Swift、PHP、Ruby、Shell等。除此之外,它还扩展到了SQL schema、Terraform/HCL、MCP配置、Markdown、HTML、YAML、PDF、Office、图片、音视频、YouTube或普通URL这类材料。 不过这里有个前提。代码类材料可以本地解析,纯代码仓库不需要API key;文档、PDF、图片这类语义抽取会走你配置的模型或IDE会话。如果你的仓库里有敏感需求文档、内部截图、合同PDF,不能只看到“本地知识图谱”几个字就默认全程离线。 README的隐私说明写得比较清楚:代码文件通过tree-sitter本地处理;视频、音频用faster-whisper本地转录;文档、PDF、图片会发给AI助手或你指定的后端做语义抽取。可用后端包括Gemini、Kimi、Claude、OpenAI、DeepSeek、Azure OpenAI、AWS Bedrock、Ollama和Claude CLI。 如果你想尽量本地化,可以选Ollama: ``` graphify extract ./docs --backend ollama ``` 如果是云端模型,就按后端设置对应环境变量,比如OPENAI_API_KEY、ANTHROPIC_API_KEY、GEMINI_API_KEY、DEEPSEEK_API_KEY、AZURE_OPENAI_API_KEY、AZURE_OPENAI_ENDPOINT等。 技术栈也比较简单。主语言是Python,要求Python 3.10+,核心依赖里能看到networkx、datasketch、rapidfuzz和一大串tree-sitter grammar。可选依赖按mcp、neo4j、pdf、office、video、postgres、terraform、ollama等功能拆开,默认安装不至于太重。 ### 一些工程现场的小功能 Graphify还有一些很偏工程现场的小功能。 比如graphify hook install可以装git hook,提交后自动重建代码图谱。团队协作时,官方建议把graphify-out/也提交到仓库里,这样其他人拉下来后,助手马上就能读已有图谱,不用每个人先跑一遍完整抽取。 不过这一步别无脑做。graphify-out/graph.json里会包含项目实体、路径、关系和部分语义信息,私有仓库问题不大;开源仓库,或者包含敏感业务命名、接口名、SQL schema的仓库,提交前最好先看一眼产物内容。 再比如graphify export callflow-html可以导出可读的调用流HTML;graphify merge-graphs可以合并多张图;graphify prs会看PR、CI、review状态和图谱影响范围。里面的graphify prs --triage属于AI排序能力,会用到你配置的模型后端,别把它理解成纯本地静态分析。 Release notes里,0.8.35新增了CodeBuddy支持,并修复--update场景下同名符号被错误折叠的问题。前一个版本0.8.34则加入MCP Streamable HTTP、Azure OpenAI、PostgreSQL introspection、Apex抽取,以及图片/PDF的headless extract支持。 连续两版的变更说明项目仍在快速迭代,抽出的关系是否可靠还得单独验证。 ### 需要注意的地方 Graphify保存的是抽取结果,Agent仍需校验其中的关系。代码里的AST关系相对可靠;文档、PDF、图片依赖模型做语义抽取,可能漏掉关系,也可能把两个名称相近的概念连在一起。仓库结构本身混乱时,这个问题会更明显。 图谱中的边会标成EXTRACTED、INFERRED、AMBIGUOUS。前者来自明确抽取,后两类包含推断或歧义;Agent的答案如果依赖这些边,仍然需要回到源文件确认。 复查时发现,GitHub页面上能看到约120多个open issue,其中包括OpenAI backend参数兼容、AST跨文件继承漏抽、多仓库集成等问题或需求。接入的宿主和文件类型越多,类似的兼容问题也越容易暴露;把它接进团队主流程前,最好先用个人项目或非核心仓库验证。 查询还会留下本地日志。README提到,graphify query、graphify path、graphify explain和MCP的query_graph默认向~/.cache/graphify-queries.log写入时间、问题、语料路径、返回节点数、耗时等信息,但不保存完整的子图响应。如果不希望记录,可以设置: ``` GRAPHIFY_QUERY_LOG_DISABLE=1 ``` graph.html也有规模限制。图谱超过5000个节点后,官方建议跳过HTML,直接查询JSON: ``` graphify cluster-only ./my-project --no-viz graphify query "..." ``` 可视化只是检查图谱的一种入口,真正影响使用效果的还是query、path等查询能否命中正确关系。 从当前版本的完成度来看,我更愿意把Graphify当作一层待验证的项目记忆,用来辅助Claude Code、Codex、Cursor、Gemini CLI回答跨文件、跨模块、跨文档的问题。要承担生产级代码理解中枢的角色,它还需要证明抽取结果和各类宿主集成的稳定性。 更稳的用法是:先在一个中等规模项目里跑一遍,问几个你自己知道答案的问题,比如认证入口、数据库访问链路、核心服务调用关系、某个接口影响范围。如果这些问题命中率不错,再接到日常工作流里。 纯代码仓库可以先本地跑一遍,成本不高;如果涉及PDF、图片、内部文档,就要先看清楚模型后端、数据流向和查询日志。不要只看graph.html好不好看,重点看它能不能稳定回答你关心的那几个工程问题。

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
CAD零基础入门教程:坐标输入、图层管理与基础绘图命令

CAD零基础入门教程:坐标输入、图层管理与基础绘图命令

本文面向CAD零基础学习者,系统讲解坐标输入、图层管理与基础绘图命令的核心用法。通过分步实操与常见问题排查,帮助新手建立精确绘图习惯,掌握规范出图的基础能力。

时间:2026-09-01 16:53
CAD从入门到项目交付:绘图、标注、图块与实战工作流

CAD从入门到项目交付:绘图、标注、图块与实战工作流

掌握CAD的核心在于建立“画得准、标得清、复用快、交付稳”的工作流。本文提供从环境设置、高频命令组合、标注规范、图块标准化到项目分阶段交付的完整路径,帮助初学者避免常见返工陷阱,独立完成可检查、可复用、可打印的工程图纸。

时间:2026-09-01 16:52
Claude Code 登录指南:个人、Teams 与企业账号区分与授权步骤

Claude Code 登录指南:个人、Teams 与企业账号区分与授权步骤

本文详细解析 Claude Code 登录前的账号类型区分方法,涵盖个人订阅、Teams 席位与企业 Enterprise 席位的授权路径差异。提供终端登录命令、环境变量排查及常见异常处理步骤,帮助用户快速完成正确授权并避免登录路径混淆。

时间:2026-09-01 14:27
Claude Code 文件修改前的权限模式配置与命令审批指南

Claude Code 文件修改前的权限模式配置与命令审批指南

本文详细介绍Claude Code在修改文件前的权限模式配置方法,包括defaultMode可选值、permissions allow与deny规则设置、多层级配置文件管理以及 status验证技巧,帮助开发者安全高效地使用AI编程助手。

时间:2026-09-01 14:12
Claude Code接入VS Code后先测扩展和终端命令

Claude Code接入VS Code后先测扩展和终端命令

在VS Code中接入Claude Code后,建议优先验证扩展面板与集成终端两条入口。本文提供标准检查顺序、关键命令与常见故障排查路径,帮助你快速确认环境就绪,避免后续开发受阻。

时间:2026-09-01 14:10
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全