Codegraph usage
VeyraSkills — A curated collection of Claude Code skills for founders, developers and AI builders
npx -y skills add veyralabsgroup/veyraskills --skill codegraph-usageAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
How to use CodeGraph well — which tool answers which question, when to reach for it and when not, and the gotchas that trip agents up. Read before using CodeGraph tools in a project that has a .codegraph/ index, and whenever a CodeGraph call returns confusing or incomplete results.
SKILL.md
4.5 KB, as published. Nobody here has run it
Using CodeGraph
CodeGraph is a local knowledge graph of a project's symbols, call edges, and files. One call returns verbatim line-numbered source plus the call paths between symbols and a blast-radius summary — replacing a grep + read loop with a single round-trip. Read this before reaching for CodeGraph so you pick the right call and avoid the mistakes below.
When to reach for it
- "How does X work?" / "Where is X?" / "What happens when X runs?"
- Before editing a symbol: source + callers + blast radius in one call.
- Tracing a flow: name both endpoints in one query (e.g.
mutateElement renderScene) — it rides dynamic-dispatch hops (callbacks, re-renders) that grep can't follow. - Judging impact before a change, or when reviewing risk — not only your own refactors.
When NOT to
- Semantic/conceptual search. It knows structure (calls, imports, definitions), not meaning. "Code similar to X" or "where do we handle billing edge cases?" — reason over results yourself or use plain search.
- Unindexed content. Configs, docs, lockfiles, generated code — use Read/Grep.
- Trivial single-file edits. If you know the exact file and line, editing directly is faster than a graph round-trip.
- Correctness. No type-checking or test-running here — the compiler, tests, and linter still own "is this right?".
Which call answers which question
Which tools you can reach depends on how CodeGraph was set up: the default MCP
surface is codegraph_explore alone, other tools are enabled per config, and all
of them exist as CLI subcommands (codegraph <command>). Use whichever is
available — explore alone answers most questions.
| You want | Use | Instead of |
|---|---|---|
| Almost anything: how X works, where X is, survey an area | explore | grep + read loop |
| One symbol's full source + direct callers | node | reading the whole file |
| "What calls X?" (direct, one hop) | callers | impact |
| "What does X call?" | callees | reading X and grepping each name |
| "What depends on X transitively?" (blast radius) | impact | chaining callers by hand |
| Symbol lookup by name/kind | query | grep |
| File/module layout of an area | files | ls -R + reading files |
node returns a symbol's full source or a file's contents from the index — it is
not a substitute for read on files CodeGraph doesn't cover.
CLI-only (not an MCP tool): codegraph affected <files...> — which test files a
change touches, without running the suite.
impact vs callers is the common mixup: callers is one hop; impact walks
the graph transitively. "What could break?" → impact.
Gotchas
Don't re-verify what CodeGraph returned — but do fill gaps
Its results come from a full AST parse, so re-grepping the same symbols is slower
and blinder (grep misses dynamic dispatch) — don't double-check what it gave you.
It is not infallible, though: a blast radius may be truncated (+N more), and a
symbol you expected may be missing. When you need more than it returned, fall back
to grep/read for that gap — without discarding the parts it did provide. (The one
case where its output itself is suspect: the staleness banner, below.)
Don't over-call on small tasks
One explore usually answers the whole question — treat what it returns as already
read. If the first call answered it, stop. Calling before every minor edit just
burns tokens.
The staleness banner is per-file
"⚠️ Some files referenced below were edited since the last index sync…" — only the listed files are stale; Read those directly and keep trusting the graph for the rest. The rarer "auto-sync is DISABLED" banner means the whole index is frozen — Read directly until it's resolved.
Same-named symbols
A bare name that exists in several places returns every match. Disambiguate with a file path or a neighboring symbol rather than taking the first result.
Not indexed? Stop calling it
If a tool reports no .codegraph/ for a project, stop calling CodeGraph there for
the rest of the session and use built-in tools. Indexing is the user's decision —
mention codegraph init if it comes up, but don't run it yourself.