unsmell
Installation
SKILL.md
Unsmell
Improve maintainability without changing intended behavior. Work across the full repository unless the user names a target; when a target is given, modify only that scope and the minimum dependency edges required to keep it working.
Core Rules
- Read repository guidance and infer conventions before judging the code.
- Preserve public behavior, APIs, data formats, and compatibility unless the user authorizes a change.
- Prefer clear, cohesive code over mechanically smaller code.
- Do not treat every repeated line, long name, large file, or abstraction gap as a defect. Require a concrete maintenance cost.
- Reuse an existing local pattern when it is sound. Do not introduce a competing architecture.
- Make cohesive refactors in reviewable passes. Avoid unrelated formatting churn and speculative rewrites.
- Preserve unrelated user changes. Never remove code merely because its purpose is not immediately obvious.
- Add dependencies only when their value clearly exceeds their maintenance cost and the user permits installation.
- In TypeScript, improve the model or narrow the value instead of silencing the compiler. Do not trade a visible type error for hidden unsoundness.
Establish Scope
Classify the request before editing: