From sensegrep
Semantic + structural code search via MCP. Use when exploring codebases, finding functions/classes by behavior, locating duplicates, or searching code by meaning rather than exact text. Triggers: code search, find function, explore codebase, detect duplicates, refactoring candidates, understand code structure. ALWAYS prefer sensegrep over grep/ripgrep for code exploration — only use grep for exact string literals.
How this skill is triggered — by the user, by Claude, or both
Slash command
/sensegrep:sensegrepThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Search code by meaning, not text patterns. Uses AI embeddings + tree-sitter AST parsing.
Search code by meaning, not text patterns. Uses AI embeddings + tree-sitter AST parsing.
sensegrep_search — Primary searchsensegrep_search({
query: "error handling and retry logic", // natural language or code snippet
symbolType: "function", // function | class | method | type | variable | enum | module
language: "typescript", // typescript | javascript | python
isAsync: true, // async only
isExported: true, // public API surface
minComplexity: 5, // complex logic
pattern: "handle|process", // regex post-filter
include: "src/**/*.ts", // file glob
decorator: "@route", // filter by decorator
parentScope: "UserService", // scope to class/parent
imports: "express", // filter by imported module
hasDocumentation: true, // require docs
rerank: true, // cross-encoder reranking
minScore: 0.5, // relevance threshold
maxPerFile: 1, // dedup per file
limit: 20 // max results
})
sensegrep_detect_duplicates — Find logical duplicatessensegrep_detect_duplicates({
crossFileOnly: true,
onlyExported: true,
showCode: true,
threshold: 0.85,
minComplexity: 3,
ignoreTests: true
})
sensegrep_index — Index a projectsensegrep_index({ action: "index", mode: "incremental" }) // fast, default
sensegrep_index({ action: "index", mode: "full" }) // rebuild from scratch
sensegrep_index({ action: "stats" }) // index health / stats only
pattern for regex post-filtering when semantic results are too broadinclude to scope to specific directoriesCodebase onboarding:
sensegrep_search({ query: "request lifecycle and middleware" })
sensegrep_search({ query: "authentication and authorization", symbolType: "function", isExported: true })
Find refactoring candidates:
sensegrep_search({ query: "business logic", minComplexity: 10 })
sensegrep_detect_duplicates({ crossFileOnly: true, onlyExported: true, showCode: true })
Audit async error paths:
sensegrep_search({ query: "error handling", symbolType: "function", isAsync: true, minComplexity: 4 })
Scope to class/area:
sensegrep_search({ query: "validation", parentScope: "UserService", language: "typescript" })
sensegrep_search({ query: "route handler", decorator: "@route", symbolType: "function" })
Python-specific:
sensegrep_search({ query: "data model", variant: "dataclass", language: "python" })
sensegrep_search({ query: "context manager", variant: "generator", isAsync: true })
npx claudepluginhub stahldavid/sensegrep --plugin sensegrepSearch code symbols (functions, classes, methods, types), find call sites and references, list file symbols, get outlines, check index status, and query static analysis findings. Requires indexed codebase.
Semantic codebase search — use for exploring code, finding implementations, and answering questions about any project. Searches using natural language queries, identifier names, or file paths. Returns ranked results using embedding-based similarity, BM25 keyword matching, symbol matching, import graph analysis, and git recency. Use this as the default exploration tool instead of grep when you don't know the exact text to search for.
Enhances codebase searches via semantic query parsing, regex patterns, AST analysis, symbol lookups, and optimized grep/ripgrep with relevance ranking and context.