Ast Grep Outline
Use when exploring or modifying a codebase and you need a cheap structural map of files, directories, imports, exports, or direct members before reading full source.
- Skill ID
- ast-grep/agent-skill/ast-grep-outline
- Publisher
- ast-grep
- Repository
- agent-skill
- Installs
- 0
- Files
- 1
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
ast-grep/agent-skill/ast-grep-outlineInstalls these files- SKILL.md
What this skill tells the agent
Use ast-grep outline
ast-grep outline prints a compact structural map of source code with line numbers: top-level items (imports, functions, classes, structs, interfaces, modules, enums) and their direct members (fields, methods, constructors, enum variants). It is a local, syntax-only view — cheap enough to run before any full file read.
Read code in stages: find candidate files with search or file names, outline them, then open only the source range the outline points to. Defaults adapt to input: a file shows its local structure with member digests; a directory shows only its exported surface as grouped names.
When To Use It
Understand a file before editing. Get a table of contents, dependencies, and public entry points before reading implementation details:
ast-grep outline <file>
ast-grep outline <file> --items imports
ast-grep outline <file> --items exportsMap an unfamiliar directory. Scan the public surface of a subtree, then narrow by symbol type when you know what you are looking for:
ast-grep outline <dir> --items exports
ast-grep outline <dir> --type struct,enum,functionZoom into a known symbol. After search finds a likely name, list its members with line numbers instead of reading the whole body:
ast-grep outline <file> --match <symbol> --type class --view expandedTrace dependency direction. Find which files import a package or module to decide where a change belongs:
ast-grep outline <dir> --items imports --view signaturesReview changed files after editing. Git tells you what changed; outline summarizes the resulting structure and public surface:
ast-grep outline $(git diff --name-only HEAD) --items exportsArgument Guide
--items <KIND>selects top-level items:structurefor local declarations (file default),exportsfor public API (directory default),importsfor dependencies,allwhen import/export edges matter together.--view <VIEW>controls detail, from least to most:namesfor directory scans,signaturesfor one line per item,digestfor signatures plus member names,expandedfor one line per member with its line number.--match <REGEX>filters top-level items by name or signature. Rust regex, case-sensitive; it never matches members.--type <TYPE[,TYPE...]>keeps only some top-level symbol types, such as--type class,function. Member types likemethod,fieldnever match top-level items.--pub-membershides private members when the view prints members.--json=streamemits one JSON object per file with precise ranges. Use it only to pipe or post-process entries; prefer text for navigation.
Limits
outline shows local syntax structure. It does not resolve references, infer types, follow re-export chains, or build a call graph. Use ast-grep run, rg, or compiler-backed tools for those questions, then outline the candidate files they surface.
More from ast-grep
Use this skill in a project
Open any RiverX project, search the Skills panel for ast-grep/agent-skill/ast-grep-outline, and install it in one click.
