hivemind-graph
hivemind-graph-25aff9構造的なコードベースの質問として、何がXを呼び出すのか、Yが何をインポートするのか、Zが定義されているのか、変化の爆発半径など、ローカルのAST由来コードグラフ(関数、クラス、呼び出し、インポート)を検索します。
Hivemind Code Graph (OpenClaw)
A deterministic, AST-derived map of the current repository — every function,
class, method, interface, type, enum, const, and module, plus the edges between
them (calls, imports, extends, implements, method_of).
The graph builds and refreshes automatically after each turn (gated by rate limit + git diff). You never run a build command — just call the graph tools.
Set plugins.entries.hivemind.config.tuning.HIVEMIND_GRAPH_CWD in
~/.openclaw/openclaw.json to the git root of the project you want indexed
when the gateway's working directory is not the repo (then restart the gateway).
Use the graph as a fast INDEX to locate the few files/symbols that matter, then use the host's read/exec tools on the real source. It is not a substitute for reading source files.
When to use this skill
Activate when the user asks a structural / relational question about the code:
- "What calls
pushSnapshot?" / "Who uses this function?" - "What does
deeplake-pull.tsimport?" / "What depends on X?" - "Where is
GraphSnapshotdefined?" / "Find the function that handles Y." - "What are the main subsystems / the architecture here?"
- "If I change this signature, what's affected?"
Tools
hivemind_graph_search({ pattern })— search symbols by substring (or multi-token AND with+, e.g.auth+handler). Returns matches with 1-hop neighbors (callers, callees, imports). Start here.hivemind_graph_neighborhood({ file })— every symbol in a repo-relative file path plus its cross-file neighbors.
Workflow
- Broad structural question?
hivemind_graph_search({ pattern: "<symbol>" }). - Know the file?
hivemind_graph_neighborhood({ file: "src/hooks/capture.ts" }). - Need the actual code? Open the
source_file:linefrom the tool output with the host read tool — don't answer from the graph alone.
When NOT to use this skill
- Reading the body of a symbol you already located → use the host read tool.
- Code that isn't committed/built yet — the graph can lag uncommitted edits.
- Languages outside TypeScript, JavaScript, and Python — fall back to grep.
Anti-patterns
- Zero incoming callers does NOT mean dead code. Instance-method dispatch and dynamic calls are not fully resolved.
- The graph can be stale. Prefer live source for files edited in this session.
patternis lexical, not semantic — try multiple keywords if the first misses.