What problem does it solve? Rust codebases often accumulate parallel Config, Options, Error, and Builder types that drift apart over time, causing repeated bug fixes and adapter code. This Skill finds structurally similar abstractions and validates whether they should actually be merged, share a core, or stay separate. ## Core Features & Use Cases - Candidate Scanning: A dependency-free Python scanner extracts Rust structs, enums, traits, and impls, then scores structural and behavioral similarity to generate candidate clusters. - Semantic Validation: A checklist-driven workflow inspects callers, invariants, serialization, ownership, coherence, and feature gates before any merge recommendation, avoiding false positives like wire-vs-domain types. - Classification and Planning: Each cluster receives a disposition (unify, shared_core, keep_separate, needs_evidence) with drift risk, payoff, migration risk, and a smallest safe implementation sequence. - Use Case: Ask whether two configuration types in different crates should share a core, and receive an evidence-backed report with source anchors, divergences, and a migration plan. ## Quick Start Ask the agent to analyze whether the similar types in your Rust repository should be unified, specifying the repository path and whether you want a scan-only report or a consolidation plan.