Skip to main content
skill CX Codex

hivemind-graph · activeloopai — Claude Code skill: what it does, how to install

Inspects codebase architecture and symbol relationships using a local AST graph. Helps map callers, imports, and refactoring blast radiuses.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add activeloopai/hivemind --skill hivemind-graph -a claude-code
Open on GitHub

What hivemind-graph does

The skill builds an AST-based graph of your repository to track classes, functions, interfaces, types, and modules. It maps edges such as calls, imports, extends, and implements. Reindexing happens in the background after each agent turn via git diff, so there is no manual compile command.

Agents access the index through two built-in tools. hivemind_graph_search matches lexical tokens or multi-token expressions joined by +, returning hits with immediate neighbors. For targeted queries on a known path, hivemind_graph_neighborhood lists all symbols in a file alongside cross-file relationships. Results point to source_file:line targets for standard file inspection.

Outside TypeScript, JavaScript, and Python, this skill does not parse code — agents must fall back to grep. The graph can also lag behind edits made in the current turn. Zero incoming calls does not confirm dead code because dynamic execution and method dispatch stay unresolved.

What it helps with

  • trace all callers of a target function across modules
  • map blast radius before modifying a function signature
  • inspect file imports and external symbol dependencies
  • navigate architectural relationships between repository subsystems

Example prompts for the agent

  • What calls pushSnapshot across the codebase?
  • What does deeplake-pull.ts import and depend on?
  • Map all symbols and cross-file connections for src/hooks/capture.ts

How to install hivemind-graph

1Skills CLI (Vercel)

npx skills add activeloopai/hivemind --skill hivemind-graph -a claude-code

2Manually: put the files in place

~/.claude/skills/hivemind-graph/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/hivemind-graph/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about hivemind-graph

How to install hivemind-graph in Claude Code?

Run npx skills add activeloopai/hivemind --skill hivemind-graph -a claude-code. The definition is placed in ~/.claude/skills/hivemind-graph/SKILL.md.

What does hivemind-graph do?

It indexes repository symbols and their relationships into an AST graph. Agents query it to locate callers, imports, and definitions without grepping raw files blindly.

Can hivemind-graph detect dead code?

No. Zero inbound connections do not prove a function is unused, because dynamic calls and instance method dispatch are not fully resolved in the graph.

Source text

SKILL.md · Apache-2.0
---
name: hivemind-graph
description: Query the local AST-derived code graph (functions, classes, calls, imports) for structural codebase questions — what calls X, what does Y import, where is Z defined, blast radius of a change. The graph rebuilds automatically after each agent turn; use hivemind_graph_search and hivemind_graph_neighborhood tools (no manual build step).
allowed-tools: hivemind_graph_search, hivemind_graph_neighborhood
---

# 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.ts` import?" / "What depends on X?"
- "Where is `GraphSnapshot` defined?" / "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

1. Broad structural question? `hivemind_graph_search({ pattern: "<symbol>" })`.
2. Know the file? `hivemind_graph_neighborhood({ file: "src/hooks/capture.ts" })`.
3. Need the actual code? Open the `source_file:line` from 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.
- **`pattern` is lexical, not semantic** — try multiple keywords if the first misses.

© activeloopai · Apache-2.0 · activeloopai/hivemind

Similar skills

All skills for Agent setup: memory, context, orchestration →

hivemind-graph by other authors comes first.

From the same set7

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor