Often you do not want each command in a shell script to be echoed to the console log. There may be a lot of commands, including ones which just set an environment variable; expansions and loops can be confusing; or some commands may include private information such as passwords which should not be displayed.
You can already prefix your script text with
which does the job, but this command is echoed which is annoying, and unless you are experienced with shell scripting you may never have heard of this builtin (or may need to refer to sh.1 to remember the syntax).
Would be nicer to just have a checkbox available for the shell script builder which would control whether to echo commands or not. Default on (-x) as now. If off, simply do not pass -x to sh.