Search 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