From graphify-tools
Build a multimodal knowledge graph from any folder (code, markdown, PDFs, images) using graphify. Produces graph.html, GRAPH_REPORT.md, graph.json, Obsidian vault, optional agent wiki. TRIGGERS - graphify, build knowledge graph, graph this folder, map this codebase, concept graph, god nodes, surprising connections.
How this skill is triggered — by the user, by Claude, or both
Slash command
/graphify-tools:build-graphThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
> **Self-Evolving Skill**: This skill improves through use. If a backend command drifts, a flag changes, or a new failure mode appears — fix this file (and `references/backends.md`) immediately, don't defer. Only update for real, reproducible issues.
Self-Evolving Skill: This skill improves through use. If a backend command drifts, a flag changes, or a new failure mode appears — fix this file (and
references/backends.md) immediately, don't defer. Only update for real, reproducible issues.
Run the graphify engine on a target folder and surface what it found.
Prerequisite:
graphifyCLI on PATH. If missing, invokegraphify-tools:setupfirst.Complement, not replacement: for symbol-level code questions (callers/callees/impact) use the codegraph MCP tools — they are sub-ms and deterministic. Reach for graphify when the corpus is mixed (code + docs + papers + images) or the question is conceptual ("what connects X to Y across these files?").
Default to the current repo, but ASK before running on anything huge — LLM extraction of docs/images costs tokens and time. Scoping heuristics:
# Size check first
scc --no-complexity <target> 2>/dev/null | tail -3
find <target> -name '*.pdf' -o -name '*.png' -o -name '*.jpg' | wc -l
docs/, one plugin dir) or --update incremental modeSKILL.mds): cross-chunk node-ID collisions silently drop the second same-named node. Extract per-subfolder then graphify merge-graphs, rather than one whole-repo shot.Pick a backend and set its env — full copy-paste blocks for all three live in ../../references/backends.md (the routing SSoT). Quick guide:
| Backend | When | One-liner |
|---|---|---|
| gemini-2.5-flash | large / bulk runs (safe default, no ban-risk) | graphify extract <target> --backend gemini --model gemini-2.5-flash |
| fleet Opus 4.8 | interactive / smaller graphs, best quality ("our LLM") | --backend openai --model claude-opus-4-8 + GRAPHIFY_LLM_TEMPERATURE=omit |
| MiniMax-M3 | a few dense files, latency OK | --backend openai --model MiniMax-M3 |
Always
unset HTTPS_PROXY HTTP_PROXY https_proxy http_proxyfirst — the ccmax-claude bearer-pin proxy 502s external hosts. Theclaudebackend is BLOCKED (doorward 426); use the fleet openai door instead. See backends.md for keys, base URLs, and the mandatoryGRAPHIFY_LLM_TEMPERATURE=omitfor Opus.
Two-step headless flow (any backend): graphify extract <target> … then graphify cluster-only <target> … (regenerates GRAPH_REPORT.md + names communities). The plain graphify <target> one-shot also works once a backend's env is set. Cost prints after every run — relay it.
Useful flags (combinable):
| Flag | Effect |
|---|---|
--mode deep | More aggressive INFERRED edge extraction (slower, more edges) |
--update | Re-extract only changed files (SHA256 cache), merge into existing graph |
--wiki | Also emit agent-crawlable wiki (index.md + article per community) |
--svg / --graphml | Static exports (Gephi, yEd) |
Output lands in <target>/graphify-out/:
graphify-out/
├── graph.html interactive graph (click, search, filter by community)
├── obsidian/ openable as an Obsidian vault
├── wiki/ (with --wiki) agent-navigable markdown wiki
├── GRAPH_REPORT.md god nodes, surprising connections, suggested questions
├── graph.json persistent graph — query later without re-reading files
└── cache/ SHA256 file cache for incremental --update runs
Read graphify-out/GRAPH_REPORT.md and summarize for the operator:
Remind the operator every edge is tagged EXTRACTED / INFERRED / AMBIGUOUS — trust extracted, verify inferred.
graphify add https://arxiv.org/abs/<id> # paper → saved + merged into graph
graphify add https://x.com/<user>/status/… # tweet
Add graphify-out/ to .gitignore unless the operator explicitly wants the graph committed (graph.json can be large; cache/ is machine-local).
After this skill completes, reflect before closing the task:
references/backends.md) that no longer matches reality.Do NOT defer. The next invocation inherits whatever you leave behind.
npx claudepluginhub terrylica/cc-skills --plugin graphify-toolsGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.
Dispatches multiple subagents concurrently for independent tasks without shared state. Use when facing 2+ unrelated failures or subsystems that can be investigated in parallel.