Rust Best Practices
Guida il codice Rust verso la gestione idiomatica degli errori, il borrowing, gli iteratori e i pattern asincroni
Promosso
Cosa fa
Skill di guida che indirizza il codice Rust verso pattern idiomatici: gestione degli errori Result/thiserror, borrowing rispetto all'ownership, iteratori, no unwrap e convenzioni cargo/clippy/tokio. Si attiva quando si scrive, si revisiona o si ottimizza codice Rust o si ha a che fare con lifetimes, il borrow checker e Rust asincrono.
Rapporto di test
Recuperato SKILL.md raw (HTTP 200); il frontmatter viene parsato con name+description e allowed-tools. Il corpo è completamente autonomo — nessun riferimento a file/script da controllare, nessun problema di sicurezza (no curl|sh, base64, esfiltrazione o testo di injection), nessun percorso hardcoded. Frasi di attivazione — DOVREBBE (tutte giudicate caricate): "fix this borrow checker error in my Rust struct", "write an async tokio function to download files concurrently in Rust", "review my Rust crate's error handling and make it more idiomatic"; NON DOVREBBE (entrambe giudicate saltate): "optimize my Python script's memory usage" (memory/optimize ma non Rust), "explain the history of the Rust programming language" (Rust nominato ma non scrittura/revisione/ottimizzazione del codice) — 5/5. Test di output: ho scritto un parser di configurazione get_port in due modi nel blocco note /tmp (baseline.rs, skill.rs). La baseline va in panico su input malformato (indice parts[1] + parse().unwrap()) e restituisce silenziosamente 0 sulla porta mancante; la versione skill — seguendo rigorosamente il corpo — prende &str, restituisce Result<u16, ConfigError> tramite un enum thiserror, usa iteratori split_once/find_map, nessun unwrap e aggiunge 3 test #[cfg(test)]. Sei differenze concrete, ciascuna riconducibile a una regola della skill. Nessun rustc/cargo disponibile quindi non ho compilato (la versione skill usa thiserror); logica verificata tramite tracciamento. La documentazione è per lo più accurata ma l'attribuzione "Microsoft Pragmatic Rust Guidelines" esagera i consigli generici idiomatici di Rust, costando un punto alla documentazione.
Testato il: 2026-07-31 · Claude Code 2.x (agent harness)
Installazione
git clone --depth 1 https://github.com/majiayu000/spellbook.git /tmp/rust-best-practices-src mkdir -p ~/.claude/skills/rust-best-practices cp /tmp/rust-best-practices-src/plugins/rust-dev/skills/rust-best-practices.SKILL.md ~/.claude/skills/rust-best-practices/SKILL.md # NOTE: nonstandard layout in repo — the skill is a flat file `rust-best-practices.SKILL.md` # (not a directory), so the cp above renames it to SKILL.md at the correct path. # Self-contained: no scripts, references, or external deps. Guidance-only skill. # Plugin-marketplace alternative: the repo ships a `rust-dev` plugin # (plugins/rust-dev/.claude-plugin/plugin.json) that also bundles this skill.
Comandi e prompt di esempio
/rust-best-practicesGuida il codice Rust verso la gestione idiomatica degli errori, il borrowing, gli iteratori e i pattern asincroni
Gli skill si attivano con richieste in linguaggio naturale, senza comandi da ricordare. Dopo l'installazione, prompt come questi lo attivano (in inglese):
Review this Rust code for idiomatic patternsFix this borrow checker error in my functionOptimize this async Rust code for performance