| name | refactor |
| description | Refactor code to improve structure and maintainability |
| tags | ["code-quality","refactoring"] |
| version | 1.0.0 |
Refactor
Improve code structure without changing external behavior.
Process
- Understand — Read all related code, run existing tests
- Plan — Identify what to change and why
- Execute — Make changes incrementally
- Verify — Run tests after each change
Common Refactoring Patterns
Extract
- Long function → smaller focused functions
- Repeated code → shared helper
- Magic numbers → named constants
Simplify
- Deep nesting → early returns / guard clauses
- Complex conditionals → descriptive functions
- Large classes → smaller focused classes
Rename
- Unclear names → descriptive names
- Inconsistent naming → consistent conventions
Reorganize
- Related functions scattered → grouped in modules
- Circular dependencies → dependency inversion
Rules
- Never change behavior — tests must pass before and after
- One refactoring type per commit
- If tests don't exist, write them first
- Don't refactor and add features in the same change