Software Development/Command Line Help

Traditional command-line programs are run from the OS command line, and their help statement is called a usage message. On Unix-like OSes they may also have a man (manual) page. I'll talk about man pages in the "Project documentation" section.

Python has the  module for creating a command-line interpreter within your program, and each of your program's commands can also have a help message, contained in the command function's docstring.

My snippets for scripts and command functions will include outlines for usage and help messages.

Usage message

 * Usage message - Wikipedia
 * How to write usage statements - CS 11 - Caltech
 * Shell scripts: conventions to write usage text for parameters? - Stack Overflow
 * docopt (Python implementation) - A library that checks the user's command line arguments by parsing the script's usage message. Even if you're not using docopt, it gives you a convenient set of conventions for formatting usage messages.
 * argparse - Python.org - Moves in the opposite direction from docopt, generating a usage message from a specification.

Command help
I haven't found any conventions for  help text, and the examples I've seen have been free-form descriptions. Maybe it would make sense to treat each command as a separate program and use usage message conventions for its help.