PENDING TITLE

DRAFT

A few days ago, I saw a post on Hachyderm asking about the flags --yes, --confirm and --force in CLI application design. I answered that post with what my brain was able to think at the time, but I thought it was an interesting topic, so in this post I'm going to try and present my reasoning in a longer form.

The flags

On a surface-level analysis, the three of flags (--yes, --confirm and --force) seem to perform the same function: To instruct the command to continue when it would otherwise stop. OF course, we can't say anything definitive without talking about how they're actually used, but the name of the flags already gives some of the differences away.

In my answer to the original post I summarized what my gut tells me based on experience that these flags are intended to communicate, which is more or less the following:

The question, then, is more about command line design that just the name of the flag.

The interactive command