AgentSkillsCN

search-code

在 Syncpack 中搜索代码模式。当您需要查找符号、实现方式,或深入了解代码的使用场景时,可使用此技能。涵盖针对 Rust 的 ast-grep,以及适用于其他语言的 grep/rg 搜索工具。

SKILL.md
--- frontmatter
name: search-code
description: Search for code patterns in Syncpack. Use when finding symbols, implementations, or understanding how code is used. Covers ast-grep for Rust and grep/rg for other cases.

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, structsast-grep
Multiple file typesgrep/rg
Content in comments intentionallygrep/rg
Non-Rust files (JSON, MD, TOML)grep/rg

ast-grep Examples

bash
# 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

PatternMatches
$NAMESingle identifier
$$$Zero or more items (arguments, fields, etc.)
$_Any single expression

When to Use grep/rg

bash
# 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

bash
ast-grep -p 'Context' src/

Find all InstanceState assignments

bash
ast-grep -p 'InstanceState::valid' src/
ast-grep -p 'InstanceState::fixable' src/
ast-grep -p 'InstanceState::unfixable' src/

Find test files

bash
find src -name '*_test.rs'

Find command implementations

bash
ast-grep -p 'pub fn run($$$) -> i32' src/commands/

Tips

  • Start broad, then narrow with more specific patterns
  • Use ast-grep output to find the file, then read_file to understand context
  • Chain searches: find the type, then find where it's constructed