SuperAPI AI 工具集

solid-rust

编程与开发

查看项目

更新于 10-26 16:21

技能介绍

solid-rust 是 fusengine/claude-plugins 仓库中的一个技能,定位为在编写或重构 Rust 代码、搭建 src/modules/[feature] 分层结构或定义 traits.rs 接口时使用的辅助规范。其内容围绕 SOLID 原则与模块化架构展开。

用途:在开始任何实现之前,该技能要求先做 DRY 检查,检索代码库中已有的相似 trait、service 或逻辑,检查 src/core/services/ 与 src/core/traits/ 等共享位置;若已有相似代码应扩展复用而非重复,若代码会被两个以上功能使用则应放入 src/core/。

工作流:文档规定在实现前必须并行启动三个代理,每个以单独 Agent 调用并带名称:fuse-ai-pilot:explore-codebase 分析现有架构;fuse-ai-pilot:research-expert 通过 Context7 核验 Rust 文档;fuse-ai-pilot:sniper 做实现后验证。

主要能力与架构约定:模块必须分层,Handlers 位于 src/modules/[feature]/handlers.rs,Services 位于 services.rs,Repositories 位于 repository.rs,Traits 位于 traits.rs,Models 位于 models.rs,共享代码放 src/core/{services,traits,models}/;禁止使用扁平的 src/ 结构。强制规则包括:文件行数上限由 FUSE_SOLID_MAX_LINES 控制;Handlers 保持轻薄并委托给 Services;Traits 只能放在 traits.rs 或 src/core/traits/;每个公有项都要有 /// Rustdoc;自定义错误使用 thiserror;泛型使用 trait bounds 而非具体类型。

参考文档:solid-principles.md 提供 SOLID 总览;single-responsibility.md、open-closed.md、liskov-substitution.md、interface-segregation.md、dependency-inversion.md 分别对应 SRP、OCP、LSP、ISP、DIP 细节;architecture-patterns.md 涉及模块化 crate。模板包括 module.md(功能模块结构)、service.md(业务逻辑服务)、trait-def.md(trait 定义)、handler.md(Axum HTTP 处理器)、error.md(thiserror 自定义错误)、test.md(单元与集成测试)。

禁止的反模式及修正:文件超过 FUSE_SOLID_MAX_LINES 应按职责拆分;trait 写在 impl 文件中应移至 traits.rs;使用 Box<dyn Any> 应改用恰当的 trait bounds;扁平 src/ 结构应改为 src/modules/[feature]/;库代码中 unwrap 应改用 Result<T, E>。

适用场景:Rust 项目的模块化重构、新功能模块搭建、trait 接口设计与代码规范落地。限制:资料未提供 FUSE_SOLID_MAX_LINES 的具体数值、安装命令、收费与平台信息,暂未提供。