Files
2026-02-12 22:58:33 +08:00

2.7 KiB

name, description, argument-hint, allowed-tools
name description argument-hint allowed-tools
rust-deps-visualizer Visualize Rust project dependencies as ASCII art. Triggers on: /deps-viz, dependency graph, show dependencies, visualize deps, 依赖图, 依赖可视化, 显示依赖 [--depth N] [--features]
Bash
Read
Glob

Rust Dependencies Visualizer

Generate ASCII art visualizations of your Rust project's dependency tree.

Usage

/rust-deps-visualizer [--depth N] [--features]

Options:

  • --depth N: Limit tree depth (default: 3)
  • --features: Show feature flags

Output Format

Simple Tree (Default)

my-project v0.1.0
├── tokio v1.49.0
│   ├── pin-project-lite v0.2.x
│   └── bytes v1.x
├── serde v1.0.x
│   └── serde_derive v1.0.x
└── anyhow v1.x

Feature-Aware Tree

my-project v0.1.0
├── tokio v1.49.0 [rt, rt-multi-thread, macros, fs, io-util]
│   ├── pin-project-lite v0.2.x
│   └── bytes v1.x
├── serde v1.0.x [derive]
│   └── serde_derive v1.0.x (proc-macro)
└── anyhow v1.x [std]

Implementation

Step 1: Parse Cargo.toml for direct dependencies

cargo metadata --format-version=1 --no-deps 2>/dev/null

Step 2: Get full dependency tree

cargo tree --depth=${DEPTH:-3} ${FEATURES:+--features} 2>/dev/null

Step 3: Format as ASCII art tree

Use these box-drawing characters:

  • ├── for middle items
  • └── for last items
  • for continuation lines

Visual Enhancements

Dependency Categories

my-project v0.1.0
│
├─[Runtime]─────────────────────
│ ├── tokio v1.49.0
│ └── async-trait v0.1.x
│
├─[Serialization]───────────────
│ ├── serde v1.0.x
│ └── serde_json v1.x
│
└─[Development]─────────────────
  ├── criterion v0.5.x
  └── proptest v1.x

Size Visualization (Optional)

my-project v0.1.0
├── tokio v1.49.0        ████████████ 2.1 MB
├── serde v1.0.x         ███████ 1.2 MB
├── regex v1.x           █████ 890 KB
└── anyhow v1.x          ██ 120 KB
                         ─────────────────
                         Total: 4.3 MB

Workflow

  1. Check for Cargo.toml in current directory
  2. Run cargo tree with specified options
  3. Parse output and generate ASCII visualization
  4. Optionally categorize by purpose (runtime, dev, build)
When See
Crate selection advice m11-ecosystem
Workspace management m11-ecosystem
Feature flag decisions m11-ecosystem