Lawrence Kesteloot has updated, or actually rewritten, his TRS-80 Cassette command line tool to support many new functions. Called “TRS80-TOOL” it is a command-line tool for manipulating TRS-80 files. Current version is v2.04
Although it doesn’t necessarily support ALL possible combinations, it supports the following file types of input and outout: BAS, ASC, WAV, CAS, CMD, 3BN (a machine language program as stored on cassette), JV1, JV3, DMK, and LST (an assembly language listing file).
What this means is that the tool can convert from CMD to SYSTEM format (CMD to 3BN), detokenize BAS to ASCII (BAS to ASC), multiple files into a single WAV (BAS, 3BN, and CMD to WAV), and a disk to a wav (DMK to WAV). Conversion of tape to disk will convert 3BN to CMD.
It can also extract files from WAV, CAS, and DMK to a directory.
The main page for TRS80-TOOL can be found at https://github.com/lkesteloot/trs80/tree/master/packages/trs80-tool along with instructions.