rationalize-deps

Identify and prune unused default features in Cargo.toml dependencies.

1|Updated May 1, 2026
One-click install
npx skills add https://github.com/syncable-dev/tantivy --skill rationalize-deps-syncable-dev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rationalize-deps
Source: https://github.com/syncable-dev/tantivy/tree/main/.claude/skills/rationalize-deps
Command: npx skills add https://github.com/syncable-dev/tantivy --skill rationalize-deps-syncable-dev

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Many crates enable features by default that may not be needed. This skill identifies dependencies with default features enabled, tests whether default-features = false works, identifies which specific features are actually needed, and verifies compilation after changes.

Core Features & Use Cases

  • Detect default features in dependencies and propose minimal sets
  • Validate builds with default-features = false and explicit features
  • Document findings and provide a plan for gradual rollout in a workspace

Quick Start

Invoke rationalize-deps on your workspace to identify and remove unused dependency features.

Frequently Asked Questions about rationalize-deps

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I reduce Rust build times by trimming unused Cargo.toml features?

You can reduce Rust build times by identifying dependencies with default features enabled, testing default-features = false, and specifying only the minimal features needed to compile successfully.

What does setting default-features = false in Cargo.toml actually do?

Setting default-features = false disables optional functionality that crates enable automatically, preventing unused code from compiling and reducing binary size.

What is the best way to find which Cargo dependencies have unused default features?

The best way to find unused default features is using cargo metadata and cargo tree to inspect dependency graphs, identify active features, and propose minimal required sets.

Can I test default-features = false across an entire Rust workspace?

Yes, you can test default-features = false across a Rust workspace by applying changes to workspace members and validating builds with a test pipeline to confirm compatibility.

How do I know which specific Cargo features to keep when disabling defaults?

Identify needed features by testing compilation with default-features = false and explicitly enabling required features, then validating builds to confirm compatibility after changes.

What should I do if my Rust crate fails to compile after disabling default features?

If compilation fails after disabling default features, identify which specific features are actually needed, explicitly enable them in Cargo.toml, and validate builds with a test pipeline to confirm compatibility.