Skip to main content

search-code

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.

来源信息

仓库
JamieMason/syncpack
最近来源活动
2026年3月21日 20:40
检测到的 SKILL.md 语言
英语
星标
2,107
分支
75

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
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, 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 ```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 | Pattern | Matches | | ------- | -------------------------------------------- | | `$NAME` | Single 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
在 GitHub 查看