Rust Best Practices

Lenkt Rust-Code zu idiomatischer Fehlerbehandlung, Borrowing, Iteratoren und Async-Patterns

von majiayu000 · majiayu000/spellbook

Getestet · Funktioniert ★ 8.8/10

Rust Best Practices — Lenkt Rust-Code zu idiomatischer Fehlerbehandlung, Borrowing, Iteratoren und Async-Patterns

Was es kann

Anleitungs-Skill, der Rust-Code zu idiomatischen Mustern lenkt: Result/thiserror-Fehlerbehandlung, Borrowing statt Ownership, Iteratoren, kein unwrap und cargo/clippy/tokio-Konventionen. Wird ausgelöst beim Schreiben, Überprüfen oder Optimieren von Rust-Code oder beim Umgang mit Lifetimes, dem Borrow Checker und Async Rust.

Testbericht

SKILL.md roh abgerufen (HTTP 200); Frontmatter parst mit name+description und allowed-tools. Der Hauptteil ist vollständig eigenständig — keine Datei-/Skriptreferenzen zur Überprüfung, keine Sicherheitslücken (kein curl|sh, base64, Exfiltration oder Injection-Text), keine fest codierten Pfade. Trigger-Formulierungen — SOLLTE (alle als laden beurteilt): „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“; SOLLTE NICHT (beide als überspringen beurteilt): „optimize my Python script's memory usage“ (memory/optimize, aber nicht Rust), „explain the history of the Rust programming language“ (Rust genannt, aber nicht Schreiben/Überprüfen/Optimieren von Code) — 5/5. Output-Test: einen get_port-Konfigurationsparser auf zwei Arten im /tmp-Scratchpad geschrieben (baseline.rs, skill.rs). Baseline panikt bei fehlerhafter Eingabe (parts[1]-Index + parse().unwrap()) und gibt bei fehlendem Port stillschweigend 0 zurück; Skill-Version — streng dem Hauptteil folgend — nimmt &str, gibt Result<u16, ConfigError> über ein thiserror-Enum zurück, verwendet split_once/find_map-Iteratoren, kein unwrap und fügt 3 #[cfg(test)]-Tests hinzu. Sechs konkrete Unterschiede, jeder auf eine Skill-Regel zurückführbar. Kein rustc/cargo verfügbar, daher nicht kompiliert (Skill-Version verwendet thiserror); Logik durch Tracing verifiziert. Docs größtenteils genau, aber die Zuschreibung „Microsoft Pragmatic Rust Guidelines“ übertreibt generische idiomatische Rust-Ratschläge, was einen Docs-Punkt kostet.

Getestet am: 2026-07-31 · Claude Code 2.x (agent harness)

Installation

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.

Befehle & Beispiel-Prompts

  • /rust-best-practicesLenkt Rust-Code zu idiomatischer Fehlerbehandlung, Borrowing, Iteratoren und Async-Patterns

Skills reagieren auf normale Anfragen — keine Slash-Befehle nötig. Nach der Installation aktivieren Prompts wie diese den Skill (auf Englisch):

  • Review this Rust code for idiomatic patterns
  • Fix this borrow checker error in my function
  • Optimize this async Rust code for performance