← Back to list
🛠️

graphify Checked

Use for any question about a codebase, its architecture, file relationships, or project content —…
🛠️ Developer Tools skills By Graphify-Labs Version v1.0.0 Added 2026-10-18 Updated 2026-10-18 Source ↗
8.7Overall rating
2Views
0Downloads
127.8kStars

Installation

🤖 Install via AI

Copy the prompt below and send it to your AI assistant (e.g. Claude Code) — it will follow the instructions and install automatically.

Install the "graphify" skill by following the instructions at https://skill123.me/install/graphify.
⌨️ Command line install

Run in your terminal — downloads and installs to ~/.claude/skills/.

curl -fsSL https://skill123.me/install/graphify.sh | bash
📦 Download ZIP

Download the zip and extract it into your skills directory (e.g. ~/.claude/skills/), then restart your session.

⬇ Download v1.0.0 · 1.6 MB
📊 Static rating
8.7/10
Trigger
9.0
Structure
0.0
Workflow
8.0
Content
0.0
Engineering
0.0
Security
9.0

Six-dimension rubric with reviewer rationale.

View scorecard ↓
🛡 Dynamic test
—

Not live-tested yet — this skill is rated on static analysis only.

About this skill

Use for any question about a codebase, its architecture, file relationships, or project content — especially when graphify-out/ exists, where the question should be treated as a graphify query first. Turns any input (code, docs, papers, images, videos) into a persistent knowledge graph with god nodes, community detection, and query/path/explain tools.

/graphify

Turn any folder of files into a navigable knowledge graph with community detection, an honest audit trail, and three outputs: interactive HTML, GraphRAG-ready JSON, and a plain-language GRAPH_REPORT.md.

Documentation

Use for any question about a codebase, its architecture, file relationships, or project content — especially when graphify-out/ exists, where the question should be treated as a graphify query first. Turns any input (code, docs, papers, images, videos) into a persistent knowledge graph with god nodes, community detection, and query/path/explain tools.

/graphify

Turn any folder of files into a navigable knowledge graph with community detection, an honest audit trail, and three outputs: interactive HTML, GraphRAG-ready JSON, and a plain-language GRAPH_REPORT.md.

Usage


/graphify                                             # full pipeline on current directory (HTML viz; add --obsidian for a vault)
/graphify <path>                                      # full pipeline on specific path
/graphify https://github.com/<owner>/<repo>           # clone repo then run full pipeline on it
/graphify https://github.com/<owner>/<repo> --branch <branch>  # clone a specific branch
/graphify <url1> <url2> ...                           # clone multiple repos, build each, merge into one cross-repo graph
/graphify <path> --mode deep                          # thorough extraction, richer INFERRED edges
/graphify <path> --update                             # incremental - re-extract only new/changed files
/graphify <path> --directed                            # build directed graph (preserves edge direction: source→target)
/graphify <path> --whisper-model medium                # use a larger Whisper model for better transcription accuracy
/graphify <path> --cluster-only                       # rerun clustering on existing graph
/graphify <path> --no-viz                             # skip visualization, just report + JSON
/graphify <path> --html                               # (HTML is generated by default - this flag is a no-op)
/graphify <path> --svg                                # also export graph.svg (embeds in Notion, GitHub)
/graphify <path> --graphml                            # export graph.graphml (Gephi, yEd)
/graphify <path> --neo4j                              # generate graphify-out/cypher.txt for Neo4j
/graphify <path> --neo4j-push bolt://localhost:7687   # push directly to Neo4j
/graphify <path> --falkordb                           # generate graphify-out/cypher.txt for FalkorDB
/graphify <path> --falkordb-push falkordb://localhost:6379   # push directly to FalkorDB
/graphify <path> --mcp                                # start MCP stdio server for agent access
/graphify <path> --watch                              # watch folder, auto-rebuild on code changes (no LLM needed)
/graphify <path> --wiki                               # build agent-crawlable wiki (index.md + one article per community)
/graphify <path> --obsidian --obsidian-dir ~/vaults/my-project  # write vault to custom path (e.g. existing vault)
/graphify add <url>                                   # fetch URL, save to ./raw, update graph
/graphify add <url> --author "Name"           
View full documentation

tag who wrote it

/graphify add <url> --contributor "Name" # tag who added it to the corpus

/graphify query "<question>" # BFS traversal - broad context

/graphify query "<question>" --dfs # DFS - trace a specific path

/graphify query "<question>" --budget 1500 # cap answer at N tokens

/graphify path "AuthModule" "Database" # shortest path between two concepts

/graphify explain "SwinTransformer" # plain-language explanation of a node



## What graphify is for

Drop any folder of code, docs, papers, images, or video into graphify and get a queryable knowledge graph. Persistent across sessions, honest audit trail (EXTRACTED/INFERRED/AMBIGUOUS), community detection surfaces cross-document connections you wouldn't think to ask about.

## What You Must Do When Invoked

If the user invoked `/graphify --help` or `/graphify -h` (with no other arguments), print the contents of the `## Usage` section above verbatim and stop. Do not run any commands, do not detect files, do not default the path to `.`. Just print the Usage block and return.

**Fast path — existing graph:** Before doing anything else, check whether `graphify-out/graph.json` exists. The expected location is `graphify-out/graph.json` relative to the **current working directory** (i.e. the project root where you are running commands). If it exists AND the user's request is a natural-language question about the codebase (e.g. "How does X work?", "What calls Y?", "Trace the data flow through Z") and NOT an explicit rebuild command (`--update`, `--cluster-only`, or a bare path/URL that implies fresh extraction): **skip Steps 1–5 entirely and jump straight to `## For /graphify query`.** Run `graphify query "<question>"` immediately. Do not run detect. Do not check corpus size. Do not ask the user to narrow. The graph is already built — use it.

If no path was given, use `.` (current directory). Do not ask the user for a path.

If the path argument starts with `https://github.com/` or `http://github.com/`, treat it as a GitHub URL - run Step 0 before anything else, then continue with the resolved local path.

Follow these steps in order. Do not skip steps.

### Step 0 - GitHub repos and multi-path merge (only if a URL or several paths)

Only when the path is one or more `https://github.com/...` URLs, or several local subfolders to merge. See `references/github-and-merge.md` for the clone, cross-repo merge, and monorepo flow, then continue with the resolved local path. A plain local path skips this step.

### Step 1 - Ensure graphify is installed

Detect the correct Python interpreter (handles uv tool, pipx, venv, system installs)

PYTHON=""

GRAPHIFY_BIN=$(which graphify 2>/dev/null)

1. uv tool installs — most reliable on modern Mac/Linux

if [ -z "$PYTHON" ] && command -v uv >/dev/null 2>&1; then

_UV_PY=$(uv tool run --from graphifyy python -c "import sys; print(sys.executable)" 2>/dev/null)

if [ -n "$_UV_PY" ]; then PYTHON="$_UV_PY"; fi

fi

2. Read shebang from graphify binary (pipx and direct pip installs)

if [ -z "$PYTHON" ] && [ -n "$GRAPHIFY_BIN" ]; then

_SHEBANG=$(head -1 "$GRAPHIFY_BIN" | tr -d '#!')

case "$_SHEBANG" in

*[!a-zA-Z0-9/_.@-]*) ;;

*) "$_SHEBANG" -c "import graphify" 2>/dev/null && PYTHON="$_SHEBANG" ;;

esac

fi

3. Fall back to python3

if [ -z "$PYTHON" ]; then PYTHON="python3"; fi

if ! "$PYTHON" -c "import graphify" 2>/dev/null; then

if command -v uv >/dev/null 2>&1; then

uv tool install --upgrade graphifyy -q 2>&1 | tail -3

_UV_PY=$(uv tool run --from graphifyy python -c "import sys; print(sys.executable)" 2>/dev/null)

if [ -n "$_UV_PY" ]; then PYTHON="$_UV_PY"; fi

else

"$PYTHON" -m pip install graphifyy -q 2>/dev/null \

|| "$PYTHON" -m pip install graphifyy -q --break-system-packages 2>&1 | tail -3

fi

fi

Write interpreter path for all subsequent steps (persists across invocations)

mkdir -p graphify-out

"$PYTHON" -c "import sys; open('graphify-out/.graphify_python', 'w', encoding='utf-8').write(sys.executable)"

Save scan root so `graphify update` (no args) knows where to look next time.

The scan path is passed through a quoted heredoc, never substituted into the

command line itself: a bare `cd <path>` (or an unquoted heredoc, which

still expands $()/backticks in its body) would let a malicious path execute

as shell code the moment this line runs.

"$PYTHON" -c "import os, sys; out_path = os.path.abspath('graphify-out/.graphify_root'); os.chdir(sys.stdin.readline().rstrip('\n')); open(out_path, 'w', encoding='utf-8').write(os.getcwd())" <<'GRAPHIFY_ROOT_EOF'

INPUT_PATH

GRAPHIFY_ROOT_EOF



If the import succeeds, print nothing and move straight to Step 2.

**In every subsequent bash block, replace `python3` with `$(cat graphify-out/.graphify_python)` to use the correct interpreter.**

### Step 2 - Detect files

$(cat graphify-out/.graphify_python) -c "

import json

from graphify.detect import detect

from pathlib import Path

from graphify.paths import out_path

from graphify.watch import _read_build_excludes, _read_build_gitignore

result = detect(Path('INPUT_PATH'), extra_excludes=_read_build_excludes(out_path()), gitignore=_read_build_gitignore(out_path()))

#

Score breakdown

Trigger
9.0
Structure
0.0
Workflow
8.0
Content
0.0
Engineering
0.0
Security
9.0