This repository contains the source code for ROS 2 command line interface tools included with a standard install of any ROS 2 distro.
ros2 --help to see all available commands.
ros2 <command> --help for more information on individual command usage.
ros2 <command> <verb> --help for even more usage information on a specific command's verbs.
Read Introspection with command line tools on ROS Index for more information and an example.
You can use Python entry points to create new commands and verbs for the CLI.
And here's an example for how to add a command.
You can find a historical discussion on this subject on Discourse.