rmc-type-overlaps

Detect Rust type name collisions and module shadowing across a workspace.

29|5|Updated Nov 24, 2025
One-click install
npx skills add https://github.com/molaco/rust-code-mcp --skill rmc-type-overlaps
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rmc-type-overlaps
Source: https://github.com/molaco/rust-code-mcp/tree/main/skills/rmc-type-overlaps
Command: npx skills add https://github.com/molaco/rust-code-mcp --skill rmc-type-overlaps

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Rust workspaces often accumulate confusing namespace footguns—type name collisions across crates, module shadowing that changes what references resolve to, and duplicate definitions that silently create migration debt.

Core Features & Use Cases

  • Workspace-wide overlap audit: detects cross-crate type collisions, module shadowing, within-crate duplicate type names, and overly common function names that may indicate missing abstractions.
  • Single-crate hygiene audit: narrows findings to one crate and guides investigation using the crate’s module tree and overlap filtering.
  • Decision-guided remediation: uses consumer-usage patterns (including who-uses summaries and semantic similarity checks) to rank severity and recommend actions like renaming modules, merging duplicates, or factoring test fixtures.

Quick Start

Ask the skill to audit a Rust workspace at the provided workspace path for Rust type overlaps and naming hygiene.

Frequently Asked Questions about rmc-type-overlaps

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

FAQPage Schema
How do I find Rust type name collisions across crates in a workspace?

Audit a Rust workspace for type overlaps to detect cross-crate type collisions and module shadowing. This identifies duplicate definitions and ambiguous types, reducing migration debt and preventing incorrect symbol resolution during codebase refactoring.

What is module shadowing in Rust and when does it cause incorrect symbol resolution?

Module shadowing in Rust occurs when a module or type name obscures another, changing what references resolve to. It becomes problematic during structural audits or refactoring when duplicate definitions silently accumulate, creating migration debt and ambiguous symbol resolution across the workspace.

How do I audit a single crate for naming hygiene and duplicate types?

Perform a single-crate hygiene audit by narrowing overlap findings to one crate using the crate’s module tree and overlap filtering. This guides investigation into within-crate duplicate type names and overly common function names indicating missing abstractions.

How do I verify the severity of Rust naming collisions before refactoring?

Verify Rust naming collision severity by analyzing consumer-usage patterns with semantic similarity checks. Use who-uses summaries and find_definition to rank severity and recommend remediation actions like renaming modules, merging duplicates, or factoring test fixtures.

Can I use semantic similarity to identify overly common Rust function names?

Yes, semantic similarity checks help identify overly common Rust function names that may indicate missing abstractions. During a structural audit, these checks rank severity and recommend actions like factoring test fixtures or merging duplicate definitions to improve structural hygiene.

What is the best way to reduce migration debt when onboarding to an unfamiliar Rust codebase?

Run a workspace-wide overlap audit to reduce migration debt in an unfamiliar Rust codebase. Detecting cross-crate type collisions and module shadowing early prevents incorrect symbol resolution and guides structural hygiene remediation during onboarding.