Guide for writing ast-grep rules to perform structural code search and analysis. Use when users need to search codebases using Abstract Syntax Tree (AST) patterns, find specific code structures, or perform complex code queries that go beyond simple text search. This skill should be used when users ask to search for code patterns, find specific language constructs, or locate code with particular structural characteristics.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# ast-grep Code Search
## Overview
This skill helps translate natural language queries into ast-grep rules for structural code search. ast-grep uses Abstract Syntax Tree (AST) patterns to match code based on its structure rather than just text, enabling powerful and precise code search across large codebases.
## When to Use This Skill
Use this skill when users:
- Need to search for code patterns using structural matching (e.g., "find all async functions that don't have error handling")
- Want to locate specific language constructs (e.g., "find all function calls with specific parameters")
- Request searches that require understanding code structure rather than just text
- Ask to search for code with particular AST characteristics
- Need to perform complex code queries that traditional text search cannot handle
## General Workflow
Follow this process to help users write effective ast-grep rules:
### Step 1: Understand the Query
Clearly understand what the user wants to find. Ask clarifying questions if needed:
- What specific code pattern or structure are they looking for?
- Which programming language?
- Are there specific edge cases or variations to consider?
…
The line at the top of this page pins the label git:20260725.0b88df9, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_u3jtzwbaxst2ddb7
GET https://markdownregistry.com/api/v1/resolve?ref=moeru-ai/auv/ast-grep
GET https://markdownregistry.com/api/v1/blob/1d356580b6d3af4feb5722e820b1c34041f6e90162c063f1c63fce3f21c72543
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
moeru-ai/auv · .agents/skills/auv-wayland-rendering/SKILL.md · Prepare, diagnose, and validate Linux GPU and Wayland environments for AUV rendering and capture through XDG Desktop…
moeru-ai/auv · .agents/skills/create-pr/SKILL.md · Prepare or update AUV pull requests with source-backed CLI, Protobuf/Runner, and public API change disclosures…
moeru-ai/auv · .agents/skills/domain-web/SKILL.md · Use when building web services. Keywords: web server, HTTP, REST API, GraphQL, WebSocket, axum, actix, warp, rocket…
code-yeongyu/oh-my-openagent · packages/shared-skills/skills/ast-grep/SKILL.md · Searches and rewrites code by AST shape across 25 languages. Use when the target is a syntax pattern (every…
ast-grep/agent-skill · ast-grep/skills/ast-grep/SKILL.md · Guide for writing ast-grep rules to perform structural code search and analysis. Use when users need to search…
outlinedriven/outline-driven-development · .devin/skills/ast-grep/SKILL.md · Use when asked to run AST-based structural search, lint, or rewrite of code when regex is too fragile. Not for remote…
outlinedriven/odin-claude-plugin · plugins/odin-code/skills/ast-grep/SKILL.md · Use when asked to run AST-based structural search, lint, or rewrite of code when regex is too fragile. Not for remote…
everruns/yolop · src/bundled/system-skills/ast-grep/SKILL.md · Write effective ast-grep patterns for the built-in `ast_grep` structural-search tool and `ast_edit` rewrites. Use when…
sparq-org/sparq · .claude/skills/ast-grep/SKILL.md · Understand code STRUCTURE without reading whole files — outline a large file to its signatures, structural-grep every…