← ClaudeAtlas

architecture-simplificationlisted

Use when a codebase carries over-engineered abstractions, unnecessary layers, or redundant logic that should be collapsed without changing behavior.
yeaight7/agent-powerups · ★ 7 · AI & Automation · score 75
Install: claude install-skill yeaight7/agent-powerups
## Purpose Over time, codebases accumulate "just in case" abstractions. This skill guides the safe removal of unnecessary complexity: remove the noise around the core logic without changing the core logic itself. ## When to Use - An interface has only one implementation and no second one is planned - A wrapper, factory, or layer only passes arguments straight through - Two code paths do the same thing and should be consolidated ## Inputs - The suspect abstraction(s) and their call sites - A green test suite covering the affected area ## Workflow 1. **Identify the abstraction cost.** Does this interface have only one implementation? Does this wrapper class just pass arguments straight through? Measure before cutting: ```bash grep -rn "implements IUserRepository" src/ # count implementations grep -rn "IUserRepository" src/ | wc -l # count references ``` 2. **Run the tests first.** The affected area must be green before any removal — this is the behavioral baseline. 3. **Inline the logic.** Move the logic from the unnecessary abstraction directly into the caller. 4. **Delete the dead code.** Remove the interface, wrapper, or factory that is no longer needed. 5. **Test verification.** Re-run the same tests; the observable behavior of the system must not have changed. **Example:** if a `UserRepository` implements `IUserRepository` but there is only ever one database, inline `UserRepository` and delete `IUserRepository`. ## Output - The simplifie