Skip to content
Development
Skill

/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.

From plugin
agent-skill
8292 skills
Install
$ npx -y skills add ast-grep/agent-skill --skill outline --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/outline

Context preview

The summary Claude sees to decide when to auto-load this skill.

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.md

outline.SKILL.md
name: ast-grep-outline
description: 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.

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 exports

**Map 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,function

**Zoom 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 expanded

**Trace dependency direction.** Find which files import a package or module to decide where a change belongs:

ast-grep outline <dir> --items imports --view signatures

**Review 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 exports

Argument Guide

  • `--items <KIND>` selects top-level items: `structure` for local declarations

(file default), `exports` for public API (directory default), `imports` for dependencies, `all` when import/export edges matter together.

  • `--view <VIEW>` controls detail, from least to most: `names` for directory

scans, `signatures` for one line per item, `digest` for signatures plus member names, `expanded` for 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 like `method,field` never match top-level items.

  • `--pub-members` hides private members when the view prints members.
  • `--json=stream` emits 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.

Read more
Ships withagent-skill

A Claude Code plugin marketplace containing the ast-grep skill for powerful structural code search using Abstract Syntax Tree (AST) patterns. Search your codebase based on code structure rather than just text matching.

Get the whole plugin
Stats
830
Stars
33
Forks
Maintained
Maintenance
1mo ago
Last commit
8mo ago
Created

Repo: ast-grep/agent-skill