graphify

skill
Security Audit
Warn
Health Warn
  • No license — Repository has no license file
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Community trust — 84 GitHub stars
Code Pass
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
  • Permissions — No dangerous permissions requested
Purpose
This is a Claude Code skill that reads directories of local files (code, documents, notes) and generates an interactive, navigable knowledge graph. It uses SHA256 caching to avoid reprocessing unchanged files and offers deep reductions in token usage.

Security Assessment
Overall Risk: Low. The automated code scan reviewed 12 files and found no dangerous patterns, hardcoded secrets, or dangerous permission requests. However, the tool inherently accesses local files and executes file-system operations to build its outputs. Based on the README, it can also make outbound network requests to fetch external data, such as papers from arxiv.org or posts from x.com. While no malicious activity was detected, any tool that automatically reads local directories and makes network requests warrants a quick manual review of the source code if you plan to use it on sensitive or proprietary data.

Quality Assessment
The project appears to be actively maintained, with its last push occurring today. It enjoys a solid foundation of community trust, evidenced by 84 GitHub stars. It uses continuous integration (CI) for testing. On the downside, the repository completely lacks a software license. This is a significant omission because, without a license, the code is technically copyrighted, making the legal use, modification, and distribution of the tool restricted by default.

Verdict
Use with caution: The code itself appears safe and well-maintained, but the lack of a formal license makes it legally ambiguous for integration into professional or commercial workflows.
SUMMARY

Claude Code skill — drop any files (code, papers, images, notes) into a folder and get a navigable knowledge graph with community detection, god nodes, and 71.5x token reduction.

README.md

graphify

CI

A Claude Code skill. Type /graphify in Claude Code - it reads your files, builds a knowledge graph, and gives you back structure you didn't know was there.

Andrej Karpathy keeps a /raw folder where he drops papers, tweets, screenshots, and notes. graphify is the answer to that problem - 71.5x fewer tokens per query vs reading the raw files, persistent across sessions, honest about what it found vs guessed.

/graphify ./raw
graphify-out/
├── graph.html       interactive graph - click nodes, search, filter by community
├── obsidian/        open as Obsidian vault
├── wiki/            Wikipedia-style articles for agent navigation (--wiki)
├── GRAPH_REPORT.md  god nodes, surprising connections, suggested questions
├── graph.json       persistent graph - query weeks later without re-reading
└── cache/           SHA256 cache - re-runs only process changed files

Install

Requires: Claude Code and Python 3.10+

pip install graphifyy && graphify install

The PyPI package is temporarily named graphifyy while the graphify name is being reclaimed. The CLI and skill command are still graphify.

Then open Claude Code in any directory and type:

/graphify .
Manual install (curl)
mkdir -p ~/.claude/skills/graphify
curl -fsSL https://raw.githubusercontent.com/safishamsi/graphify/v1/skills/graphify/skill.md \
  > ~/.claude/skills/graphify/SKILL.md

Add to ~/.claude/CLAUDE.md:

- **graphify** (`~/.claude/skills/graphify/SKILL.md`) - any input to knowledge graph. Trigger: `/graphify`
When the user types `/graphify`, invoke the Skill tool with `skill: "graphify"` before doing anything else.

Usage

/graphify                          # run on current directory
/graphify ./raw                    # run on a specific folder
/graphify ./raw --mode deep        # more aggressive INFERRED edge extraction
/graphify ./raw --update           # re-extract only changed files, merge into existing graph

/graphify add https://arxiv.org/abs/1706.03762        # fetch a paper, save, update graph
/graphify add https://x.com/karpathy/status/...       # fetch a tweet

/graphify query "what connects attention to the optimizer?"
/graphify path "DigestAuth" "Response"
/graphify explain "SwinTransformer"

/graphify ./raw --watch            # auto-sync graph as files change (code: instant, docs: notifies you)
/graphify ./raw --wiki             # build agent-crawlable wiki (index.md + article per community)
/graphify ./raw --svg              # export graph.svg
/graphify ./raw --graphml          # export graph.graphml (Gephi, yEd)
/graphify ./raw --neo4j            # generate cypher.txt for Neo4j
/graphify ./raw --mcp              # start MCP stdio server

Works with any mix of file types:

Type Extensions Extraction
Code .py .ts .js .go .rs .java .c .cpp .rb .cs .kt .scala .php AST via tree-sitter + call-graph pass
Docs .md .txt .rst Concepts + relationships via Claude
Papers .pdf Citation mining + concept extraction
Images .png .jpg .webp .gif Claude vision - screenshots, diagrams, any language

What you get

God nodes - highest-degree concepts (what everything connects through)

Surprising connections - ranked by composite score. Code-paper edges rank higher than code-code. Each result includes a plain-English why.

Suggested questions - 4-5 questions the graph is uniquely positioned to answer

Token benchmark - printed automatically after every run. On a mixed corpus (Karpathy repos + papers + images): 71.5x fewer tokens per query vs reading raw files.

Auto-sync (--watch) - run in a background terminal and the graph updates itself as your codebase changes. Code file saves trigger an instant rebuild (AST only, no LLM). Doc/image changes notify you to run --update for the LLM re-pass. Useful for agentic workflows where multiple agents are writing code in parallel — the graph stays current between waves automatically.

Wiki (--wiki) - Wikipedia-style markdown articles per community and god node, with an index.md entry point. Point any agent at index.md and it can navigate the knowledge base by reading files instead of parsing JSON.

Every edge is tagged EXTRACTED, INFERRED, or AMBIGUOUS - you always know what was found vs guessed.

Worked examples

Corpus Files Reduction Output
Karpathy repos + 5 papers + 4 images 52 71.5x worked/karpathy-repos/
graphify source + Transformer paper 4 5.4x worked/mixed-corpus/
httpx (synthetic Python library) 6 ~1x worked/httpx/

Token reduction scales with corpus size. 6 files fits in a context window anyway — graph value there is structural clarity, not compression. At 52 files (code + papers + images) you get 71x+. Each worked/ folder has the raw input files and the actual output (GRAPH_REPORT.md, graph.json) so you can run it yourself and verify the numbers.

Tech stack

NetworkX + Leiden (graspologic) + tree-sitter + Claude + vis.js. No Neo4j required, no server, runs entirely locally.

Contributing

Worked examples are the most trust-building contribution. Run /graphify on a real corpus, save output to worked/{slug}/, write an honest review.md evaluating what the graph got right and wrong, submit a PR.

Extraction bugs - open an issue with the input file, the cache entry (graphify-out/cache/), and what was missed or invented.

See ARCHITECTURE.md for module responsibilities and how to add a language.

Reviews (0)

No results found