search-code
SKILL.md
Search Code
Guide for searching the Syncpack codebase effectively.
Golden Rule
Use ast-grep for Rust files — it filters out comments, strings, and docs.
Quick Reference
| Looking for... | Use |
|---|---|
| Rust symbols, patterns, structs | ast-grep |
| Multiple file types | grep/rg |
| Content in comments intentionally | grep/rg |
| Non-Rust files (JSON, MD, TOML) | grep/rg |
ast-grep Examples
# Find struct definitions
ast-grep -p 'pub struct $NAME' src/
# Find function calls
ast-grep -p 'Specifier::new' src/
# Find enum variants
ast-grep -p 'pub enum $NAME' src/
# Find impl blocks
ast-grep -p 'impl $TYPE' src/
# Find specific method definitions
ast-grep -p 'pub fn run($$$) -> i32' src/
# Find match expressions
ast-grep -p 'match $EXPR { $$$ }' src/
Pattern Syntax
| Pattern | Matches |
|---|---|
$NAME |
Single identifier |
$$$ |
Zero or more items (arguments, fields, etc.) |
$_ |
Any single expression |
When to Use grep/rg
# Search across file types
rg "TODO" --type rust --type md
# Search in comments (ast-grep ignores these)
rg "FIXME" src/
# Search non-Rust files
rg "version" Cargo.toml
# Case-insensitive search
rg -i "error" src/
Common Searches
Find where a type is used
ast-grep -p 'Context' src/
Find all InstanceState assignments
ast-grep -p 'InstanceState::valid' src/
ast-grep -p 'InstanceState::fixable' src/
ast-grep -p 'InstanceState::unfixable' src/
Find test files
find src -name '*_test.rs'
Find command implementations
ast-grep -p 'pub fn run($$$) -> i32' src/commands/
Tips
- Start broad, then narrow with more specific patterns
- Use
ast-grepoutput to find the file, thenread_fileto understand context - Chain searches: find the type, then find where it's constructed
Weekly Installs
10
Repository
jamiemason/syncpackGitHub Stars
1.9K
First Seen
Feb 21, 2026
Security Audits
Installed on
opencode10
github-copilot10
codex10
kimi-cli10
amp10
gemini-cli10