mcpField
R
rust

rust

github.com/oakoss开发21120 次安装12 周前更新
代码仓库

关于 rust

Rust 是一种注重内存安全、并发和性能的系统编程语言。此技能为开发者构建服务、CLI 工具、终端界面、WebAssembly 和其他性能敏感软件提供实用指南。

主要功能

  1. 01所有权与借用指导
  2. 02错误处理模式
  3. 03使用 Tokio 进行异步编程
  4. 04使用 axum 构建 Web 服务
  5. 05使用 clap 开发 CLI
  6. 06测试与基准测试

适用场景

  1. 01构建内存安全的系统软件
  2. 02开发异步 Web 服务
  3. 03创建命令行工具和终端界面
  4. 04为性能敏感应用进行基准测试

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/oakoss/agent-skills --skill rust

安装后在 Claude Code 中输入/rust确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
async-tokio.md
axum-web.md
cli-applications.md
error-handling.md
ownership-and-types.md
ratatui-tui.md
release-pipeline.md
testing-and-benchmarks.md

详细介绍

Rust

概述

Rust 是一种系统编程语言,专注于安全性、并发性和性能。所有权系统无需垃圾回收即可保证内存安全,而类型系统会在编译时确保线程安全。

适用场景: 系统编程、Web 服务(axum)、CLI 工具(clap)、终端 UI(ratatui)、WebAssembly、性能关键型应用,以及任何需要内存安全且无需运行时开销的场景。

不适用场景: 更看重编译速度而非安全性的快速原型开发、简单的脚本任务,以及团队缺乏 Rust 经验且工期紧张的项目。

快速参考

模式API / 工具要点
所有权转移let b = a;a 会被移动,之后不可再用
借用&T / &mut T一个可变引用或多个不可变引用
生命周期标注fn f<'a>(x: &'a str) -> &'a str将输出生命周期与输入绑定
错误传播? 运算符转换并传播错误
自定义错误thiserror::Error derive具有 Display 的结构化错误类型
临时错误anyhow::Result<T>为应用程序提供上下文链
异步运行时#[tokio::main]异步程序的入口点
启动任务tokio::spawn(async { })并发执行异步任务
HTTP 路由器axum::Router::new().route(...)使用提取器组合路由
提取器Json<T>, Path<T>, State<T>类型安全的请求解析
序列化#[derive(Serialize, Deserialize)]使用 serde 派生与格式无关的实现
CLI 解析#[derive(Parser)]用于解析参数的 clap derive API
TUI 渲染terminal.draw(|f| { })ratatui 即时模式渲染
基准测试criterion::Criterion统计基准测试框架
依赖项审计cargo deny check审计许可证、漏洞和来源
二进制发布cargo dist init跨平台二进制分发
更新日志release-plz update自动更新 semver 版本和更新日志

常见错误

错误正确做法
返回局部变量的引用返回拥有所有权的类型,或使用生命周期参数
在库代码中使用 unwrap()返回 Result,由调用方决定
为满足借用检查器而调用 clone()重构代码以避免借用冲突
在异步上下文中阻塞使用 tokio::task::spawn_blocking
未使用同步机制的共享可变状态使用 Arc<Mutex<T>> 或通道
可用 &str 时使用 String在函数参数中接受 &str
忽略 must_use 警告处理警告,或使用 let _ = 显式丢弃
枚举变体过大将较大的变体装箱以减小整体体积
特征中的 async fn 未指定约束添加 Send 约束,或使用 async-trait crate
异步测试缺少 #[tokio::test]使用 #[tokio::test],而不是 #[test]

任务委派

  • 代码探索:使用 Explore Agent
  • 架构审查:使用 Task Agent
  • 代码审查:委派给 code-reviewer Agent

如果有 docker 技能,请将多阶段容器构建模式委派给它。 如果有 github-actions 技能,请将 CI 流水线配置委派给它。 如果有 openapi 技能,请将 API 规范和代码生成委派给它。

参考资料

评论

支持 Markdown