SuperAPI AI 工具集

solid-csharp

编程与开发

查看项目

更新于 10-26 17:21

技能介绍

solid-csharp 是一个面向 C#/.NET 开发的 Claude 插件技能(来源 fusengine/claude-plugins),用途是在编写或重构 C#/.NET 代码、组织 Modules/[Feature]/ 目录层级以及定义 Contracts/ 接口时提供一套强制性规范。

主要能力与规则:

一、DRY 先行。在编写任何新代码前,必须先用 grep 在代码库中搜索相似的接口、服务或逻辑,并检查共享位置 Core/Services/ 与 Core/Contracts/;若已有相似代码,应扩展或复用而非重复实现;若某段代码会被两个以上功能使用,应放到 Core/ 下。

二、模块化架构。分层位置固定:Controllers 放 Modules/[Feature]/Controllers/,Services 放 Modules/[Feature]/Services/,Repositories、Contracts、Models 同理;共享代码放 Core/{Services,Contracts,Models}/。禁止扁平结构,始终使用 Modules/[Feature]/。

三、关键规则。单文件行数上限由 FUSE_SOLID_MAX_LINES 控制;控制器保持精简,把逻辑委托给服务;接口只能放在 Contracts/ 目录;每个公开成员都要有 XML 文档;依赖注入使用 Microsoft.Extensions.DependencyInjection;接口保持小而专注,成员数 1 到 3 个;DTO 和值对象优先使用 record。具体细节可参考 principles.md(五项 SOLID 原则速查)和 patterns.md(目录布局、测试与 record 用法)。

四、代理工作流(强制)。在任何实现开始前,需并行发起三个 Agent 调用:fuse-ai-pilot:explore-codebase 分析既有架构、fuse-ai-pilot:research-expert 通过 Context7 核验 .NET 文档、fuse-ai-pilot:sniper 在实现后做校验。

五、禁止的反模式。超过行数上限的文件应按职责拆分;实现文件中出现接口应移到 Contracts/;成员达到 4 个以上的胖接口应拆分为多个专注接口;扁平项目结构应改为 Modules/[Feature]/;用 new 创建依赖应改为构造注入加 DI;Service Locator 模式应改为构造注入。

适用场景:采用 .NET 的团队在新增功能、重构旧代码、统一项目分层与接口约定时使用,可作为 AI 编码助手的约束规范。限制方面:资料未说明具体安装命令、支持的 .NET 版本、运行环境要求、收费或价格信息,暂未提供;三个代理所属插件的可用性也需另行确认。