When I make a command-line utility I tend to leave the extension off of the filename:
copy_xattrs instead of
copy_xattrs.zsh, for example. That gives me the option later to swap a shell script for a Python script (or a Python script for an executable, or whatever) without renaming the file. Ideally, this also means that I wouldn’t need to change any of the programs that call the utility.