I thought this discussion was settled. You need to expose functionality via:
1. A library 2. A CLI 3. A TUI 4. A GUI
NetworkManager is a good example: https://wiki.gnome.org/Projects/NetworkManager
Each of these have trade-offs. Any assertions like "you don't need X" might be good for website traffic, but does not help steer the discussion on how to best serve the user.
Taking disk usage as an example, sure a quick 'df' is nice. But I do enjoy the extra power and discoverability of graphical disk usage analyzer tools. Both the CLI and GUI tools require a library.