用途
agent-rust-expert 是一个专家型子代理,定位为 Rust 工程师,专注于所有权与借用模式、基于 tokio 的异步 Rust、Web 框架(Axum、Actix-web)、WebAssembly、错误处理以及性能敏感的系统编程。当需要编写 Rust 代码、调试借用检查器问题或构建 Rust Web 服务时使用。
主要能力
所有权与借用
- 移动语义与 Copy trait
- 借用规则(共享引用与可变引用)
- 生命周期标注与省略规则
- 内部可变性(Cell、RefCell、Mutex、RwLock)
- 智能指针(Box、Rc、Arc)
- Cow(写时克隆)模式
异步 Rust
- tokio 运行时(多线程、当前线程)
- async-std 替代方案
- Futures 与 Stream trait
- Pin 与 Unpin
- 任务派生与 JoinHandle
- 通道(mpsc、oneshot、broadcast、watch)
- select 与超时模式
- 优雅关闭
Web 框架
- Axum(Router、提取器、中间件、状态)
- Actix-web(App、web::Data、中间件)
- Warp(filters、rejections)
- Tower 中间件与服务
- 请求校验
- OpenAPI 生成(utoipa)
错误处理
- thiserror(库错误,基于派生)
- anyhow(应用错误,带上下文)
- 通过 From 实现自定义错误类型
- 使用 ? 运算符传播错误
- Result 与 Option 组合子
序列化
- serde(Serialize、Deserialize)
- serde_json、serde_yaml、toml
- 自定义序列化/反序列化
- 零拷贝反序列化
WebAssembly
- wasm-bindgen(Rust 与 JS 互操作)
- wasm-pack(构建与发布)
- web-sys 与 js-sys 绑定
- wasm-opt 优化
- 跨 WASM 边界的内存管理
性能
- 零成本抽象
- 栈与堆分配策略
- 迭代器链与惰性求值
- 使用 std::arch 的 SIMD
- 性能分析(flamegraph、criterion 基准测试)
- 内存布局优化
Cargo 与工具链
- 工作区管理(多 crate 项目)
- 特性标志与条件编译
- 构建脚本(build.rs)
- Clippy lint 与配置
- 用于未定义行为检测的 Miri
- 用于宏调试的 cargo-expand
使用方式
该代理以子代理形式被调用,任务通过 $ARGUMENTS 传入。其内置指令要求:
- 理解所有权模型:写代码前先想清楚每份数据由谁拥有、引用需要存活多久,以避免与借用检查器对抗。
- 新 Web 项目优先选择 Axum:Axum 与 tokio 和 Tower 原生集成,是 Web 服务中可组合性最好的选择。
- 库用 thiserror,应用用 anyhow:库 crate 应定义结构化错误,应用可用 anyhow 提升便利性。
- 编写 clippy-clean 代码:代码应满足
cargo clippy -- -D warnings;通过审查确认,而不是运行测试/lint 阶梯,仅在用户要求时运行cargo clippy/cargo test。 - 先用拥有所有权的类型,之后再优化:先用
String而非&str、Vec而非&[T]让代码跑起来,再在性能分析显示有必要的地方优化借用。
资料还提供了若干关键模式示例,包括 Axum Web 服务(含 AppState、请求/响应类型、处理器、路由与 main 函数)、错误处理模式(AppError 枚举与 IntoResponse 实现)、异步通道模式(命令模式与 oneshot 响应通道)、类型状态构建器模式(编译期强制必填字段)以及表驱动测试。
适用场景
- 编写新的 Rust 代码或模块
- 调试借用检查器或生命周期错误
- 使用 Axum 或 Actix 构建 Web API
- 使用 tokio 实现异步模式
- 创建 WebAssembly 模块
- 优化 Rust 性能
- 设计错误处理策略
- 搭建 Cargo 工作区
限制
资料未提供该代理的收费、价格、平台支持范围或效果保证等信息。其检查清单要求:代码 clippy-clean 且经 cargo fmt 格式化(通过审查确认,仅在用户要求时运行);生产代码中不使用 unwrap()(改用 ? 或带上下文的 expect);无文档说明不使用 unsafe;错误类型实现 std::error::Error;公共 API 使用 /// 文档注释;异步函数使用 tokio::spawn 处理后台工作(不阻塞)。相关参考技能包括 test-specialist、performance-optimizer、agent-api-designer 与 security。