Loading...
Loading...
Search code by AST structure using ast-grep. Find semantic patterns like function calls, imports, class definitions instead of text patterns. Triggers on: find all calls to X, search for pattern, refactor usages, find where function is used, structural search, ast-grep, sg.
npx skill4agent add 0xdarkmatter/claude-mods structural-search| Tool | Command | Use For |
|---|---|---|
| ast-grep | | AST-aware code search |
| Pattern | Matches | Example |
|---|---|---|
| Named identifier | |
| Any single node | |
| Zero or more nodes | |
# 1. Find console.log calls
sg -p 'console.log($_)'
# 2. Find React hooks
sg -p 'const [$_, $_] = useState($_)'
sg -p 'useEffect($_, [$$$])'
# 3. Find function definitions
sg -p 'function $NAME($$$) { $$$ }'
sg -p 'def $NAME($$$): $$$' --lang python
# 4. Find imports
sg -p 'import $_ from "$_"'
sg -p 'from $_ import $_' --lang python
# 5. Find async patterns
sg -p 'await $_'
sg -p 'async function $NAME($$$) { $$$ }'
# 6. Find error handling
sg -p 'try { $$$ } catch ($_) { $$$ }'
sg -p 'if err != nil { $$$ }' --lang go
# 7. Find potential issues
sg -p '$_ == $_' # == instead of ===
sg -p 'eval($_)' # Security risk
sg -p '$_.innerHTML = $_' # XSS vector
# 8. Preview refactoring
sg -p 'console.log($_)' -r 'logger.info($_)'
# 9. Apply refactoring
sg -p 'var $NAME = $_' -r 'const $NAME = $_' --rewrite
# 10. Search specific language
sg -p 'pattern' --lang typescript| Task | Command |
|---|---|
| Find pattern | |
| Specific language | |
| Replace (preview) | |
| Replace (apply) | |
| Show context | |
| JSON output | |
| File list only | |
| Count matches | |
| Run YAML rules | |
./references/js-ts-patterns.md./references/python-patterns.md./references/go-rust-patterns.md./references/security-patterns.md./references/advanced-usage.md./assets/rule-template.yaml