maintenance

Removes dead code, duplication, and needless indirection while preserving behavior.

4|Updated Jun 19, 2026
One-click install
npx skills add https://github.com/douglance/sdlc-plugin --skill maintenance-douglance
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: maintenance
Source: https://github.com/douglance/sdlc-plugin/tree/main/.rulesync/skills/maintenance
Command: npx skills add https://github.com/douglance/sdlc-plugin --skill maintenance-douglance

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Codebases accumulate dead code, duplicated logic, and unnecessary abstraction layers over time, making them harder to understand and change. This Skill guides behavior-preserving cleanup so the code gets smaller without breaking anything. ## Core Features & Use Cases - Dead Code Removal: Identifies and deletes unused functions, exports, branches, and variables. - Duplication and Indirection Cuts: Collapses repeated logic and removes abstraction layers that add coupling without improving cohesion. - Behavior-Preserving Verification: Requires running the verify command before and after changes, reporting net lines removed and one line per file changed. - Use Case: After a feature refactor, use this Skill to strip leftover unused exports and merge duplicated helper functions, then prove with tests that behavior is unchanged. ## Quick Start Ask the AI to clean up dead code and duplication in a target module while keeping behavior identical and verifying with the test suite before and after.

Frequently Asked Questions about maintenance

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I remove dead code without breaking behavior?▼

Delete unused functions, exports, branches, and variables in the smallest possible diff, then run the project's verify command before and after the change. If any cut alters behavior, revert it because it is out of scope.

What counts as needless indirection in code cleanup?▼

Needless indirection is any layer or abstraction that adds coupling without improving cohesion or hiding a decision. The Skill targets these layers for removal along with unused configuration options nobody relies on.

When should I run a deeper simplification instead of local cleanup?▼

When complexity comes from a cluster of rules, exceptions, adapters, or workarounds, run the find-simplifying-insight skill first. Accept a deeper model change only if it preserves behavior, makes a novel prediction, and survives a decisive test.

What evidence should a maintenance change produce?▼

Report net lines removed and one line per file changed, backed by the verify command passing before and after. Behavior must not change; proof comes from the unchanged verification results.

When is the maintenance skill not the right approach?▼

It is not suited for rewrites or behavior changes, since any cut that alters behavior is out of scope. For changes requiring durable artifacts or handoffs, pair it with the lifecycle-documentation skill.