Empty litter
Cleaning session for the repository. Scans for bad practices and architectural friction — dead code, duplication, shallow modules, inconsistent patterns, config drift, untested seams — then fixes what the user picks. Use when the user says empty-litter, wants to clean the repo, remove tech debt, or improve the architecture.From its SKILL.md
npx -y skills add ai-meow/felix-skills --skill empty-litterAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.0 KB, 419 tokens by cl100k_base, as published. Nobody here has run it
empty-litter 🧹
Clean the litter box. Find what stinks, remove it. Read ../no-slop.md first.
Scan
Explore the repo (structure, hot files via git log --format= --name-only | sort | uniq -c | sort -rg | head -20, tests, configs). Look for, in priority order:
- Dead weight — unused exports, unreferenced files, commented-out code, stale deps (
knip/depcheck/ts-pruneif available). - Duplication — copy-pasted logic across modules (use
jscpdif available). - Shallow modules — files that only forward calls; interfaces wider than their implementation.
- Pattern drift — three ways of doing the same thing (fetching, error handling, validation).
- Untested seams — core logic only reachable through UI or IO.
- Config rot — unused env vars, dead feature flags, CI steps that do nothing.
Report
Output a ranked list, max 7 items, one line each:
1. [DELETE] src/legacy/sync.ts — unreferenced since a1b2c3 (−400 loc)
2. [DEDUP] price formatting ×4 (cart, invoice, email, admin)
3. [SEAM] discount logic only testable through checkout route
No HTML report. No essay. Effort estimate only if asked.
Act
The user picks items by number. For each:
- Work on the current branch unless the user asks for a worktree.
- Deleting beats refactoring. Refactoring beats rewriting.
- Behavior must not change: run the test suite before and after. If a seam has no tests, add the minimal test that locks current behavior first.
- One commit per item, message prefix
litter:.
Stop after the picked items. Do not "keep going while you're at it".
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.