I will start with saying that documentation for subprocess.Popen is not clear. I was using subprocess.run(..., input=..., ...) and needed to monitor other things ...
Since the transforms and backends are included in the Seal5 Python codebase anyways, it might be reasonable to call them directly from python instead of opening up a subprocess running python -m seal5 ...