rust-symbol-analyzer

Analyze project structure by examining symbols across your Rust codebase.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "rust-symbol-analyzer" with this command: npx skills add chasebuild/agent-skills/chasebuild-agent-skills-rust-symbol-analyzer

Rust Symbol Analyzer

Analyze project structure by examining symbols across your Rust codebase.

Usage

/rust-symbol-analyzer [file.rs] [--type struct|trait|fn|mod]

Examples:

  • /rust-symbol-analyzer

  • Analyze entire project

  • /rust-symbol-analyzer src/lib.rs

  • Analyze single file

  • /rust-symbol-analyzer --type trait

  • List all traits in project

LSP Operations

  1. Document Symbols (Single File)

Get all symbols in a file with their hierarchy.

LSP( operation: "documentSymbol", filePath: "src/lib.rs", line: 1, character: 1 )

Returns: Nested structure of modules, structs, functions, etc.

  1. Workspace Symbols (Entire Project)

Search for symbols across the workspace.

LSP( operation: "workspaceSymbol", filePath: "src/lib.rs", line: 1, character: 1 )

Note: Query is implicit in the operation context.

Workflow

User: "What's the structure of this project?" │ ▼ [1] Find all Rust files Glob("**/*.rs") │ ▼ [2] Get symbols from each key file LSP(documentSymbol) for lib.rs, main.rs │ ▼ [3] Categorize by type │ ▼ [4] Generate structure visualization

Output Format

Project Overview

Project Structure: my-project

Modules

├── src/ │ ├── lib.rs (root) │ ├── config/ │ │ ├── mod.rs │ │ └── parser.rs │ ├── handlers/ │ │ ├── mod.rs │ │ ├── auth.rs │ │ └── api.rs │ └── models/ │ ├── mod.rs │ ├── user.rs │ └── order.rs └── tests/ └── integration.rs

By Symbol Type

Symbols by Type

Structs (12)

NameLocationFieldsDerives
Configsrc/config.rs:105Debug, Clone
Usersrc/models/user.rs:84Debug, Serialize
Ordersrc/models/order.rs:156Debug, Serialize
...

Traits (4)

NameLocationMethodsImplementors
Handlersrc/handlers/mod.rs:53AuthHandler, ApiHandler
Repositorysrc/db/mod.rs:125UserRepo, OrderRepo
...

Functions (25)

NameLocationVisibilityAsync
mainsrc/main.rs:10pubyes
parse_configsrc/config.rs:45pubno
...

Enums (6)

NameLocationVariants
Errorsrc/error.rs:58
Statussrc/models/order.rs:54
...

Single File Analysis

src/handlers/auth.rs

Symbols Hierarchy

mod auth ├── struct AuthHandler │ ├── field: config: Config │ ├── field: db: Pool │ └── impl AuthHandler │ ├── fn new(config, db) -> Self │ ├── fn authenticate(&self, token) -> Result<User> │ └── fn refresh_token(&self, user) -> Result<Token> ├── struct Token │ ├── field: value: String │ └── field: expires: DateTime ├── enum AuthError │ ├── InvalidToken │ ├── Expired │ └── Unauthorized └── impl Handler for AuthHandler ├── fn handle(&self, req) -> Response └── fn name(&self) -> &str

Analysis Features

Complexity Metrics

Complexity Analysis

FileStructsFunctionsLinesComplexity
src/handlers/auth.rs28150Medium
src/models/user.rs312200High
src/config.rs1350Low

Hotspots: Files with high complexity that may need refactoring

  • src/handlers/api.rs (15 functions, 300 lines)

Dependency Analysis

Internal Dependencies

auth.rs ├── imports from: config.rs, models/user.rs, db/mod.rs └── imported by: main.rs, handlers/mod.rs

user.rs ├── imports from: (none - leaf module) └── imported by: auth.rs, api.rs, tests/

Symbol Types

Type Icon LSP Kind

Module 📦 Module

Struct 🏗️ Struct

Enum 🔢 Enum

Trait 📜 Interface

Function ⚡ Function

Method 🔧 Method

Constant 🔒 Constant

Field 📎 Field

Common Queries

User Says Analysis

"What structs are in this project?" workspaceSymbol + filter

"Show me src/lib.rs structure" documentSymbol

"Find all async functions" workspaceSymbol + async filter

"List public API" documentSymbol + pub filter

Related Skills

When See

Navigate to symbol rust-code-navigator

Call relationships rust-call-graph

Trait implementations rust-trait-explorer

Safe refactoring rust-refactor-helper

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

domain-cli

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

git-atomic-commit

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

git-conventional-commit

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

git-pr-workflow

No summary provided by upstream source.

Repository SourceNeeds Review