name: detect-over-engineering description: 检测代码中的不必要复杂性、推测性通用性和过度工程解决方案 allowed-tools: 读取, 全局, 搜索, 任务 argument-hint: “[路径或模式]”
检测过度工程命令
分析代码以识别不必要复杂性、推测性通用性和过度工程解决方案。
使用
/enterprise-architecture:detect-over-engineering [路径或模式]
参数
path-or-pattern(可选): 要分析的路径- 如果提供:分析指定的路径或模式
- 如果省略:分析整个代码库
示例
/enterprise-architecture:detect-over-engineering
/enterprise-architecture:detect-over-engineering src/services/
/enterprise-architecture:detect-over-engineering **/*.cs
工作流程
-
扫描复杂性指标
- 搜索指示过度工程的模式
- 识别抽象层
- 查找未使用的灵活性点
-
生成过度工程检测代理 使用
over-engineering-detector代理进行分析。该代理检测:- 推测性通用性 - 没有多个实现的抽象
- 过早抽象 - 在证明需求之前的复杂性
- 镀金 - 超出需求的功能
- 宇航员架构 - 过多的层和间接性
-
展示发现 按以下方式组织发现:
- 关键 - 无益的显著复杂性
- 警告 - 潜在的过度工程
- 信息 - 简化的次要机会
检测类别
推测性通用性
- 单实现抽象类
- 单实现接口
- 从未变化泛型类型参数
- 未使用配置选项
- 无插件插件架构
过早抽象
- 单对象创建的工厂模式
- 单策略的策略模式
- 过度依赖注入
- 过度规范化数据结构
镀金
- 超出文档化需求的功能
- 从未配置的可配置性
- 从未扩展的可扩展点
输出格式
## 过度工程检测报告
### 摘要
- 分析文件: [N]
- 发现问题: [N] (关键: X, 警告: Y, 信息: Z)
### 关键问题
#### [问题类型]: [位置]
**模式:** [发现的内容]
**问题:** [为何是过度工程]
**简化:** [如何简化]
**努力:** [低/中/高]
### 警告
[相同结构]
### 信息
[相同结构]
### 简化路线图
1. [快速胜利] - [影响]
2. [中等努力] - [影响]
3. [较大重构] - [影响]
### 指标
- 估计可移除行: [N]
- 可减少抽象层: [N]
- 复杂度分数改进: [X]%