ast-grep SKILL.md skillA
This file is byte-identical to the first copy the registry indexed. Same content hash, so the same checks give both the same grade.
ast-grep from outlinedriven/odin-claude-plugin is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add outlinedriven/odin-claude-plugin/ast-grep@git:20260904.2014e73Pins git:20260904.2014e73 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- outlinedriven/odin-claude-plugin
- Path
plugins/odin-code/skills/ast-grep/SKILL.md- Versions recorded
- 5
- Latest version
- git:20260904.2014e73, committed Sep 4, 2026
- First version recorded
- Aug 31, 2026
- Size
- 4,966 bytes
- Repository stars
- 40
- License
- Apache-2.0
Use when asked to run AST-based structural search, lint, or rewrite of code when regex is too fragile. Not for remote, credential, publish, deploy, or irreversible changes.
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 ## Contract | Field | Bound contract | |---|---| | Trigger | AST-based modification, structural search, lint, or replacement too fragile for regex. | | Authority | Reversible local: writes only VCS-tracked source files (search is read-only; rewrites apply only through the helper after dry-run review); rollback is version control. No remote mutation. | | Side effect | Local file writes through the helper two-pass validate/dry-run/apply flow; no remote, credential, or published mutation. | | Done | Pattern validated and blast radius reviewed; any rewrite landed at the correct scope (search/lint-only runs are valid). | ## Inputs - An ast-grep pattern, single-quoted in the shell so `$VAR` reaches ast-grep unexpanded. - A language (`--lang`) or a single target path whose extension auto-detects it; required for stdin patterns. - For rewrites: a rewrite template and one or more target paths (defaults to the current directory). - Optional: include/exclude globs (repeatable, prefix `!` to exclude), context lines, JSON output mode. ## Procedure …
Read the whole file at its exact version.
How to install
mdr add outlinedriven/odin-claude-plugin/ast-grep@sha256:83937c99021c839aThe line at the top of this page pins the label git:20260904.2014e73, 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.
[](https://markdownregistry.com/a/art_prdv46jpx6hlynie)
4 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 5 versions of this file, between Aug 31, 2026 and Sep 4, 2026, about one every day.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20260904.2014e73 latest | 2026-09-04 | 2014e73 | 4,966 B | A | view · diff |
| git:20260904.934dac8 | 2026-09-04 | 934dac8 | 5,059 B | A | view · diff |
| git:20260903.31c840c | 2026-09-03 | 31c840c | 5,022 B | A | view · diff |
| git:20260831.8d3c24a | 2026-08-31 | 8d3c24a | 5,005 B | A | view · diff |
| git:20260831.7bbed6d | 2026-08-31 | 7bbed6d | 5,029 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (4966 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
outlinedriven/odin-claude-plugin · 40 stars · license Apache-2.0 · pushed 2026-09-29 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_prdv46jpx6hlynie GET https://markdownregistry.com/api/v1/resolve?ref=outlinedriven/odin-claude-plugin/ast-grep GET https://markdownregistry.com/api/v1/blob/83937c99021c839ac22b7f3bed933a627c8b1010a949548e72bd85d57639eaa2
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.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.
More from outlinedriven/odin-claude-plugin
Every file in outlinedriven/odin-claude-plugin