Graphify 简明指南

Token总是消耗太快?Graphify了解一下

是什么

Graphify 是一个将代码文件夹转化为知识图谱的 AI 助手技能。它读取你的代码、文档、PDF 和图片,自动提取其中的概念和关系,构建成一张可查询的知识网络。之后你问 AI 任何架构问题,它都可以直接查图回答,而不是重新读一遍所有文件------这能节省高达 71 倍的 token 消耗。


支持谁

Graphify 支持绝大多数主流 AI 编程助手,安装命令略有不同:

  • Cursorgraphify cursor install
  • Claude Codegraphify install
  • Codexgraphify install --platform codex
  • OpenCodegraphify install --platform opencode
  • OpenClawgraphify install --platform claw
  • Factory Droidgraphify install --platform droid
  • Windsurf、Cline、Continue、Aider、GitHub Copilot 也均支持

能做什么

理解新项目时,你不再需要手动翻目录。输入 /graphify .,几分钟后就能得到一份交互式图谱和文字报告,里面标出了哪些是核心模块、哪些文件之间有隐藏依赖、以及哪些跨文件的概念其实是相关的。日常开发中,改完代码运行 --update 就能增量刷新图谱,切换分支或提交代码时 Git 钩子也可以自动触发更新。你还可以直接向图谱提问,比如"认证流程涉及哪些函数",AI 会基于图结构给出准确答案。


优势在哪

最大的优势是跨会话持久化。传统方式每次对话都要把相关代码塞给 AI,token 消耗大且容易遗漏。Graphify 把知识压缩成一张紧凑的图谱存成 graph.json,下次打开对话直接查询即可。其次是多模态支持------截图里的架构图、PDF 中的论文图表、白板照片,都能被理解并融入图谱。每个推断出的关系还附带置信度分数,让你清楚哪些是代码里明确写的,哪些是 AI 推测的。


安装教程

首先确保 Python 版本在 3.10 以上。在终端执行:

bash 复制代码
pip install graphifyy

注意包名末尾是两个 y。安装完成后,cd 到你的项目根目录,然后执行:

bash 复制代码
graphify cursor install

如果你用的是其他 AI 助手,把 cursor 换成对应的平台名即可。安装成功后可以用 graphify --version 验证。若终端提示找不到命令,试试 python -m graphify --help


使用教程

打开 Cursor 的 Chat 面板,输入 /graphify .,Graphify 就会开始扫描当前目录。首次扫描耗时取决于项目大小,中型项目大约 5-10 分钟。完成后在项目根目录会多出一个 graphify-out 文件夹,里面有三个主要文件:graph.html 是交互式图谱,可以在浏览器里点击探索;GRAPH_REPORT.md 是文字报告,列出了核心节点和意外连接;graph.json 是持久化的图谱数据,供后续查询使用。

日常使用中,代码有改动时运行 /graphify . --update 即可增量更新,无需重新全量扫描。想深入探索时,可以用 /graphify query "数据库连接用了哪些中间件" 直接提问,或者用 /graphify path "UserAuth" "SessionStore" 查找两个概念之间的关联路径。


流程图

flowchart LR A[输入 /graphify .] --> B[扫描代码/文档/图片] B --> C[生成图谱和报告] C --> D[graph.html 交互视图] C --> E[GRAPH_REPORT.md 报告] C --> F[graph.json 持久数据] F --> G[后续直接查询图谱] G --> H[节省 71 倍 token]

速查表

想要做什么 输入什么
首次全量扫描 /graphify .
增量更新 /graphify . --update
只重新聚类 /graphify . --cluster-only
语义提问 /graphify query "问题"
查找节点间路径 /graphify path "节点A" "节点B"
解释某个节点 /graphify explain "节点名"
启动监控模式 /graphify . --watch
安装 Git 钩子 graphify hook install
导出为 Neo4j /graphify . --neo4j

常见问题

首次扫描太慢怎么办? 在项目根目录创建 .graphifyignore 文件,把 node_modules/dist/build/ 等目录写进去排除掉,能大幅缩短扫描时间。

graph.json 太大导致 Cursor 报错怎么办? 执行下面这条命令可以压缩成紧凑格式:python -c "import json; from pathlib import Path; p=Path('graphify-out/graph.json'); d=json.loads(p.read_text()); p.write_text(json.dumps(d, separators=(',', ':')))"

在终端输入 /graphify 报错? /graphify 只能在 AI 助手的对话框里输入,不是在终端里执行的。终端里请用 graphifypython -m graphify

如何与团队共享图谱?graphify-out/GRAPH_REPORT.mdgraphify-out/graph.json 提交到 Git 仓库,其他人克隆后可以直接查询,无需重新扫描。

资源

GitHub 仓库:github.com/safishamsi/... 中文文档:github.com/chencore/gr... PyPI 包:pypi.org/project/gra... 问题反馈:github.com/safishamsi/...

相关推荐
代码羊羊1 小时前
rust-字符串(切片)、元组、结构体、枚举、数组
开发语言·后端·rust
JavaGuide2 小时前
万字详解 RAG 向量索引算法和向量数据库
后端·面试
舒一笑2 小时前
Docker 离线镜像导入后变成 <none>:<none>?一文讲透原因、排查与正确打包姿势
后端·docker·容器
Nyarlathotep01132 小时前
并发集合类(1):CopyOnWriteArrayList
java·后端
霸道流氓气质2 小时前
SpringBoot中调用mybatis方法提示映射文件未找到Invalid bound statement(not found)的奇葩解决
spring boot·后端·mybatis
Lucifer三思而后行2 小时前
Navicat Premium× 金仓数据库体验 - 数据生成深度体验
后端
Lucifer三思而后行2 小时前
MySQL 8 新特性:全局参数持久化!
后端
Lucifer三思而后行2 小时前
Linux 配置 VNC 远程桌面
后端