Fast, AST-based code-navigation toolkit — downloads the Rust binary on install
Project description
ast-outline-cli
CLI installer for ast-outline — a fast, AST-based code-navigation toolkit for source files. Downloads the pre-built Rust binary on first run.
Install
pip install ast-outline-cli
Usage
# Map the structure of a file (signatures + line ranges, no bodies)
ast-outline map src/player.rs
# Show the exact source of a specific method
ast-outline show Player.cs TakeDamage
# Compact digest of a whole module
ast-outline digest src/services/
# True public API (resolves pub use / __all__ re-exports)
ast-outline surface .
# Find all implementations of a type
ast-outline implements IDamageable src/
# Dependency graph
ast-outline deps src/auth.rs --depth 2
ast-outline reverse-deps src/auth.rs
ast-outline cycles
# Call graph (AST-accurate)
ast-outline callers TakeDamage
ast-outline callees Player.TakeDamage
# Hybrid BM25 + dense semantic search
ast-outline search "how does login work"
# Find semantically similar code
ast-outline find-related src/auth/login.rs:42
On first run, the CLI downloads the pre-built binary for your platform from GitHub releases and caches it locally.
| Platform | Cache directory |
|---|---|
| macOS | ~/Library/Caches/ast-outline/ |
| Linux | ~/.cache/ast-outline/ |
Supported Platforms
| Platform | Status |
|---|---|
| macOS ARM64 | Pre-built binary available |
| Other platforms | Build from source (see below) |
For unsupported platforms, build from source:
cargo install ast-outline
What is ast-outline?
ast-outline is a fast, AST-based code-navigation toolkit built for LLM coding agents and humans. It uses tree-sitter via ast-grep to parse source files and provide:
- File shape —
map/digest/showfor signatures with line ranges (95% token savings vs reading full files) - True public API —
surfaceresolves re-export graphs across Rust, Python, TypeScript, and more - Dependency graph —
deps/reverse-deps/cycles/graphfor import analysis - Call graph —
callers/calleeswith AST accuracy across 14 languages - Semantic search — hybrid BM25 + dense embeddings via
searchandfind-related - MCP server — every command exposed as an MCP tool for LLM agents
Supports Rust, Python, TypeScript, JavaScript, Java, C#, Kotlin, Scala, Go, PHP, Ruby, SQL, and Markdown.
Links
- ast-outline source code
- npm package (Node.js installer)
- crates.io (Rust library)
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ast_outline_cli-2.1.0.tar.gz.
File metadata
- Download URL: ast_outline_cli-2.1.0.tar.gz
- Upload date:
- Size: 3.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6946208f58da8a491bb4eff2267e7788694c30de56b1c280049d6581d639f770
|
|
| MD5 |
3e47b8659f261ec1aae739e5a17252a1
|
|
| BLAKE2b-256 |
f40bfc29059c82761a742563a2d914101acd0f658de96284d098d8e0d63d78f8
|
File details
Details for the file ast_outline_cli-2.1.0-py3-none-any.whl.
File metadata
- Download URL: ast_outline_cli-2.1.0-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4300582eb35752570631e2d38e579c0978d0b6049b3fd031824e03c31db0046c
|
|
| MD5 |
d76fb133964931aaf8268656746b8d0a
|
|
| BLAKE2b-256 |
68a149f3c0a4094eb3317aeec7b5cb6fd9cf5a361dd59eae3bfe0de7b037f7a5
|