Overview
graphify builds a knowledge graph out of whatever you point it at — source code, Markdown notes, PDFs, screenshots and diagrams — and then lets you and your coding agent query that graph instead of re-reading the raw files. It runs locally: code is parsed deterministically with tree-sitter into an AST plus a call-graph pass, while docs, papers and images are turned into concepts and relationships by an LLM. There is no vector store and no Neo4j server required; the stack is NetworkX, Leiden community detection via graspologic, tree-sitter and vis.js.
A run writes a `graphify-out/` directory containing an interactive `graph.html` you can click through, an Obsidian-compatible vault, a persistent `graph.json` you can query weeks later, a `GRAPH_REPORT.md` that surfaces 'god nodes' (the highest-degree concepts everything routes through) and surprising cross-document connections, and a SHA256 cache so re-runs only reprocess changed files. Every edge is labelled `EXTRACTED`, `INFERRED` or `AMBIGUOUS`, so it stays clear which relationships were read out of the source and which were guessed.
It is designed to be driven by an agent. It installs as a `/graphify` skill for Claude Code and can also expose the graph over MCP with `--mcp`, so an agent can ask for a path between two symbols or an explanation of one. A `--wiki` mode emits Wikipedia-style Markdown articles with an `index.md` entry point, which lets any agent navigate the knowledge base by reading files. A `--watch` mode and a post-commit git hook keep the graph in sync as code changes.
What it does
- Deterministic AST extraction with tree-sitter for Python, TypeScript, JavaScript, Go, Rust, Java, C/C++, Ruby, C#, Kotlin, Scala and PHP, plus a call-graph pass
- Multimodal ingestion — Markdown and text, PDFs with citation mining, and images (screenshots, diagrams, whiteboard photos) via model vision
- Runs fully locally on NetworkX + Leiden communities; no vector store and no Neo4j server needed
- Every edge tagged EXTRACTED, INFERRED or AMBIGUOUS so you can tell findings from guesses
- Outputs an interactive graph.html, an Obsidian vault, a persistent graph.json, and a GRAPH_REPORT.md of god nodes and surprising connections
- Agent-facing surfaces: a /graphify skill, an MCP stdio server (--mcp), and a crawlable Markdown wiki (--wiki)
- Incremental by design — SHA256 cache, --update for changed files, --watch for live sync, and a post-commit git hook
- Exports to SVG, GraphML (Gephi, yEd) and Neo4j cypher
Getting started
graphify installs as a Python package that registers a Claude Code skill. It requires Claude Code and Python 3.10 or newer.
Install
Install from PyPI and register the skill. The PyPI package is named graphifyy while the graphify name is being reclaimed; the CLI and skill command are still graphify. On macOS with an externally-managed Python, or on Windows if the command is not found, use pipx instead.
pip install graphifyy && graphify installBuild a graph
Open Claude Code in any directory and run the skill against a folder. It writes everything to graphify-out/.
/graphify .
/graphify ./raw --mode deep # more aggressive INFERRED edge extraction
/graphify ./raw --update # re-extract only changed filesQuery the graph
Ask questions of the graph, trace a path between two symbols, or explain a single node.
/graphify query "what connects attention to the optimizer?"
/graphify path "DigestAuth" "Response"
/graphify explain "SwinTransformer"Keep it in sync and expose it
Watch a folder for changes, install a post-commit hook, or serve the graph to an agent over MCP.
/graphify ./raw --watch
graphify hook install
/graphify ./raw --mcpCommands and code are distilled from the project's own documentation — always check the official repo for the latest.
When to use it
- Reach for it when an agent needs the shape of a large codebase and reading the raw files would burn the context window
- Reach for it to connect scattered research material — papers, notes, screenshots — into one navigable graph
- Reach for it when you want graph-based retrieval with auditable edges rather than opaque vector similarity
- Reach for it to keep a live map of a repository while several agents write code in parallel
How graphify compares
graphify alongside other open-source rag frameworks & platforms tools AI/TLDR tracks, ranked by GitHub stars.
| Tool | Stars | What it does |
|---|---|---|
| Dify | ★ 153k | An open-source platform with a visual workflow builder for creating LLM and RAG applications without writing much code. |
| graphify | ★ 110k | Turn a folder of code, docs, PDFs and images into a queryable knowledge graph |
| RAGFlow | ★ 89.2k | A RAG engine built around deep document understanding that turns complex files into a grounded, citation-backed question-answering layer. |
| Pathway | ★ 62.4k | A Python framework with a Rust streaming engine that keeps ETL, real-time analytics and RAG pipelines continuously up to date as source data changes. |
| Context7 | ★ 61.2k | Context7 pulls current, version-specific documentation and code examples for any library and feeds them into your LLM, available as a CLI skill or an MCP server. |
| Quivr | ★ 39.4k | Quivr is an open-source RAG framework that ingests your documents and answers questions about them, working with any LLM and any file type. |
| LightRAG | ★ 39.1k | A graph-based RAG system that builds an entity-and-relationship knowledge graph for fast retrieval and easy incremental updates. |
| Langchain-Chatchat | ★ 38.6k | An offline-deployable RAG and agent application built on LangChain that answers questions from a local knowledge base using open-source LLMs, embedding models and vector stores. |