From sc-rust
Scans Rust code for edition-specific patterns and deprecated APIs, then migrates to a target edition (2015 → 2018 → 2021 → 2024) or updates breaking crate API changes (tokio 0.x → 1.x, diesel 1.x → 2.x, failure → anyhow/thiserror, futures 0.1 → async/await). Detects extern crate declarations, old module syntax (mod.rs), try!() macro, pre-NLL borrow patterns, and deprecated std APIs. Use when the user says "migrate to Rust 2021", "upgrade edition", "this is old Rust", "update tokio", "replace failure crate", or when rustc produces edition warnings. Do NOT use for dependency management (Cargo), performance optimization (web-optimize), or general refactoring unrelated to Rust edition/API compatibility.
How this skill is triggered — by the user, by Claude, or both
Slash command
/sc-rust:legacyThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Detects edition-specific patterns and deprecated APIs in the Rust codebase, then produces a migration plan and applies changes file by file — migrating to a newer edition or updating breaking crate API changes.
Detects edition-specific patterns and deprecated APIs in the Rust codebase, then produces a migration plan and applies changes file by file — migrating to a newer edition or updating breaking crate API changes.
| # | Action | Role | Input |
|---|---|---|---|
| 01 | scan | Detect edition/API gaps and deprecated patterns | path, target edition |
| 02 | migrate | Apply edition migration and crate API transformations | scan manifest |
Always sequential: scan → migrate.
scan reads Cargo.toml, detects current edition, finds deprecated patterns and outdated crate API usage, emits a structured manifestmigrate reads the manifest and applies transformations file by filereferences/rust-editions.md — edition-by-edition change tables (2015→2018→2021→2024)references/api-deprecations.md — std deprecations and crate migrations (failure, futures 0.1, rand, serde)Cargo.toml (edition = "2015"/"2018"/"2021"/"2024") before scanning.extern crate removal: verify the crate is in the standard prelude or Rust 2018+ implicit imports before removing.anyhow for binaries/applications, thiserror for library crates.target/ or generated build.rs output.npx claudepluginhub rebellioussmile/my-claude-marketplace --plugin sc-rustGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.