ast-grep
Search code using Abstract Syntax Tree patterns with ast-grep. Use when finding code structures, bug patterns, or refactoring candidates that depend on syntax rather than text.
allowed_tools: Bash, Read, Glob
$ 安裝
git clone https://github.com/majiayu000/claude-skill-registry /tmp/claude-skill-registry && cp -r /tmp/claude-skill-registry/skills/development/ast-grep ~/.claude/skills/claude-skill-registry// tip: Run this command in your terminal to install the skill
SKILL.md
name: ast-grep description: Search code using Abstract Syntax Tree patterns with ast-grep. Use when finding code structures, bug patterns, or refactoring candidates that depend on syntax rather than text. allowed-tools: Bash, Read, Glob
ast-grep - Structural Code Search
ast-grep searches code by matching AST patterns, not text. This finds code based on structure regardless of formatting or variable names.
Basic Usage
ast-grep run -p 'PATTERN' -l LANGUAGE
Pattern Syntax
$VAR- Match any single node (like a wildcard)$$$- Match zero or more nodes- Literal code matches itself
Common Patterns
| Goal | Pattern | Language |
|---|---|---|
| Find subtraction with specific left operand | discount - $VAR | typescript |
| Find all useEffect with empty deps | useEffect($FN, []) | tsx |
| Find console.log calls | console.log($$$) | typescript |
| Find async functions | async function $NAME($$$) { $$$ } | typescript |
Example: Finding Reversed Operands
To find where discount appears on the left side of subtraction:
ast-grep run -p 'discount - $VAR' -l typescript
This would find bugs like discount - basePrice (should be basePrice - discount).
When to Use
- Finding bug patterns based on code structure
- Locating specific API usage patterns
- Identifying refactoring candidates
- Searching for security anti-patterns
Repository

majiayu000
Author
majiayu000/claude-skill-registry/skills/development/ast-grep
0
Stars
0
Forks
Updated2d ago
Added1w ago