smart-grep

Search code and symbols across repositories with ripgrep and ast-grep.

Updated May 5, 2026
One-click install
npx skills add https://github.com/iani-kuli/harness_bro --skill smart-grep-iani-kuli
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: smart-grep
Source: https://github.com/iani-kuli/harness_bro/tree/main/.claude/skills/curated/smart-grep
Command: npx skills add https://github.com/iani-kuli/harness_bro --skill smart-grep-iani-kuli

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill solves the challenge of navigating large codebases by providing a unified interface to find definitions, callers, and references across multiple languages without getting lost in noise.

Core Features & Use Cases

  • Multi-Tool Orchestration: Automatically selects the optimal search engine (rg, ast-grep, or semgrep) based on the user's intent and the target language.
  • Semantic Awareness: Uses syntactic patterns to find code structures like class definitions or function calls while ignoring comments and strings.
  • Use Case: Quickly identify all callers of a specific function across a Python project while excluding test files and build artifacts to keep results clean.

Quick Start

Use the smart-grep skill to find all definitions of the function named process_data in the current directory.

Frequently Asked Questions about smart-grep

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find all callers of a function across a large codebase without seeing irrelevant matches?

To find all callers of a function across a large codebase without irrelevant matches, use semantic code search. This approach applies language-specific syntactic patterns to identify function calls while filtering out comments, strings, and non-code artifacts.

What is the best way to search for code structures like class definitions during a refactoring?

The best way to search for code structures like class definitions during refactoring is using semantic-aware codebase navigation. It leverages specialized search engines and syntactic patterns to precisely locate structural definitions across complex repositories.

Does ast-grep work with multiple programming languages for dependency tracking?

Yes, ast-grep works with multiple programming languages for dependency tracking. It provides a unified interface to find definitions and references across diverse languages, ensuring accurate results by applying language-specific syntactic patterns.

How does codebase navigation handle noise from test files and build artifacts?

Codebase navigation handles noise from test files and build artifacts by applying strict filtering rules. It excludes non-code artifacts during the search process, ensuring that results only contain actual function references and definitions.

Why does my grep search return too many matches inside strings and comments?

Your grep search returns too many matches inside strings and comments because it lacks semantic awareness. By utilizing syntactic patterns and specialized search engines, code search can ignore comments and strings to ensure accurate results.