用途:在编写或重构 C#/.NET 代码、组织 Modules/[Feature]/ 分层结构或定义 Contracts/ 接口时使用,帮助落地 SOLID 原则与模块化架构。
主要能力与规则:
- 强制 DRY:写任何新代码前先 grep 代码库,并检查 Core/Services/、Core/Contracts/ 等共享位置,存在相似逻辑则扩展复用;将被 2 个以上功能使用的代码放入 Core/。
- 目录结构:Controllers、Services、Repositories、Contracts、Models 均放在 Modules/[Feature]/ 下,共享内容放 Core/{Services,Contracts,Models}/,禁止扁平结构。
- 关键约束:文件行数上限由 FUSE_SOLID_MAX_LINES 控制;控制器保持精简并委托给服务;接口只放 Contracts/ 目录;每个公开成员写 XML 文档;使用 Microsoft.Extensions.DependencyInjection 做依赖注入;接口成员 1-3 个;DTO 与值对象优先用 record。
- 禁止项:超长文件按职责拆分;接口不得写在实现文件里;避免 4 个以上成员的胖接口;不用 new 获取依赖,改用构造函数注入;不用 Service Locator。
使用方式:资料提到在实现前需并行启动 3 个 agent(fuse-ai-pilot:explore-codebase 分析现有架构、fuse-ai-pilot:research-expert 通过 Context7 核对 .NET 文档、fuse-ai-pilot:sniper 做实现后校验),每个 Agent 调用带 name。SOLID 五原则见 principles.md,目录布局、测试与 record 用法见 patterns.md。
适用场景:C#/.NET 项目的模块化架构设计、代码重构、接口与分层规范落地。
限制:资料未提供安装命令、收费方式、支持平台及具体效果数据;FUSE_SOLID_MAX_LINES 的默认数值暂未提供。