name: rust-sdk-specialist description: 使用零成本抽象进行Rust SDK开发 allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- Bash
Rust SDK专家技能
概述
本技能专注于开发高性能的Rust SDK,具备零成本抽象、内存安全保证以及通过tokio或async-std实现的异步支持。
能力
- 使用特质和泛型设计Rust SDK架构
- 通过tokio或async-std运行时实现异步
- 配置cargo发布到crates.io
- 确保内存安全模式,无运行时开销
- 设计符合人体工程学的API,采用构建器模式
- 使用thiserror/anyhow实现正确的错误处理
- 支持功能标志以实现可选功能
- 在适用情况下配置no_std支持
目标流程
- 多语言SDK策略
- SDK架构设计
- SDK测试策略
集成点
- crates.io包注册表
- cargo用于构建和测试
- tokio异步运行时
- reqwest/hyper用于HTTP
- serde用于序列化
- tracing用于可观测性
输入要求
- API规范
- 异步运行时偏好(tokio/async-std)
- MSRV(最低支持的Rust版本)
- 功能标志要求
- no_std要求(如有)
输出工件
- Rust crate源代码
- Cargo.toml配置
- 集成和单元测试
- 示例目录
- 文档(rustdoc)
- CI配置
使用示例
skill:
name: rust-sdk-specialist
context:
apiSpec: ./openapi.yaml
msrv: "1.70"
asyncRuntime: tokio
httpClient: reqwest
errorHandling: thiserror
features:
- blocking
- native-tls
- rustls
最佳实践
- 使用特质进行无开销的抽象
- 为类型转换实现From/Into
- 通过功能标志提供异步和阻塞API
- 使用新类型模式确保类型安全
- 使用rustdoc和示例进行文档编写
- 遵循Rust API指南