What problem does it solve? Rust macros fail with diagnostics that point at the invocation instead of the defect, and proc-macro crates impose structural rules (separate crate, no self-invocation, no non-macro exports) that produce cryptic errors. This Skill maps each rustc, cargo, and Clippy message to its root cause and fix for both declarative and procedural macros. ## Core Features & Use Cases - Symptom routing: A triage table maps errors like "cannot find macro in this scope", "recursion limit reached", "proc-macro derive panicked", and "cyclic package dependency" to the exact section that fixes them. - Expansion hygiene and paths: Rules for $crate, ::core, and ::facade absolute paths, macro hygiene boundaries, fragment specifier follow sets, and keeping caller expressions out of unsafe blocks. - Derive crate architecture: Facade/derive crate split, exact version pinning, legal dev-dependency back edges, per-field generic bounds, and syn 2 to syn 3 migration with a renamed-items table. - Use Case: A derive macro compiles in your workspace but fails downstream with E0405 "cannot find trait in module facade". The Skill identifies the missing leading :: on emitted paths and shows the integration test that catches it. ## Quick Start Ask the agent to diagnose why your macro_rules macro fails with "cannot find macro in this scope" or to review a syn-based derive macro before release.