Thank you all for your detailed replies! I thought deeply on the issues that you presented, and I wonder whether modeling after git clean --dry-run accomplish the goal I aimed to solve. If we make "git stash clear" to by default not clear the stash and just present the stashes to be dropped (and require -f to force clearing the stash), wouldn't we essentially make a duplicate of "git stash list"? My goal is to not be afraid to have git stash clear in your terminal history, while indeed performing the clearing of the whole stack when fired. I thought presenting a confirmation dialog before clearing would suffice as a solution, but I like the idea of listing all of the stashes to be dropped and requesting confirmation (and in the future allow selection of specific stashes to be dropped as you suggested). Regarding making it opt out instead of opt in, I am afraid there are tools that use git stash clean automatically, and making the confirmation opt-out (by default confirm) we can potentially break them, don't you think it would be more gentle to the git community to make it opt in? Of course one major downside is that users need to "find" it so the adaptation will be much slower, but I feel it's for the best. What do you think? I do agree that --interactive is not a good name and a bit misleading, can you help me think of a better name that will be more of a suit? maybe -c|--confirm, and using stashClear.requireConfirm? Or -p|--prompt?