开发与工程 ast-parsingcode-analysisknowledge-graphgraphragtree-sitterclimcp-server

Graphify – 将任何代码库转换为可查询的知识图谱

将代码、文档、SQL 模式和 PDF 转换为可查询的知识图谱,在 AI 编码助手中用 /graphify 替代 grep。

FollowAgents 评估 · FARS-2.1
谨慎使用
64/ 100 五分制 3.2 / 5
1 2 3 4 5 6
1信任安全18 / 29 · 3.1/5

证据显示:安全策略详细说明了威胁模型,包括URL验证、路径遍历防护、XSS清理、提示注入缓解等,体现了最小权限原则。安装和操作需要用户明确执行命令,如`graphify install`,且默认不进行网络调用。数据流透明:代码本地解析,文档/媒体通过用户配置的API密钥进行语义处理,README明确说明。敏感数据处理:不存储凭据或API密钥,但依赖用户配置的API密钥,未明确说明密钥存储方式。依赖安全:CI包含bandit和pip-audit,但非阻塞(continue-on-error),且未提供审计结果。外部影响:默认无网络监听,但`ingest`子命令可获取URL,需用户明确提供。回滚:提供`graphify uninstall`,但未说明数据回滚或恢复机制。来源归属:README和pyproject明确标识了仓库和包名,但发布者未验证。扣分:回滚机制不完整,依赖安全扫描非阻塞。

2可靠稳定9 / 14 · 3.2/5

证据显示:README、SECURITY.md、pyproject.toml和CI配置在功能描述上一致,无矛盾。依赖在pyproject中明确列出,且CI使用uv.lock锁定版本,确保可重现安装。失败消息:SECURITY.md和代码注释中提供了错误处理说明,如损坏的graph.json恢复消息。扣分:未提供实际运行测试,无法验证自洽性,但静态证据充分。

3适用触发12 / 18 · 3.3/5

证据显示:README详细说明了目标受众(AI编码助手用户)和多种使用场景(代码、文档、PDF等)。能力边界明确:代码本地解析,文档/媒体需配置API密钥,且列出支持的文件类型和可选扩展。触发精度:`/graphify`命令和`graphify install`明确,且针对不同平台有特定安装命令。环境适配:支持多种操作系统和Python版本,提供安装说明。扣分:未提供实际运行验证,但静态证据充分。

4规范维护11 / 18 · 3.1/5

证据显示:README结构清晰,包含安装、使用、平台支持、文件类型、安全等章节。安装说明详细,包括多种安装方式和常见问题。命名稳定:包名`graphifyy`和命令`graphify`明确,且README警告其他`graphify*`包不相关。示例和FAQ:README包含使用示例和常见问题解答。已知限制:SECURITY.md和README提及安全模型和限制。许可证:Apache-2.0,LICENSE文件完整。版本控制:pyproject版本0.9.37,但未提供CHANGELOG。维护责任:README和SECURITY.md提供了联系方式和报告漏洞的途径。扣分:缺少CHANGELOG。

5有效结果9 / 13 · 3.5/5

证据显示:输出包括graph.html、GRAPH_REPORT.md和graph.json,可直接使用。边际价值:将代码库映射为知识图谱,提供查询、路径、解释等功能,相比传统grep有独特价值。成本效益:代码解析本地免费,文档/媒体需API密钥,但提供免费选项。扣分:未提供实际运行验证,但静态证据充分。

6证据核验5 / 8 · 3.1/5

证据显示:README中的基准测试链接到BENCHMARKS.md,但未提供具体数据。安全声明在SECURITY.md中详细说明,但未提供测试证据。事实与推断分离:README明确区分EXTRACTED和INFERRED边,但未提供验证方法。扣分:基准测试数据未在提供文件中,无法验证。

证据充分度: 评估于 2026年8月9日 审查版本 09a34ad87a6c
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
使用前请注意
  • 发布者身份未验证,需谨慎对待。
  • 依赖安全扫描非阻塞,可能存在未修复的漏洞。
  • 回滚机制不完整,仅提供卸载命令,无数据恢复。
  • 基准测试数据未在提供文件中,无法验证性能声明。
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Graphify 是一个本地优先的代码分析工具,集成到 Claude Code、Cursor、Codex、Gemini CLI 等 AI 编码助手中。它使用 tree-sitter 对代码进行确定性 AST 解析,无需 LLM 调用即可生成知识图谱,支持 40 多种语言的跨文件调用/导入/继承等关系。对于文档、PDF、图片和视频,则通过所选后端模型进行语义提取。每次连接都会标记为 EXTRACTED 或 INFERRED,并附带置信度标签。输出包括 graph.html 交互式可视化、GRAPH_REPORT.md 摘要和 graph.json 完整图谱,可直接查询。该工具提供查询、路径和解释命令,并支持 MCP 服务器,使助手能结构化访问图谱。

Graphify 通过 /graphify 命令对当前目录运行,输出 graphify-out/ 下三个文件:graph.html、GRAPH_REPORT.md 和 graph.json。它使用 tree-sitter 解析代码,提取跨文件关系如调用、导入、继承和混入。用户可通过 graphify query "<问题>" 进行自然语言查询,graphify path "A" "B" 查找两个概念间最短路径,graphify explain "符号" 查看节点详情和连接。它提供 graphify install 命令将技能注册到助手,支持多平台如 Claude Code、Gemini CLI 等。也支持 graphify export callflow-html 导出架构图,graphify hook install 在提交后自动重建图谱。它还能添加 URL(论文、视频)以扩展图谱。

  1. 开发者希望理解不熟悉的代码库,通过可视化图谱和查询快速定位关键概念和模块。
  2. 在代码审查或调试时,需要追踪函数或服务之间的依赖关系,使用 path 命令查找连接路径。
  3. 团队希望将代码知识共享给新成员,提交 graphify-out/ 到 git,让他们立即获得图谱。
  4. 在持续集成中,使用 headless 提取(graphify extract)自动更新图谱,无需人工干预。
  5. 对于包含文档和 PDF 的项目,使用语义提取将非代码资产映射到同一图谱中。
  6. 大规模项目需要识别架构热点,利用 god nodes 和 communities 功能发现高连接度概念。

这个 Agent 有哪些优点和局限?

优点
  • 本地确定性 AST 解析,无 LLM 调用,保护代码隐私,离线可用。
  • 每条连接都有置信度标签,区分显式提取与推断关系。
  • 支持多平台集成(20+ 助手),并提供 MCP 服务器便于工具访问。
  • 无向量存储,使用真实图谱,支持路径查询和社区检测。
局限
  • 文档、PDF、图片等需要 LLM 调用,需配置 API 密钥或使用 IDE 会话。
  • 对于大型代码库,图谱文件可能很大(512 MiB 限制),浏览器打开 HTML 可能卡顿。
  • 学习曲线:需要熟悉 CLI 命令和配置选项。
  • 安装可能遇到 PATH 问题,需要额外配置(如 uv tool update-shell)。

如何安装或部署这个 Agent?

安装命令:uv tool install graphifyy 或 pipx install graphifyy。然后运行 graphify install 注册技能。需要 Python 3.10+、uv 或 pipx。可选扩展:uv tool install "graphifyy[pdf]"、"graphifyy[office]"、"graphifyy[video]" 等。

如何使用这个 Agent?

在 AI 助手中输入 /graphify . 生成图谱。然后可使用 graphify query "<问题>"、graphify path "A" "B"、graphify explain "符号" 查询。对于 headless 提取,设置 API 密钥并运行 graphify extract ./docs --backend claude 等。也可以启动 MCP 服务器:python -m graphify.serve graphify-out/graph.json。

这个 Agent 与同类方案有什么区别?

Graphify 与 mem0 和 supermemory 在 LOCOMO 基准上的 recall@10 相比有显著优势(0.497 对比 0.048 和 0.149),但 QA 准确率略低于 supermemory(45.3% vs 49.7%)。与 RAG 相比,它不使用向量存储,而是构建可遍历的图谱。

常见问题

Graphify 如何处理代码隐私?
代码文件完全在本地解析,不会离开机器。文档和媒体文件则需要发送到 LLM 进行语义提取,但可以配置使用本地 Ollama 或指定后端。
是否需要 API 密钥?
如果只处理代码,不需要 API 密钥。处理非代码内容时需要 Gemini、Claude、OpenAI 或其他后端的密钥,或者使用 IDE 会话。
Graphify 与 RAG 有何不同?
Graphify 不使用向量嵌入,而是构建显式知识图谱,支持路径查询和社区检测。每条连接都有解释,可追溯。
如何让助手始终使用图谱?
运行 graphify claude install 或相应平台的命令,会写入配置文件(如 CLAUDE.md、AGENTS.md),并安装 hook 强制优先使用图谱查询。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents