Graphify – Turn Any Codebase into a Queryable Knowledge Graph

Turn code, docs, SQL schemas, and PDFs into a queryable knowledge graph with /graphify in your AI coding assistant – no vector store needed.

Stars
★ 129k
Last updated
2d ago
License
Apache-2.0
Primary language
Python

At a glance

How it runs
CLIAgent plugin / skill
Works with
Universal · cross-platformCodex · Claude CodeChatGPT (Partial support)
Cost
Free, no paid service needed
Setup effort
Low · running in minutes
You'll need
Python 3.10+uv or pipxShell / CLINetwork accessLocal filesystem
Typical use
A developer joining a large codebase can use the interactive graph to quickly see key concepts and how modules connect.
Not a fit if
  • Teams requiring vector or embedding search
  • Huge codebases whose graph may exceed 512 MiB
  • Environments unable to install Python 3.10+
Source review
64/100 · Some gaps

What does this agent do, and when should you use it?

Graphify is a local-first code analysis tool that integrates with AI coding assistants like Claude Code, Cursor, Codex, and Gemini CLI. It uses tree-sitter to deterministically parse code into an AST and build a knowledge graph without any LLM calls, resolving cross-file relationships like calls, imports, inherits, and mixes_in across 40+ languages. For docs, PDFs, images, and videos, it uses your assistant's model or a configured API key for semantic extraction. Every edge is tagged EXTRACTED or INFERRED with confidence, so you know what was read vs. inferred. The output includes graph.html for interactive visualization, GRAPH_REPORT.md with highlights, and graph.json for querying. It offers query, path, and explain commands, and can serve the graph via MCP for structured access.

Graphify runs via the /graphify command on a directory and produces graphify-out/ with three files: graph.html, GRAPH_REPORT.md, and graph.json. It parses code with tree-sitter, extracting cross-file edges such as calls, imports, inherits, and mixes_in. Users can query with graphify query "<question>", find shortest paths with graphify path "A" "B", and explain nodes with graphify explain "Symbol". It registers as a skill via graphify install for platforms like Claude Code, Gemini CLI, and more. It also supports graphify export callflow-html for architecture diagrams, graphify hook install to auto-rebuild on git commit, and graphify add <URL> to fetch papers or videos into the graph.

  1. A developer joining a large codebase can use the interactive graph to quickly see key concepts and how modules connect.
  2. During debugging or code review, trace dependencies between functions or services using graphify path.
  3. Teams can commit graphify-out/ to git so everyone has an up-to-date map from the start.
  4. CI pipelines can run graphify extract headlessly to keep the graph fresh without IDE involvement.
  5. For projects with docs and PDFs, semantic extraction maps non-code assets into the same graph.
  6. Architects can identify hot spots via god nodes and communities to plan refactors.

How do you install or deploy this agent?

Install with uv tool install graphifyy or pipx install graphifyy, then run graphify install to register the skill. Requires Python 3.10+, uv or pipx. Optional extras: uv tool install "graphifyy[pdf]", "graphifyy[office]", "graphifyy[video]", etc.

How do you use this agent?

In your AI assistant, type /graphify . to generate the graph. Then query with graphify query "<question>", graphify path "A" "B", or graphify explain "Symbol". For headless extraction, set an API key and run graphify extract ./docs --backend claude. You can also serve the graph via MCP: python -m graphify.serve graphify-out/graph.json.

What are this agent's strengths and limitations?

Pros
  • Local deterministic AST parsing with no LLM calls for code, ensuring privacy and offline capability.
  • Every edge has a confidence label distinguishing explicit extractions from inferred relationships.
  • Multi-platform integration (20+ assistants) with an MCP server for structured tool access.
  • No vector store – a real graph you can traverse, with community detection and path queries.
Limitations
  • Docs, PDFs, and images require LLM calls, needing API keys or an IDE session.
  • For huge codebases, graph files can become large (512 MiB cap) and the HTML might be heavy in browsers.
  • There is a learning curve for CLI commands and configuration options.
  • Installation may hit PATH issues on some systems, requiring extra setup like uv tool update-shell.

How does this agent compare with similar options?

Graphify outperforms mem0 and supermemory on the LOCOMO benchmark in recall@10 (0.497 vs 0.048 and 0.149) but QA accuracy is slightly lower than supermemory (45.3% vs 49.7%). Compared to RAG systems, it avoids vector storage and instead builds a traversable graph.

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
Graphify – Turn Any Codebase into a Queryable Knowledge Graph This agent 64 · Some gaps CLIFree ★ 129k 2d ago Python Codex · Claude Code
GraphMind Code Graph 64 · Some gaps Desktop appFreemium ★ 215 4d ago Rust Claude Code · Claude.ai
mex Project Memory 71 · Some gaps CLIFree ★ 1.8k today TypeScript Codex · Claude Code
RepoBrain – Repo Intelligence Engine 49 · Major gaps Agent plugin / skillFree + model costs ★ 1.4k 3d ago Python Codex · Claude Code

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Some gaps
64/ 100 5-point scale 3.2 / 5
This review covers the source as of Aug 09, 2026. The project has shipped 20 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 18/29
Reliability 9/14
Adaptability 12/18
Convention 11/18
Effectiveness 9/13
Verifiability 5/8
Why each dimension lost points
Trust18 / 29 · 3.1/5

Evidence shows: Security policy details threat model including URL validation, path traversal protection, XSS sanitization, prompt injection mitigation, reflecting least privilege. Installation and operation require explicit user commands like `graphify install`, and no network calls by default. Data flow transparency: code parsed locally, docs/media via user-configured API keys, README clearly states. Sensitive data handling: does not store credentials or API keys, but relies on user-configured API keys, storage method not specified. Dependency security: CI includes bandit and pip-audit but non-blocking (continue-on-error), no audit results provided. External effects: no network listener by default, but `ingest` subcommand fetches URLs, requires explicit user input. Rollback: provides `graphify uninstall`, but no data rollback or recovery mechanism. Source attribution: README and pyproject clearly identify repo and package name, but publisher unverified. Deductions: incomplete rollback, non-blocking security scans.

Reliability9 / 14 · 3.2/5

Evidence shows: README, SECURITY.md, pyproject.toml, and CI config are consistent in functionality descriptions, no contradictions. Dependencies explicitly listed in pyproject, CI uses uv.lock for reproducible installs. Failure messages: SECURITY.md and code comments provide error handling, e.g., corrupted graph.json recovery message. Deductions: no actual runtime tests, but static evidence sufficient.

Adaptability12 / 18 · 3.3/5

Evidence shows: README details target audience (AI coding assistant users) and multiple use cases (code, docs, PDFs, etc.). Capability boundaries clear: code parsed locally, docs/media require API keys, supported file types and optional extras listed. Trigger precision: `/graphify` command and `graphify install` clear, with platform-specific install commands. Environment fit: supports multiple OS and Python versions, installation instructions provided. Deductions: no actual runtime verification, but static evidence sufficient.

Convention11 / 18 · 3.1/5

Evidence shows: README structure clear, includes installation, usage, platform support, file types, security sections. Installation notes detailed, including multiple methods and common issues. Naming stability: package name `graphifyy` and command `graphify` clear, README warns other `graphify*` packages not affiliated. Examples and FAQ: README includes usage examples and FAQ. Known limitations: SECURITY.md and README mention security model and limitations. License: Apache-2.0, LICENSE file complete. Versioning: pyproject version 0.9.37, but no CHANGELOG. Maintenance responsibility: README and SECURITY.md provide contact and vulnerability reporting. Deductions: missing CHANGELOG.

Effectiveness9 / 13 · 3.5/5

Evidence shows: Outputs include graph.html, GRAPH_REPORT.md, and graph.json, directly usable. Marginal value: maps codebase to knowledge graph, provides query, path, explain functions, unique value over traditional grep. Cost-benefit: code parsing local and free, docs/media require API keys but free options available. Deductions: no actual runtime verification, but static evidence sufficient.

Verifiability5 / 8 · 3.1/5

Evidence shows: README benchmarks link to BENCHMARKS.md but no specific data provided. Security claims detailed in SECURITY.md but no test evidence. Fact-inference separation: README clearly distinguishes EXTRACTED and INFERRED edges, but no verification method. Deductions: benchmark data not in provided files, cannot verify.

Risks and how to mitigate them
  • Publisher identity unverified, exercise caution.
  • Dependency security scans non-blocking, potential unpatched vulnerabilities.
  • Rollback mechanism incomplete, only uninstall command, no data recovery.
  • Benchmark data not in provided files, performance claims unverifiable.
Evidence confidence: Low Reviewed Aug 09, 2026 Reviewed revision 09a34ad87a6c New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. v0.9.92 0.9.92
    Release notes excerpt
    Twenty-three community pull requests: call-resolution and id-collision fixes across JS/TS, Python, Go, Rust and Solidity; graph round-trip, dedup and confidence-folding fixes; skill code-only-update and dispatch fixes; and LLM/Ollama and detection fixes. The AST cache schema is bumped, so the first build after upgrading re-extracts. - Fix: JS/TS class members differing only by _, $ or # are kept as separate nodes (#4475, #4479, thanks @Mpasha17). …
    View on GitHub ↗
  2. v0.9.91 0.9.91
    Release notes excerpt
    Eight community pull requests: a Windows MCP-stdio hang fix, Rust/JS/TS/extract call-resolution and id-collision fixes, an Ollama context-size fix, and a clustering label-retention fix. The AST cache schema is bumped, so the first build after upgrading re-extracts. - Fix: MCP graph_stats no longer hangs under a stdio host on Windows (and no longer silently drops its built-at-commit staleness line): _git_head closes the git child's stdin so git does not block on the JSON-RPC pipe (#4440, #4441, thanks @bercedev). …
    View on GitHub ↗
  3. v0.9.90
    Release notes excerpt
    0.9.90 (2026-10-13) Fourteen community pull requests: C# call-resolution and id-collision fixes, Python/Go/dedup correctness, a hub-label sidecar, a post-merge heal hook, and query/build fixes. The AST cache schema is bumped, so the first build after upgrading re-extracts. - Fix: C# a nameless member-call receiver (run.Sequence.Apply(), Make().Apply()) no longer mis-binds to the caller's own same-named method; every C# member call defers and resolves only through a typed receiver (#4422, thanks @nixvideojuego-ui). …
    View on GitHub ↗

FAQ

How does Graphify handle code privacy?
Code files are parsed entirely locally and never leave your machine. Docs and media files are sent to an LLM for semantic extraction, but you can use a local Ollama backend or configure your provider.
Do I need an API key?
No, if you only process code. For non-code content, you need a key for Gemini, Claude, OpenAI, etc., or use your IDE session's model.
How is Graphify different from RAG?
Graphify doesn't use vector embeddings; it builds an explicit knowledge graph with explainable edges and supports path queries and community detection.
How do I make my assistant always use the graph?
Run graphify claude install or the equivalent for your platform, which writes config files like CLAUDE.md or AGENTS.md and installs hooks to prefer graph queries.
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents