๐ŸŽฏ

rust-code-navigator

๐ŸŽฏSkill

from actionbook/rust-skills

VibeIndex|
What it does

Navigates Rust code by finding symbol definitions, references, and locations using Language Server Protocol (LSP) across project files.

๐Ÿ“ฆ

Part of

actionbook/rust-skills(35 items)

rust-code-navigator

Installation

Quick InstallInstall with npx
npx skills add ZhangHanDong/rust-skills
CargoRun with Cargo (Rust)
cargo install cowork
git cloneClone repository
git clone https://github.com/ZhangHanDong/rust-skills.git
Add MarketplaceAdd marketplace to Claude Code
/plugin marketplace add ZhangHanDong/rust-skills
๐Ÿ“– Extracted from docs: actionbook/rust-skills
15Installs
665
-
AddedFeb 4, 2026

Skill Details

SKILL.md

"Navigate Rust code using LSP. Triggers on: /navigate, go to definition, find references, where is defined, ่ทณ่ฝฌๅฎšไน‰, ๆŸฅๆ‰พๅผ•็”จ, ๅฎšไน‰ๅœจๅ“ช, ่ฐ็”จไบ†่ฟ™ไธช"

Overview

# Rust Code Navigator

Navigate large Rust codebases efficiently using Language Server Protocol.

Usage

```

/rust-code-navigator [in file.rs:line]

```

Examples:

  • /rust-code-navigator parse_config - Find definition of parse_config
  • /rust-code-navigator MyStruct in src/lib.rs:42 - Navigate from specific location

LSP Operations

1. Go to Definition

Find where a symbol is defined.

```

LSP(

operation: "goToDefinition",

filePath: "src/main.rs",

line: 25,

character: 10

)

```

Use when:

  • User asks "where is X defined?"
  • User wants to understand a type/function
  • Ctrl+click equivalent

2. Find References

Find all usages of a symbol.

```

LSP(

operation: "findReferences",

filePath: "src/lib.rs",

line: 15,

character: 8

)

```

Use when:

  • User asks "who uses X?"
  • Before refactoring/renaming
  • Understanding impact of changes

3. Hover Information

Get type and documentation for a symbol.

```

LSP(

operation: "hover",

filePath: "src/main.rs",

line: 30,

character: 15

)

```

Use when:

  • User asks "what type is X?"
  • User wants documentation
  • Quick type checking

Workflow

```

User: "Where is the Config struct defined?"

โ”‚

โ–ผ

[1] Search for "Config" in workspace

LSP(operation: "workspaceSymbol", ...)

โ”‚

โ–ผ

[2] If multiple results, ask user to clarify

โ”‚

โ–ผ

[3] Go to definition

LSP(operation: "goToDefinition", ...)

โ”‚

โ–ผ

[4] Show file path and context

Read surrounding code for context

```

Output Format

Definition Found

```

Config (struct)

Defined in: src/config.rs:15

โ€‹```rust

#[derive(Debug, Clone)]

pub struct Config {

pub name: String,

pub port: u16,

pub debug: bool,

}

โ€‹```

Documentation: Configuration for the application server.

```

References Found

```

References to `Config` (5 found)

| Location | Context |

|----------|---------|

| src/main.rs:10 | let config = Config::load()?; |

| src/server.rs:25 | fn new(config: Config) -> Self |

| src/server.rs:42 | self.config.port |

| src/tests.rs:15 | Config::default() |

| src/cli.rs:8 | config: Option |

```

Common Patterns

| User Says | LSP Operation |

|-----------|---------------|

| "Where is X defined?" | goToDefinition |

| "Who uses X?" | findReferences |

| "What type is X?" | hover |

| "Find all structs" | workspaceSymbol |

| "What's in this file?" | documentSymbol |

Error Handling

| Error | Cause | Solution |

|-------|-------|----------|

| "No LSP server" | rust-analyzer not running | Suggest: rustup component add rust-analyzer |

| "Symbol not found" | Typo or not in scope | Search with workspaceSymbol first |

| "Multiple definitions" | Generics or macros | Show all and let user choose |

Related Skills

| When | See |

|------|-----|

| Call relationships | rust-call-graph |

| Project structure | rust-symbol-analyzer |

| Trait implementations | rust-trait-explorer |

| Safe refactoring | rust-refactor-helper |

More from this repository10

๐Ÿช
actionbook-rust-skills๐ŸชMarketplace

Comprehensive Rust development assistant with meta-question routing, coding guidelines, version queries, and ecosystem support

๐ŸŽฏ
coding-guidelines๐ŸŽฏSkill

Provides comprehensive Rust coding guidelines covering naming conventions, best practices, error handling, memory management, concurrency, and code style recommendations.

๐ŸŽฏ
rust-refactor-helper๐ŸŽฏSkill

Performs safe Rust refactoring by analyzing symbol references, dependencies, and potential impacts using Language Server Protocol (LSP) operations.

๐ŸŽฏ
m09-domain๐ŸŽฏSkill

Guides domain modeling in Rust by helping identify entities, value objects, aggregates, and their ownership patterns with domain-driven design principles.

๐ŸŽฏ
m05-type-driven๐ŸŽฏSkill

Enforces compile-time type safety by preventing invalid states through type-level design techniques like newtypes, type states, and phantom types.

๐ŸŽฏ
rust-learner๐ŸŽฏSkill

Retrieves and provides comprehensive Rust and crate information, including versions, features, documentation, and changelogs from authoritative sources.

๐ŸŽฏ
m02-resource๐ŸŽฏSkill

Guides developers in selecting the right smart pointer and resource management strategy based on ownership, thread safety, and design constraints.

๐ŸŽฏ
m11-ecosystem๐ŸŽฏSkill

Guides Rust developers in selecting, integrating, and managing ecosystem dependencies with best practices and strategic decision-making.

๐ŸŽฏ
rust-trait-explorer๐ŸŽฏSkill

Explores Rust trait implementations, revealing which types implement specific traits and their implementation details using LSP.

๐ŸŽฏ
rust-call-graph๐ŸŽฏSkill

Generates and visualizes Rust function call graphs using LSP, revealing function relationships and call hierarchies.