Claude
Skills
Sign in
Back

detect-over-engineering

Included with Lifetime
$97 forever

Detect unnecessary complexity, speculative generality, and over-engineered solutions in code

General

What this skill does


# Detect Over-Engineering Command

Analyze code to identify unnecessary complexity, speculative generality, and over-engineered solutions.

## Usage

```text
/enterprise-architecture:detect-over-engineering [path-or-pattern]
```

## Arguments

- `path-or-pattern` (optional): Path to analyze
  - If provided: Analyze the specified path or pattern
  - If omitted: Analyze the entire codebase

## Examples

```text
/enterprise-architecture:detect-over-engineering
/enterprise-architecture:detect-over-engineering src/services/
/enterprise-architecture:detect-over-engineering **/*.cs
```

## Workflow

1. **Scan for Complexity Indicators**
   - Search for patterns indicating over-engineering
   - Identify abstraction layers
   - Find unused flexibility points

2. **Spawn Over-Engineering Detector Agent**
   Use the `over-engineering-detector` agent to analyze. The agent detects:
   - **Speculative Generality** - Abstractions without multiple implementations
   - **Premature Abstraction** - Complexity before demonstrated need
   - **Gold Plating** - Features beyond requirements
   - **Astronaut Architecture** - Excessive layers and indirection

3. **Present Findings**
   Display findings organized by:
   - **Critical** - Significant complexity with no benefit
   - **Warning** - Potential over-engineering
   - **Info** - Minor simplification opportunities

## Detection Categories

### Speculative Generality

- Abstract classes with single implementation
- Interfaces with only one implementer
- Generic type parameters never varied
- Configuration options never used
- Plugin architectures with no plugins

### Premature Abstraction

- Factory patterns for single object creation
- Strategy patterns with one strategy
- Excessive dependency injection
- Over-normalized data structures

### Gold Plating

- Features beyond documented requirements
- Configurability that's never configured
- Extensibility points never extended

## Output Format

```text
## Over-Engineering Detection Report

### Summary
- Files analyzed: [N]
- Issues found: [N] (Critical: X, Warning: Y, Info: Z)

### Critical Issues

#### [Issue Type]: [Location]
**Pattern:** [What was found]
**Problem:** [Why it's over-engineered]
**Simplification:** [How to simplify]
**Effort:** [Low/Medium/High]

### Warnings

[Same structure]

### Info

[Same structure]

### Simplification Roadmap
1. [Quick win] - [Impact]
2. [Medium effort] - [Impact]
3. [Larger refactor] - [Impact]

### Metrics
- Estimated lines removable: [N]
- Abstraction layers reducible: [N]
- Complexity score improvement: [X]%
```

Related in General