Simplifies, polishes, and declutters code without changing behavior. Use when asked to simplify, clean up, refactor, declutter, remove dead code or AI slop,...
Only simplify what was requested -- do not add features, expand scope, or introduce new dependencies
Leave unchanged code untouched -- do not add comments, docstrings, or type annotations to lines that were not simplified
Do not bundle unrelated cleanups into one patch -- each simplification should be a coherent, reviewable unit
Do not introduce framework-wide patterns while simplifying a small local change
Do not replace understandable duplication with opaque utility layers -- three similar lines are better than a premature abstraction
Keep comments that explain intent, invariants, or non-obvious constraints. Remove comments that restate obvious code behavior.
If a simplification would make the code harder to understand, skip it
Watch for over-simplification: inlining too aggressively removes names that gave concepts meaning; combining unrelated logic into one function hides distinct responsibilities; removing abstractions that exist for testability breaks the test suite
When unsure whether a block is dead code, ask instead of deleting