/cleanup
January 18, 2026tldr: Copy this into Claude Code:
Create a /cleanup skill based on https://campedersen.com/cleanup
My Desktop had 47 screenshots on it.
I didn't notice until I accidentally hit "Show Desktop" and saw the carnage. Screenshots from December. Screenshots from last week. .DS_Store files lurking in the corners. It looked like a crime scene made entirely of screen grabs.
I've tried systems before. "I'll file things immediately." "I'll have an inbox folder." "I'll use Hazel." I even tried Sparkle for a while - it's a beautiful app that auto-organizes screenshots and screen recordings into a library. It worked! But I kept forgetting to check the library, and files piled up in both places.
The problem wasn't the tool. The problem was me. I needed something that would come to me.
I've been using Claude Code for everything lately, and it has this concept of skills - markdown files that teach it how to do specific tasks. Drop one in ~/.claude/skills/ and it becomes a slash command. The thing I love: I can just steer it. Write what I want in plain english, and it figures out the implementation.
So I made a roommate.
The skill is called /cleanup. When I run it, Claude scans for all the cruft I forget about:
- Screenshots piling up on Desktop
.DS_Storefiles in Desktop/Documents- Stale
.zcompdumpfiles (if you use zsh, you have dozens of these) - Downloads older than 30 days
- Giant files hiding outside Library
Then it shows me a report and asks what to fix.
It's like having a roommate who notices the dishes. Except this one is always right and never passive-aggressive about it.
The thing I like most: it asks. It doesn't just delete things. It shows me what it found, explains why it flagged each item, and waits for permission. The agency stays with me.
The actual skill
Skills are just markdown. Here's the whole thing - drop it in ~/.claude/skills/cleanup/SKILL.md:
---
name: cleanup
description: Personal system maintenance
allowed-tools: Bash, Read, Write, AskUserQuestion
---
# System Cleanup Skill
Run through all checks and present a summary report,
then offer to take action on any issues found.
## Checks to Perform
### 1. Desktop Screenshots
Desktop is for temporary work only.
Any screenshots should be moved to ~/Media/Screenshots/:
```bash
ls ~/Desktop/Screenshot*.png 2>/dev/null | wc -l
```
### 2. .DS_Store Files
Remove .DS_Store files from Desktop and Documents:
```bash
find ~/Desktop ~/Documents -name ".DS_Store" 2>/dev/null | wc -l
```
### 3. Stale Zsh Completion Files
Find .zcompdump* files that aren't the current active ones:
```bash
find ~ -maxdepth 1 -name ".zcompdump*" -type f 2>/dev/null | wc -l
```
### 4. Old Downloads (>30 days)
```bash
find ~/Downloads -maxdepth 1 -type f -mtime +30 2>/dev/null | head -20
```
### 5. Large Files (>500MB)
```bash
find ~ -type f -size +500M -not -path "*/Library/*" 2>/dev/null | head -20
```
## Actions
After presenting the report, ask which actions to take:
1. Move Desktop screenshots to ~/Media/Screenshots/
2. Delete .DS_Store files
3. Delete stale zcompdump files
4. Move old downloads to ~/Archives/
## Safety
- Never delete without confirmation
- Move files rather than deleting when possible
That's it. Claude reads this, understands what I want, and figures out the rest. The bash snippets are suggestions, not scripts. It adapts them if my system is different.
(Tip: You can change where macOS saves screenshots with defaults write com.apple.screencapture location ~/Screenshots && killall SystemUIServer. I still save to Desktop because it forces me to deal with them.)
The point
Now I just run /cleanup when things feel cluttered. My Desktop stays empty. Downloads don't pile up. The .zcompdump files that were slowly colonizing my home directory are gone.
But more than that: I built a habit by delegating the noticing. I don't have to remember to check. I just ask Claude to be the one who cares about it.
We talk a lot about AI doing work for us. But sometimes the best use is AI doing work with us - handling the parts we're bad at (noticing, remembering, nagging) while leaving the decisions to us.
My Desktop is clean. My roommate is happy.
