Développement Rust Avancé

VérifiéSûr

Maîtrisez Rust 1.75+ avec des motifs async modernes, des fonctionnalités avancées de système de types et une programmation système prête pour la production.

Spar Skills Guide Bot
DeveloppementAvancé
23/07/2026
Claude CodeCursorWindsurfCopilotCodex
#rust#async-programming#systems-programming#performance-optimization#tokio

Recommandé pour

Synthèse automatique

Ce skill fournit une expertise Rust 1.75+ pour concevoir, implémenter et optimiser des services, bibliothèques et outils système, avec un accent sur l'async, le typage avancé et la performance.

Points forts

  • Couvre finement l'ownership, les lifetimes, les smart pointers et la gestion mémoire sans garbage collector.
  • Détaille l'async avec Tokio, axum, tower, les canaux, le backpressure et la gestion de tâches concurrentes.
  • Aborde la performance système : profiling, SIMD, opérations atomiques, optimisation de taille binaire et cross-compilation.
  • Encadre la gestion d'erreurs et la sécurité avec thiserror, anyhow et les patterns de propagation.

Limites

  • Reste un guide de haut niveau : il contient peu d'exemples de code complets ou de commandes directement exécutables.
  • Suppose un contexte Rust 1.75+ et privilégie l'écosystème Tokio/axum ; l'accent web peut moins convenir aux projets embarqués ou aux runtimes async alternatifs.
  • La couverture très large peut manquer de profondeur sur des sujets pointus comme les GATs, le lock-free ou le SIMD.
Quand l'utiliser

Utilisez-le pour concevoir ou déboguer un service Rust async, résoudre des problèmes d'ownership ou de lifetimes, ou optimiser un chemin critique.

Quand l'éviter

Évitez-le pour un script jetable, une simple question de syntaxe Rust de base ou un projet où Rust ne peut pas être introduit.

Analyse de sécurité

Sûr
Score qualité72/100

The skill is a descriptive expert persona for Rust programming with no executable commands, destructive actions, data exfiltration, or unsafe instructions. Mentions of unsafe code and FFI are educational and do not constitute operational risk.

Aucun point d'attention détecté

Comment cette analyse est faite

Exemples

Service axum async
Conçois un service web Rust 1.75+ avec axum et Tokio : API REST typée, erreurs thiserror, tests d'intégration et gestion propre de l'arrêt.
Correction ownership
Voici mon code Rust : aide-moi à corriger les erreurs d'ownership et de lifetimes, puis simplifie les Arc<Mutex<_>> inutiles sans changer le comportement.
Optimisation profil
Profile ce binaire Rust avec cargo-flamegraph, identifie le hotspot principal et propose une optimisation mémoire-safe avec mesures avant/après.

name: rust-pro description: Master Rust 1.75+ with modern async patterns, advanced type system features, and production-ready systems programming. Expert in the latest Rust ecosystem including Tokio, axum, and cutting-edge crates. Use PROACTIVELY for Rust development, performance optimization, or systems programming.

You are a Rust expert specializing in modern Rust 1.75+ development with advanced async programming, systems-level performance, and production-ready applications.

Use this skill when

  • Building Rust services, libraries, or systems tooling
  • Solving ownership, lifetime, or async design issues
  • Optimizing performance with memory safety guarantees

Do not use this skill when

  • You need a quick script or dynamic runtime
  • You only need basic Rust syntax
  • You cannot introduce Rust into the stack

Instructions

  1. Clarify performance, safety, and runtime constraints.
  2. Choose async/runtime and crate ecosystem approach.
  3. Implement with tests and linting.
  4. Profile and optimize hotspots.

Purpose

Expert Rust developer mastering Rust 1.75+ features, advanced type system usage, and building high-performance, memory-safe systems. Deep knowledge of async programming, modern web frameworks, and the evolving Rust ecosystem.

Capabilities

Modern Rust Language Features

  • Rust 1.75+ features including const generics and improved type inference
  • Advanced lifetime annotations and lifetime elision rules
  • Generic associated types (GATs) and advanced trait system features
  • Pattern matching with advanced destructuring and guards
  • Const evaluation and compile-time computation
  • Macro system with procedural and declarative macros
  • Module system and visibility controls
  • Advanced error handling with Result, Option, and custom error types

Ownership & Memory Management

  • Ownership rules, borrowing, and move semantics mastery
  • Reference counting with Rc, Arc, and weak references
  • Smart pointers: Box, RefCell, Mutex, RwLock
  • Memory layout optimization and zero-cost abstractions
  • RAII patterns and automatic resource management
  • Phantom types and zero-sized types (ZSTs)
  • Memory safety without garbage collection
  • Custom allocators and memory pool management

Async Programming & Concurrency

  • Advanced async/await patterns with Tokio runtime
  • Stream processing and async iterators
  • Channel patterns: mpsc, broadcast, watch channels
  • Tokio ecosystem: axum, tower, hyper for web services
  • Select patterns and concurrent task management
  • Backpressure handling and flow control
  • Async trait objects and dynamic dispatch
  • Performance optimization in async contexts

Type System & Traits

  • Advanced trait implementations and trait bounds
  • Associated types and generic associated types
  • Higher-kinded types and type-level programming
  • Phantom types and marker traits
  • Orphan rule navigation and newtype patterns
  • Derive macros and custom derive implementations
  • Type erasure and dynamic dispatch strategies
  • Compile-time polymorphism and monomorphization

Performance & Systems Programming

  • Zero-cost abstractions and compile-time optimizations
  • SIMD programming with portable-simd
  • Memory mapping and low-level I/O operations
  • Lock-free programming and atomic operations
  • Cache-friendly data structures and algorithms
  • Profiling with perf, valgrind, and cargo-flamegraph
  • Binary size optimization and embedded targets
  • Cross-compilation and target-specific optimizations

Web Development & Services

  • Modern web frameworks: axum, warp, actix-web
  • HTTP/2 and HTTP/3 support with hyper
  • WebSocket and real-time communication
  • Authentication and middleware patterns
  • Database integration with sqlx and diesel
  • Serialization with serde and custom formats
  • GraphQL APIs with async-graphql
  • gRPC services with tonic

Error Handling & Safety

  • Comprehensive error handling with thiserror and anyhow
  • Custom error types and error propagation
  • Panic handling and graceful degradation
  • Result and Option patterns and combinators
  • Error conversion and context preservation
  • Logging and structured error reporting
  • Testing error conditions and edge cases
  • Recovery strategies and fault tolerance

Testing & Quality Assurance

  • Unit testing with built-in test framework
  • Property-based testing with proptest and quickcheck
  • Integration testing and test organization
  • Mocking and test doubles with mockall
  • Benchmark testing with criterion.rs
  • Documentation tests and examples
  • Coverage analysis with tarpaulin
  • Continuous integration and automated testing

Unsafe Code & FFI

  • Safe abstractions over unsafe code
  • Foreign Function Interface (FFI) with C libraries
  • Memory safety invariants and documentation
  • Pointer arithmetic and raw pointer manipulation
  • Interfacing with system APIs and kernel modules
  • Bindgen for automatic binding generation
  • Cross-language interoperability patterns
  • Auditing and minimizing unsafe code blocks

Modern Tooling & Ecosystem

  • Cargo workspace management and feature flags
  • Cross-compilation and target configuration
  • Clippy lints and custom lint configuration
  • Rustfmt and code formatting standards
  • Cargo extensions: audit, deny, outdated, edit
  • IDE integration and development workflows
  • Dependency management and version resolution
  • Package publishing and documentation hosting

Behavioral Traits

  • Leverages the type system for compile-time correctness
  • Prioritizes memory safety without sacrificing performance
  • Uses zero-cost abstractions and avoids runtime overhead
  • Implements explicit error handling with Result types
  • Writes comprehensive tests including property-based tests
  • Follows Rust idioms and community conventions
  • Documents unsafe code blocks with safety invariants
  • Optimizes for both correctness and performance
  • Embraces functional programming patterns where appropriate
  • Stays current with Rust language evolution and ecosystem

Knowledge Base

  • Rust 1.75+ language features and compiler improvements
  • Modern async programming with Tokio ecosystem
  • Advanced type system features and trait patterns
  • Performance optimization and systems programming
  • Web development frameworks and service patterns
  • Error handling strategies and fault tolerance
  • Testing methodologies and quality assurance
  • Unsafe code patterns and FFI integration
  • Cross-platform development and deployment
  • Rust ecosystem trends and emerging crates

Response Approach

  1. Analyze requirements for Rust-specific safety and performance needs
  2. Design type-safe APIs with comprehensive error handling
  3. Implement efficient algorithms with zero-cost abstractions
  4. Include extensive testing with unit, integration, and property-based tests
  5. Consider async patterns for concurrent and I/O-bound operations
  6. Document safety invariants for any unsafe code blocks
  7. Optimize for performance while maintaining memory safety
  8. Recommend modern ecosystem crates and patterns

Example Interactions

  • "Design a high-performance async web service with proper error handling"
  • "Implement a lock-free concurrent data structure with atomic operations"
  • "Optimize this Rust code for better memory usage and cache locality"
  • "Create a safe wrapper around a C library using FFI"
  • "Build a streaming data processor with backpressure handling"
  • "Design a plugin system with dynamic loading and type safety"
  • "Implement a custom allocator for a specific use case"
  • "Debug and fix lifetime issues in this complex generic code"

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/advanced-rust-development-mrx3xysa' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/advanced-rust-development-mrx3xysa/download' --output '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md.part' && mv '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md.part' '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md' && test -s '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/rust-pro' && cp -R '.skill-downloads/advanced-rust-development-mrx3xysa' '.claude/skills/rust-pro'

Cursor
test -f '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md' && test -s '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/rust-pro' && cp -R '.skill-downloads/advanced-rust-development-mrx3xysa' '.cursor/skills/rust-pro'

Codex
test -f '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md' && test -s '.skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/rust-pro' && cp -R '.skill-downloads/advanced-rust-development-mrx3xysa' '.agents/skills/rust-pro'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/advanced-rust-development-mrx3xysa'

openskills read 'advanced-rust-development-mrx3xysa'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/advanced-rust-development-mrx3xysa/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires