smart-grep

Finds code references, definitions, callers, imports across repositories using text, AST, or semantic search tools.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill solves the difficulty of locating code usage patterns, definitions, callers, imports, and rename targets across complex codebases by selecting the right search approach.

Core Features & Use Cases

  • Intelligent Tool Selection: Chooses between text search, AST-based search, and semantic analysis tools based on the coding task.
  • Code Navigation Support: Finds callers, definitions, imports, subclasses, and potential rename locations across repositories.
  • Use Case: Help a developer trace every usage of a Python function, identify its callers, and prepare a safe rename preview before making changes.

Quick Start

Ask the smart-grep skill to find all usages and callers of a specific function or symbol in the current codebase.

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 usages and callers of a function across a repository?

To find code usage and callers across a repository, you need an intelligent search strategy that selects between text search, AST-based search, and semantic analysis. This approach accurately locates references, definitions, and imports while avoiding noisy results.

What is the best way to prepare for a safe symbol rename in a complex codebase?

Preparing for a safe symbol rename requires tracing every usage of the target function and identifying its callers first. By applying AST search or semantic analysis, you can generate a comprehensive rename preview before making any actual changes.

When do I need AST search instead of standard grep for code navigation?

You need AST search instead of standard grep for code navigation when looking for structural patterns like definitions, subclasses, or callers. AST search understands code syntax, avoiding noisy text matches and providing accurate symbol discovery across programming languages.

How do I trace imports and definitions across different programming languages?

To trace imports and definitions across different programming languages, use a tool that applies semantic analysis and intelligent search strategies. This ensures accurate code navigation and symbol discovery regardless of the specific language syntax in the repository.

Why does my text search return noisy results when refactoring code?

Text search returns noisy results during refactoring because it matches strings instead of code structure. Switching to AST-based search or semantic analysis filters out irrelevant text matches, providing precise code references and safe rename targets.