One of the areas where I disembark from the traditional Unix way is to replace "--dry-run" like flags with "--enable-destruction". That way I have to intentionally do the bad thing.
$ git clean
fatal: clean.requireForce defaults to true and neither -n nor -f given; refusing to clean maid clean
# Give error message
maid clean --noop
# Show what would happen
maid clean --force # or maybe --execute
# Do actions
I'll be making an issue for this if no one has already.