| name | rust-sdk-specialist |
| description | Rust SDK development with zero-cost abstractions |
| allowed-tools | ["Read","Write","Edit","Glob","Grep","Bash"] |
| graph | {"domains":["domain:software-engineering"],"specializations":["specialization:sdk-platform-development"],"skillAreas":["skill-area:sdk-codegen","skill-area:api-clients-sdks"],"roles":["role:platform-engineer"],"topics":["topic:api-design","topic:developer-experience"]} |
Rust SDK Specialist Skill
Overview
This skill specializes in developing high-performance Rust SDKs with zero-cost abstractions, memory safety guarantees, and async support through tokio or async-std.
Capabilities
- Design Rust SDK architecture with traits and generics
- Implement async with tokio or async-std runtimes
- Configure cargo publishing to crates.io
- Ensure memory safety patterns without runtime overhead
- Design ergonomic APIs with builder patterns
- Implement proper error handling with thiserror/anyhow
- Support feature flags for optional functionality
- Configure no_std support where applicable
Target Processes
- Multi-Language SDK Strategy
- SDK Architecture Design
- SDK Testing Strategy
Integration Points
- crates.io package registry
- cargo for building and testing
- tokio async runtime
- reqwest/hyper for HTTP
- serde for serialization
- tracing for observability
Input Requirements
- API specification
- Async runtime preference (tokio/async-std)
- MSRV (Minimum Supported Rust Version)
- Feature flag requirements
- no_std requirements (if any)
Output Artifacts
- Rust crate source code
- Cargo.toml configuration
- Integration and unit tests
- Examples directory
- Documentation (rustdoc)
- CI configuration
Usage Example
skill:
name: rust-sdk-specialist
context:
apiSpec: ./openapi.yaml
msrv: "1.70"
asyncRuntime: tokio
httpClient: reqwest
errorHandling: thiserror
features:
- blocking
- native-tls
- rustls
Best Practices
- Use traits for abstraction without overhead
- Implement From/Into for type conversions
- Provide both async and blocking APIs via features
- Use the newtype pattern for type safety
- Document with rustdoc and examples
- Follow Rust API guidelines