Success messaging

Whenever a CLI command is taking an action on something that can be completed and it finishes successfully provide a message to confirm what just happened in stderr (for example: The beta/test channel is now closed.). All structured output goes to stdout, as always.

Grammar and punctuation

If providing a message to stderr, it should be as short and succinct as possible, while providing all the necessary information - the object that was acted upon as well as the exact action that was completed.


Do not rely on colour to convey to the user that the action was successful - the message should be enough on its own. If you’d like to provide a coloured option (if the user has specified the --colour flag), use #0E8420 for the first, positive word of the message, which is most likely to read Success!.

What not to do

Don’t output a vague, general word such as “Done.”. It does not help the user understand what exactly is “done”.

Providing context

If stderr or stdout is tty, and it makes sense for the command do provide the new context that exists after the command has successfully completed. For example, if you create a container, show that it is running in a table alongside any other existing containers. A couple more examples:

I’m getting an error trying to load the images for this page, specifically:

Your client does not have permission to get URL /G8h8DxdefsxF_-EOeLagzdu0iJ9Hptn9MMK7dn39AiCHG_vH1rC74elsUazmYpYgP2s7CW7DFNJFbeDjHTZukm5q-KuZ_6ggfWxWTY_7XZKT-3Q6v9wtJ0XFTCxGGC9eehuDv9Rw from this ser