About graph-search
graph-search is a developer skill for finding named code entities in a code knowledge graph. It helps locate functions, classes, and types, adjusting relevance to query patterns and showing paths, line numbers, and scores.
Key features
- 01Searches code entities by name
- 02Filters results by function or class
- 03Adjusts relevance based on naming patterns
- 04Shows qualified names, file paths, lines, and scores
- 05Offers to open the top result's source
Use cases
- 01Locate a function or class definition
- 02Find an entity by its qualified path
- 03Explore matches in a built code graph
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ athola/ claude-night-market --skill graph-searchAfter installing, type/graph-searchin Claude Code to confirm it loaded.
Details
From the project READMESearch Code Knowledge Graph
Search .gauntlet/graph.db for code entities by name.
When NOT To Use
- The graph is missing or stale (use
gauntlet:graph-build) - Scoring the impact of a change (use
pensive:blast-radius)
Steps
-
Accept query: Get the search term from the user.
-
Run the query script:
python3 ${CLAUDE_PLUGIN_ROOT}/scripts/graph_query.py \ --action search --query "<term>" --limit 20Optional filters:
--kind Functionto search only functions--kind Classto search only classes
-
Display results: Show qualified name, file path, line numbers, and relevance score for each match.
-
Offer to read: Ask if the user wants to read the top result's source file.
Query Intelligence
The search engine detects query patterns:
- PascalCase (e.g.,
UserService): boosts Class and Type results - snake_case (e.g.,
get_users): boosts Function results - Dotted path (e.g.,
app.models.User): boosts qualified name matches
Prerequisites
The graph must be built first. If .gauntlet/graph.db
does not exist, suggest running the graph-build skill.
Exit Criteria
- If
.gauntlet/graph.dbdoes not exist, the skill surfaces the missing-prerequisite error and suggestsgauntlet:graph-buildrather than failing silently - Results display qualified name, file path, line numbers, and
relevance score for each match (up to
--limitresults) - Query intelligence applies correct boost: PascalCase boosts Class/Type results, snake_case boosts Function results, dotted path boosts qualified name matches
- User is offered to read the top result's source file after results are shown
- A
count: 0result is reported as "not in the graph" only aftergraph_query.py --action statusshowsnode_countabove zero. An unbuilt graph, or one built without tree-sitter, answers every query with zero, and that zero says nothing about the codebase