mcpField
R
rust-deps-visualizer

rust-deps-visualizer

github.com/actionbook开发1.6k3.1k 次安装9 周前更新
代码仓库

关于 rust-deps-visualizer

将 Rust 项目的依赖树生成为 ASCII 图示的命令行技能。它读取 Cargo.toml 和 cargo tree 输出,并可限制深度或显示 feature 标记。

主要功能

  1. 01生成 ASCII 依赖树
  2. 02设置树深度
  3. 03显示 feature 标记
  4. 04解析 Cargo 元数据与依赖树

适用场景

  1. 01检查项目依赖
  2. 02缩减大型依赖树输出
  3. 03查看启用的 crate feature

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/actionbook/rust-skills --skill rust-deps-visualizer

安装后在 Claude Code 中输入/rust-deps-visualizer确认已加载。

详细介绍

Rust 依赖可视化工具

生成 Rust 项目依赖树的 ASCII 艺术图。

用法

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

选项:

  • --depth N:限制树的深度(默认值:3)
  • --features:显示功能标志

输出格式

简单树(默认)
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
感知功能的树
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]

实现

步骤 1: 解析 Cargo.toml,获取直接依赖

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

步骤 2: 获取完整依赖树

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

步骤 3: 将其格式化为 ASCII 艺术树

使用以下制表字符:

  • ├── 表示中间项
  • └── 表示最后一项
  • │ 表示续行

可视化增强

依赖类别
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
大小可视化(可选)
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

工作流

  1. 检查当前目录中是否存在 Cargo.toml
  2. 使用指定选项运行 cargo tree
  3. 解析输出并生成 ASCII 可视化图
  4. 可选地按用途分类(运行时、开发、构建)

相关技能

适用场景查看
Crate 选择建议m11-ecosystem
工作区管理m11-ecosystem
功能标志决策m11-ecosystem

评论

支持 Markdown