Skip to content

safishamsi/graphify

⭐ 45,847  ·  Python  ·  GitHub 仓库

AI编码助手技能(支持Claude Code、Codex、OpenCode、Cursor、Gemini CLI等工具)。将任意代码文件夹、SQL模式、R脚本、Shell脚本、文档、论文、图像或视频转化为可查询的知识图谱。应用代码、数据库模式及基础设施整合于同一图谱中。

antigravity claude-code codex gemini graphrag knowledge-graph leiden openclaw

一句话总结

将任意包含代码、文档和图片的文件夹,转化为一个可查询的知识图谱,并带有诚实的边标记系统。

🔥 核心能力与独特卖点

  • 多模态知识图谱构建 – 将代码(通过 tree-sitter AST)、PDF、Markdown、图片、截图和图表,统一摄入到单一图谱中。解决了在大型、混合格式代码库中导航的痛点——代码、文档和设计工件之间的关系原本不可见。
  • 诚实边标记系统 – 每条关系都被标记为 EXTRACTED(提取)、INFERRED(推断)或 AMBIGUOUS(模糊),清晰区分已发现连接与推测连接。这是一个突出的差异化优势,让工程师对查询结果充满信心,避免盲目信任推测性链接。
  • 持久化图谱与交互式输出 – 生成交互式 HTML 图谱(vis.js)、Obsidian 仓库、维基百科风格的 Wiki 文章,以及持久化的 graph.json。数周后仍可查询图谱,无需重新读取文件,每次查询相比原始文件读取可减少高达 71.5 倍的 Token 消耗
  • 智能增量更新 – SHA256 缓存确保重新运行时仅处理已变更文件;--update 将新提取内容合并到现有图谱中;--watch 在文件变化时自动同步。彻底告别全量重建的痛点,零手动操作即可保持知识库最新。
  • Git 集成graphify hook install 添加一个提交后钩子,每次提交后自动重建图谱。你的知识图谱与版本控制工作流保持同步,无需后台进程。

技术架构

组件技术作用
图谱引擎NetworkX + Leiden 聚类(graspologic)核心图谱构建与社区检测
代码解析tree-sitter代码文件的 AST 提取
LLM 提取Claude从文档、图片和非代码工件中提取概念/关系
可视化vis.js交互式 HTML 图谱输出
缓存SHA256 哈希增量更新检测与变更追踪
架构完全本地化,无需服务器零基础设施依赖;输出包括 graph.htmlobsidian/ 仓库、wiki/ 文章、GRAPH_REPORT.mdgraph.jsoncache/ 目录

快速入门指南

bash
pip install graphifyy && graphify install
bash
mkdir -p ~/.claude/skills/graphify
curl -fsSL https://raw.githubusercontent.com/safishamsi/graphify/v1/skills/graphify/skill.md \
  > ~/.claude/skills/graphify/SKILL.md
bash
/graphify .                        # 对当前目录运行
/graphify ./raw                    # 对指定文件夹运行
/graphify ./raw --mode deep        # 更激进的 INFERRED 边提取
/graphify ./raw --update           # 仅重新提取变更文件,合并到现有图谱
/graphify add https://arxiv.org/abs/1706.03762        # 获取论文,保存,更新图谱
/graphify add https://x.com/karpathy/status/...       # 获取推文
/graphify query "what connects attention to the optimizer?"
/graphify path "DigestAuth" "Response"
/graphify explain "SwinTransformer"
/graphify ./raw --watch            # 文件变化时自动同步图谱
/graphify ./raw --wiki             # 构建可被 Agent 爬取的 Wiki
/graphify ./raw --svg              # 导出 graph.svg
/graphify ./raw --graphml          # 导出 graph.graphml(Gephi、yEd)
/graphify ./raw --neo4j            # 为 Neo4j 生成 cypher.txt
/graphify ./raw --mcp              # 启动 MCP stdio 服务器
graphify hook install              # 提交后 Git 钩子

优点、缺点与使用场景

优点

  • 大幅减少 Token 消耗 – 在 50+ 文件的混合语料上最高可达 71.5 倍,使 Agent 查询成本大幅降低、速度显著提升
  • 完全多模态 – 代码、文档、图片、PDF、截图和白板照片,全部融入一个图谱
  • 跨会话持久化graph.json 可在数周后直接查询,无需重新读取文件
  • 诚实边标记 – 清晰区分 EXTRACTED(已发现)、INFERRED(已推断)和 AMBIGUOUS(模糊)连接
  • 多种导出格式 – HTML、Obsidian、Wiki、Neo4j、SVG、GraphML、MCP 服务器

缺点

  • 需要 Claude Code 和 Python 3.10+ – 并非独立工具,依赖 Claude 生态系统
  • 文档/图片变更需要 LLM 重新处理 – 仅代码 AST 重建是即时的;文档和图片变更需要完整的 LLM 提取流程
  • 对于极小语料库,Token 减少效果有限(约 1 倍) – 对于少于约 10 个文件的项目,价值主张会减弱
  • PyPI 包临时命名为 graphifyy – 由于命名冲突,安装命令使用了非直观的包名

谁不应该使用?

  • 处理小型、单一语言项目的开发者(例如一个 6 文件的 Python 脚本)– 图谱构建的开销无法通过微小的 Token 节省来证明其合理性
  • 无法访问 Claude 的团队 – 该工具与 Claude 紧密耦合用于 LLM 提取;未提及替代 LLM 后端
  • 需要实时、流式更新的用户 – 虽然存在 --watch,但文档/图片变更需要非即时的 LLM 处理
  • 零文档或非代码工件的项目 – 如果只有代码,多模态的价值将完全丧失

理想使用场景

  • 大型、多语言单体仓库 – 发现前端代码、后端服务、数据库模式和基础设施配置之间的隐藏连接
  • 研究仓库 – 将论文(PDF)、代码实现、实验笔记和白板照片整合到一个可查询的图谱中
  • 新团队成员入职 – 让新员工查询“认证与支付管道之间有何关联”,并立即获得带标记的关系图谱
  • 遗留代码库考古 – 对无文档的代码和文档文件夹运行,揭示隐式架构和依赖关系
  • AI Agent 知识库 – 构建持久化、可被 Agent 爬取的 Wiki,每次查询减少 71 倍 Token 成本

社区与活跃度

拥有 45,847 颗星,最后更新于 2026 年 5 月 10 日,Graphify 显然在开发者社区中引起了强烈共鸣。这并非一个沉寂的项目——它正在积极维护并迅速获得关注。其主题标签(antigravity、claude-code、codex、gemini、graphrag、knowledge-graph、leiden、openclaw、rag、skills、tree-sitter)表明,该项目正将自己定位在知识图谱、RAG 和 AI 编码助手的交汇点上。这种势头表明,该工具正在解决开发者处理异构代码库时一个真实而痛苦的痛点。如果你正在为团队评估这个工具,那么你看到的正是一个拥有强大社区验证和积极开发状态的项目。

热点项目数据来自 GitHub API,实时更新