graphify 技术解析:把任意代码库与文档变成可查询的知识图谱

发布时间:2026/11/4 6:03:53

graphify 技术解析:把任意代码库与文档变成可查询的知识图谱 graphify 技术解析把任意代码库与文档变成可查询的知识图谱【免费下载链接】graphifyTurn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.项目地址: https://gitcode.com/GitHub_Trending/graph/graphifygraphify 是一个 AI 编码助手技能Skill在 Claude Code、Codex、OpenCode、Cursor、Gemini CLI、GitHub Copilot CLI、VS Code Copilot Chat、Aider、OpenClaw、Factory Droid、Trae、Hermes、Kiro、Google Antigravity 等助手中输入/graphify它会读取你的文件、构建一张知识图谱并把代码库中你自己都未必察觉的结构关系交还给你。本篇基于仓库中的 印地语版 README与 英文 README 同源展开并结合 docs/how-it-works.md 与核心源码讲清 graphify 的三阶段流水线、置信度标记体系、输出产物、安装与全部常用命令读完即可在自己的仓库上完整落地并验证每一步行为。为什么需要知识图谱而不是向量检索graphify 的定位可以用三句话概括完全多模态。代码、PDF、Markdown、截图、图表、白板照片、其他语言中的图片乃至音视频文件graphify 都能从中抽取概念与关系并统一接入同一张图。视频通过 faster-whisper 在本地转写。代码侧通过 tree-sitter AST 支持 25 种编程语言Python、JS、TS、Go、Rust、Java、C、C、Ruby、C#、Kotlin、Scala、PHP、Swift、Lua、Zig、PowerShell、Elixir、Objective-C、Julia、Verilog、SystemVerilog、Vue、Svelte、Dart。图拓扑驱动聚类而非向量嵌入。Claude 抽取的语义相似边semantically_similar_to本来就在图里因此社区发现算法Leiden直接被图结构影响不需要单独的 embedding 步骤或向量数据库。每条边都可解释。每个关系都带有EXTRACTED、INFERRED或AMBIGUOUS标签你能始终分清直接读到的和推断出来的。仓库中 worked/ 目录保留了真实语料的输入与完整输出GRAPH_REPORT.md、graph.json、review.md例如 worked/httpx/GRAPH_REPORT.md可用于对照本文描述自行复现验证。三阶段流水线从文件到可查询图graphify 按三个阶段处理文件这与 docs/how-it-works.md 中的描述一一对应也是 docs/translations/README.hi-IN.md 中यह कैसे काम करता है一节的主体Pass 1 — 代码结构本地、确定性、不调用任何 LLM。tree-sitter 解析代码文件抽取类、函数、导入、调用图与行内注释全程本地完成。纯代码语料会完全跳过 Pass 3语义抽取只保留给文档、论文、图片与转写文本。这一阶段由 graphify/extractors/ 下的各语言抽取器实现engine.py、go.py、rust.py、sql.py等SQL 文件还得到特殊处理表、视图、外键与 JOIN 关系被确定性地抽取出来。Pass 2 — 音视频本地、不调用 API。视频与音频由 faster-whisper 本地转写。转写提示词会用你代码图中度最高的god nodes做领域种子使转写文本聚焦于你的项目语境转写结果带缓存重跑时跳过已处理文件。Pass 3 — 文档、论文、图片LLM 子代理并行、消耗 tokens。Claude 子代理在 Markdown、PDF、图片与转写文本上并行运行每个子代理读取一批文件并输出 JSON 片段节点、边、组关系片段被合并进一张 NetworkX 图。合并后执行 Leiden 社区发现做聚类最终导出为交互式 HTML、可查询 JSON 与审计报告。聚类这一步在 graphify/cluster.py 中实现优先调用 graspologic 的 Leiden其中 graphify/cluster.py 的_native_leiden还会绕过 graspologic 包导入直连其 Rust 原生扩展以避免约 7–19 秒的一次性导入开销未安装时回退到 networkx 内置的 Louvainresolution 1.0得到更多更小的社区 1.0则得到更少更大的社区——这正是/graphify --cluster-only --resolution 1.5这类命令的底层机制。增量处理由 SHA256 内容哈希缓存支撑每个被抽取的文件都按内容指纹记录重跑时完全跳过未变更文件只有新增或修改的文件重新走抽取。实现见 graphify/cache.py缓存落在graphify-out/cache/。从源码结构看AST 缓存条目还会按包版本与缓存键 schema 做命名空间隔离cache/ast/v{version}-s{schema}/而语义缓存刻意不做版本化以避免每次发版重复计费——这是文档SHA256 कैश一节的源码级解释。输出产物 graphify-out/执行/graphify .后得到如下目录与原文档一致graphify-out/ ├── graph.html # 交互式图谱 —— 在任意浏览器打开点击节点、搜索 ├── GRAPH_REPORT.md # god nodes、意外连接、建议问题 ├── graph.json # 持久化图谱 —— 数周后仍可直接查询 └── cache/ # SHA256 缓存 —— 重跑时只处理变更过的文件graph.html可在任意浏览器中打开支持点击节点、过滤与搜索GRAPH_REPORT.md是高亮点报告见下文报告里有什么graph.json采用 NetworkX node-link 格式每个节点含id、label、file_typecode/document/paper/image/rationale、source_file每条边含source、target、relationcalls、imports、implements、semantically_similar_to等动词短语、confidence标签与confidence_score仅 INFERRED 边3 个及以上节点的组关系超边存放在G.graph[hyperedges]中。报告生成逻辑可见 graphify/report.pygod nodes 即按边数degree排序输出。忽略规则.graphifyignore用.graphifyignore文件排除不需要的目录语法与.gitignore相同含!取反# .graphifyignore vendor/ node_modules/ dist/ *.generated.py从源码结构看该文件的匹配逻辑分布在 graphify/detect.py 与 graphify/extract.py 中英文 README 进一步说明.gitignore会被自动读取两者同时存在时合并生效且.graphifyignore后评估冲突时胜出子目录作用域与 git 一致。安装前提Python 3.10见 pyproject.toml 中requires-python 3.10以及上述任意一个 AI 编码助手。# 推荐 —— Mac 与 Linux 上无需配置 PATH 即可工作 uv tool install graphifyy graphify install # 或用 pipx pipx install graphifyy graphify install # 或用普通 pip pip install graphifyy graphify install官方包名提示PyPI 包名是graphifyy双写 y与 pyproject.toml 中name graphifyy一致PyPI 上其他graphify*命名的包与本项目无关。CLI 命令始终叫graphify入口定义见 pyproject.toml 的[project.scripts]graphify graphify.__main__:main另有一个graphify-mcp入口指向 graphify/serve.py。平台支持原文档给出完整的平台安装命令表完整继承如下平台安装命令Claude Code (Linux/Mac)graphify installClaude Code (Windows)graphify install自动识别或graphify install --platform windowsCodexgraphify install --platform codexOpenCodegraphify install --platform opencodeGitHub Copilot CLIgraphify install --platform copilotVS Code Copilot Chatgraphify vscode installAidergraphify install --platform aiderOpenClawgraphify install --platform clawFactory Droidgraphify install --platform droidTraegraphify install --platform traeGemini CLIgraphify install --platform geminiHermesgraphify install --platform hermesKiro IDE/CLIgraphify kiro installCursorgraphify cursor installGoogle Antigravitygraphify antigravity install安装完成后打开你的 AI 编码助手并输入/graphify .各平台安装行为的差异写哪些指令文件、装哪些 hook在 graphify/install.py 与各skill-*.md文件如 graphify/skill.md中定义安装逻辑可用 tests/test_install.py 与 tests/test_install_roundtrip.py 对照验证。使用构建、查询与维护原文档的完整命令清单直接可用/graphify # 当前目录 /graphify ./raw # 指定文件夹 /graphify ./raw --update # 只重新抽取变更过的文件 /graphify ./raw --directed # 有向图 /graphify ./raw --no-viz # 仅报告 JSON /graphify ./raw --obsidian # 生成 Obsidian vault /graphify add https://arxiv.org/abs/1706.03762 # 抓取论文 /graphify add video-url # 转写视频 /graphify query attention 和 optimizer 之间有什么联系? /graphify path DigestAuth Response /graphify explain SwinTransformer graphify hook install # 安装 Git hooks graphify update ./src # 重新抽取代码文件无需 LLM graphify watch ./src # 自动同步图谱更新这些命令背后分别对应 CLI 子命令实现graphify/cli.py、graphify/main.pyquery对graph.json做一次范围化子图检索适合X 和 Y 之间如何连接这类问题path计算两节点间最短路径逐步列出每一跳explain输出节点的来源位置、所属社区、度数与完整连接列表hook install注册 post-commit / post-checkout hooks使提交与切分支时自动重建图谱纯 AST无 API 成本update只走确定性 AST 路径不调用 LLMwatch基于文件变更监听自动同步。query/path/explain的行为分别由 tests/test_query_cli.py、tests/test_path_cli.py、tests/test_explain_cli.py 覆盖可作为行为契约参考。报告里有什么原文档आपको क्या मिलता है一节列出的六项能力逐条对应源码可查证God nodes枢纽节点——连接度最高的概念一切数据都流经它们。意外连接surprising connections——按组合评分排序代码-论文边会获得更高排名。建议问题suggested questions——4–5 个该图特别擅长回答的问题。为什么rationale——docstring、行内注释与设计动机被抽取为rationale_for节点链接到所解释的代码。置信度分数——每条INFERRED边都带confidence_score0.0–1.0。按 docs/how-it-works.md 的离散标准EXTRACTED 边恒为 1.0INFERRED 边取 0.95几乎确定显式跨文件引用且只有一个合理目标、0.85强证据命名与上下文吻合、0.75合理上下文相关但不显式、0.65弱仅命名相似、0.55推测AMBIGUOUS边则被标记供人工复核。Token 基准——每次运行后自动打印。混合语料上相比直接读原始文件每次查询减少 71.5 倍 tokens。该数据在 docs/how-it-works.md 中有完整基准表52 文件混合语料 71.5x、4 文件 5.4x、6 文件约 1x并说明 token 节省随语料规模增长——小语料已在上下文窗口内时图的价值在于结构清晰度而非压缩。隐私与数据边界原文档的隐私一节给出了明确的数据流边界这也是 graphify 的架构设计原则代码文件通过 tree-sitter 在本地处理不出机器纯代码语料可完全离线运行音视频文件通过 faster-whisper 在本地转写不出机器文档、论文、图片其内容会发往你 AI 助手的模型 API 做语义抽取经由/graphify技能使用你 IDE 会话中的模型无遥测、无跟踪、无分析统计。小结graphify 的核心工程取舍在 docs/translations/README.hi-IN.md 中已经说得很清楚代码侧走确定性 AST 抽取零成本、可复现、可增量语义侧才动用 LLM而聚类完全由图拓扑驱动、不引入向量库。结合 graphify/cluster.py、graphify/cache.py 与 docs/how-it-works.md 可以看到Leiden/Louvain 回退链、SHA256 内容缓存与 EXTRACTED/INFERRED/AMBIGUOUS 三级置信度标签是这套可查询、可审计、可增量图谱的三个支柱。安装graphifyy包、graphify install注册技能后对任意文件夹执行/graphify .即可得到graph.html、GRAPH_REPORT.md与graph.json三个产物并在此之上用query、path、explain持续查询。【免费下载链接】graphifyTurn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.项目地址: https://gitcode.com/GitHub_Trending/graph/graphify创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/26 2:26:44

第一次参加黑客松:从报名到提交的48小时避坑清单

第一次参加黑客松:从报名到提交的48小时避坑清单 【免费下载链接】A-to-Z-Resources-for-Students ✅ Curated list of resources for developers 项目地址: https://gitcode.com/GitHub_Trending/at/A-to-Z-Resources-for-Students 第一次报名黑客松&#…

2026/11/4 5:58:53

SCRFD人脸检测:300%性能提升的工程拆解与优化实践

人脸检测这个方向,这几年从“能检出”卷到了“又快又准又小”,真正能在生产环境里跑出漂亮指标的方案并不多。SCRFD 算是其中一个让我反复回看、反复拆解的实现——它把检测精度和推理效率这对老矛盾处理得相当漂亮,很多团队在边缘设备上做人…

2026/11/4 5:58:53

SAP Data Services 连接 MySQL:Data Store 与 ODBC 配置入门

简介:面向使用 SAP Data Services 进行数据集成与 ETL 开发的初中级技术人员,这份文档围绕 SAP Data Services 连接 MySQL 的配置流程展开,重点解决数据源建立、ODBC 连通性验证及元数据导入等常见问题。压缩包共 1 个 docx 文件,…

2026/11/4 5:58:53

MySQL数据可视化实战:从数据清洗到图表展示

1. 项目概述MySQL作为最流行的开源关系型数据库,每天都有海量数据在其中流转。但原始数据就像未经雕琢的玉石,只有通过可视化才能真正展现其价值。这个实战指南将带你从零开始,掌握将MySQL数据转化为直观图表的核心技能。我在金融、电商等多个…

2026/11/4 5:58:53

海思Hi3751V350电视Android 9.0字体替换全流程与踩坑指南

智能电视和机顶盒这类嵌入式Android设备上做字体替换,跟手机上的操作完全不是一回事。手机上换个字体,装个主题包或者用Magisk模块挂载一下就行,但在Hi3751V350这种海思芯片方案的Android 9.0电视系统上,字体文件是烧录在系统分区…

2026/11/4 5:58:53

[数字图像处理]数字图像的有理数倍缩放(缩小与放大)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/4 5:53:52

传统客运企业转型:新能源与智慧运营实践

1. 传统客运企业的转型突围之路在客运行业摸爬滚打多年,我亲眼见证了太多传统客运企业面临的困境:高铁网络日益完善、私家车保有量持续攀升、网约车平台蚕食市场份额...这些外部压力让传统道路客运企业的生存空间不断被挤压。烟台星龙客运的案例给我们提…

2026/11/3 7:47:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/3 14:24:53

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/4 0:03:20

AI辅助技术栈评估:提升研发决策效率60%

1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年…

2026/11/4 0:03:20

从生成Token到直接决策:Jev如何重塑AI Agent工程实践

1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你…

2026/11/4 0:03:20

32G统一内存跑大模型:内存账、TPS实测与端云分流

想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统…

2026/11/3 7:47:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/3 14:24:53

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑