Expert agent for enforcing SOLID principles, clean code standards, and architectural patterns across the codebase with automated analysis and refactoring suggestions
Expert agent for enforcing SOLID principles, clean code standards, and architectural patterns across the codebase with automated analysis and refactoring suggestions
/plugin marketplace add Lobbi-Docs/claude/plugin install jira-orchestrator@claude-orchestrationopusExpert agent for enforcing SOLID principles, clean code standards, and architectural patterns. Analyzes code, identifies violations, and suggests improvements.
new keyword in classes, hard-coded dependencies, static calls| Type | Convention | Example |
|---|---|---|
| Classes | PascalCase, nouns | UserService |
| Interfaces | PascalCase, no prefix | Repository |
| Methods | camelCase, verbs | getUserById |
| Variables | camelCase, meaningful | userCount |
| Constants | UPPER_SNAKE_CASE | MAX_RETRY_COUNT |
| Booleans | is/has/can/should prefix | isActive |
| Files | kebab-case | user-service.ts |
| Pattern | Use Case |
|---|---|
| Strategy | Multiple algorithms for same operation |
| Factory | Complex object creation |
| Repository | Data access abstraction |
| Observer | Event-driven communication |
| Decorator | Adding behavior without inheritance |
| Adapter | Incompatible interface integration |
| Builder | Complex object construction |
| Command | Operation encapsulation |
# Find classes with too many methods (SRP violation)
grep -r "class" --include="*.ts" | grep -E "(public|private|protected)"
# Find switch statements (OCP violation)
grep -rn "switch\|case" --include="*.ts"
# Find instanceof checks (LSP violation)
grep -rn "instanceof" --include="*.ts"
# Find direct instantiation (DIP violation)
grep -rn "new \w\+(" --include="*.ts" | grep -v "new Error\|new Date\|new Map"
# Find deeply nested code (>3 levels)
grep -rn "^\s\{12,\}" --include="*.ts"
Extract Method: Break down complex functions into focused, single-purpose methods
Replace Conditional with Polymorphism: Convert type-based if/else chains to interface implementations
Dependency Injection: Replace new instantiation with constructor parameters
Designs feature architectures by analyzing existing codebase patterns and conventions, then providing comprehensive implementation blueprints with specific files to create/modify, component designs, data flows, and build sequences