namesreallyblank

search-hierarchy

2
0
# Install this skill:
npx skills add namesreallyblank/Clorch --skill "search-hierarchy"

Install specific skill from multi-skill repository

# Description

Search Tool Hierarchy

# SKILL.md


name: search-hierarchy
description: Search Tool Hierarchy
user-invocable: false


Search Tool Hierarchy

Use the most token-efficient search tool for each query type.

Decision Tree

Query Type?
β”œβ”€β”€ STRUCTURAL (code patterns)
β”‚   β†’ AST-grep (~50 tokens output)
β”‚   Examples: "def foo", "class Bar", "import X", "@decorator"
β”‚
β”œβ”€β”€ SEMANTIC (conceptual questions)
β”‚   β†’ LEANN (~100 tokens if path-only)
β”‚   Examples: "how does auth work", "find error handling patterns"
β”‚
β”œβ”€β”€ LITERAL (exact identifiers)
β”‚   β†’ Grep (variable output)
β”‚   Examples: "TemporalMemory", "check_evocation", regex patterns
β”‚
└── FULL CONTEXT (need complete understanding)
    β†’ Read (1500+ tokens)
    Last resort after finding the right file

Token Efficiency Comparison

Tool Output Size Best For
AST-grep ~50 tokens Function/class definitions, imports, decorators
LEANN ~100 tokens Conceptual questions, architecture, patterns
Grep ~200-2000 Exact identifiers, regex, file paths
Read ~1500+ Full understanding after finding the file

Hook Enforcement

The grep-to-leann.sh hook automatically:
1. Detects query type (structural/semantic/literal)
2. Blocks and suggests AST-grep for structural queries
3. Blocks and suggests LEANN for semantic queries
4. Allows literal patterns through to Grep

DO

  • Start with AST-grep for code structure questions
  • Use LEANN for "how does X work" questions
  • Use Grep only for exact identifier matches
  • Read files only after finding them via search

DON'T

  • Use Grep for conceptual questions (returns nothing)
  • Read files before knowing which ones are relevant
  • Use Read when AST-grep would give file:line
  • Ignore hook suggestions

Examples

# STRUCTURAL β†’ AST-grep
ast-grep --pattern "async def $FUNC($$$):" --lang python

# SEMANTIC β†’ LEANN
leann search opc-dev "how does authentication work" --top-k 3

# LITERAL β†’ Grep
Grep pattern="check_evocation" path=opc/scripts

# FULL CONTEXT β†’ Read (after finding file)
Read file_path=opc/scripts/z3_erotetic.py

Optimal Flow

1. AST-grep: "Find async functions" β†’ 3 file:line matches
2. Read: Top match only β†’ Full understanding
3. Skip: 4 irrelevant files β†’ 6000 tokens saved

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.