graphify
Use when exploring unfamiliar codebases, before searching for code, or after editing files. Builds a structural AST index (classes, functions, imports, call graph) from 12 languages via tree-sitter. Trigger: /graphify
By howell5 · 1,909 installs
npx skills add howell5/willhong-skills --skill graphify
Source repository · Upstream listing
graphify — Code Navigation Layer
Structural index of the codebase. Know what exists, where, and how it connects — before you grep.
Requires CLI: npm i g graphify ts (uses Bun runtime).
Manual updates only. The graph does not refresh on its own — you (or the user) run graphify update or graphify build when you want a fresh index. This avoids write conflicts in git worktrees and other multi session setups.
First time setup (one time per machine)
Then, once per project:
After that, refresh manually whenever the index drifts from the code (see graphify update below).
Commands
/graphify build — Build index (first time, or full rebuild)
Scans all source files, extracts AST structure, saves to graphify out/graph.json .
Report: "Indexed {files} files, {nodes} symbols, {edges} relationships"
/graphify query <name — Search for symbols
Case insensitive search. Returns matching symbols with file locations.
/graphify update <files... — Incremental update after edits
Re extract only the specified files. Run this after editing code if you plan to query the graph again in the same session.
/graphify auto update — Bulk update from git diff
Computes changed code files via git diff + untracked files, then calls updateIndex . Silent when there's nothing to do. Convenient for refreshing after a batch of edits without naming each file.
When to Use
Before searching code: If graphify out/graph.json exists, query it before Glob or Grep. The graph tells you which files contain which symbols. This is the main value — replace blind keyword search with structured lookup.
After editing: If you'll query the graph again in the same session, run graphify update <edited files (or graphify auto update for a bulk refresh). Otherwise leave it — the next graphify build or update will catch up.
Exploring unfamiliar code: Run /graphify query <concept to find entry points without guessing filenames.
Supported Languages
Python, JavaScript, TypeScript (JSX/TSX), Go, Rust, Java, C, C++, Ruby, C , Kotlin, Scala, PHP
Graph Output
Saved as graphify out/graph.json :
Edge relations: contains , method , imports , imports from , calls (INFERRED), inherits