How cleaning works

What happens when you press Clean, what can't go to the Trash, and how to try a clean without removing anything.

Files go to the Trash

Almost everything DevSweep removes is moved to the Trash with the same system call Finder uses. Nothing is deleted outright, so you can put an item back until you empty the Trash.

That also means the space returns when you empty the Trash. After a clean, the status bar has an Open Trash button.

Some things run a command instead

A few kinds of data live where the Trash can’t reach. For those, DevSweep runs the tool’s own command, and the confirm sheet lists each command before anything happens:

Item Command
Simulator runtime xcrun simctl runtime delete <id>
Unavailable simulators xcrun simctl delete unavailable
A simulator’s apps and data xcrun simctl erase <id>
Unused Docker images docker image prune -a -f
Stopped containers docker container prune -f
Docker build cache docker builder prune -a -f
Unused Docker volumes docker volume prune -a -f

These remove data for good. Docker items only appear while Docker Desktop is running.

What DevSweep won’t touch

  • It never follows symbolic links.
  • It skips the cache folders of apps that are open.
  • It won’t remove an app that’s running; quit it first.
  • It stays in your home folder, except for project folders you add in Settings, /Applications (the uninstaller), the system temp folder (Metro caches) and the tool commands above.

Try it first: dry run

Turn on Dry run in Settings. Clean then lists what it would remove and changes nothing. Turn it off when you’re ready.

If something fails

Items that couldn’t be cleaned stay in the list, and the status bar shows how many. Click it to see why, for example an app that’s still open or a file owned by another user.