What can I do to see the logs from the ShellTask in the Prefect UI?

You can use a ShellTask’s keyword argument stream_output=True. This will pass any logs from the ShellTask to the prefect logger at the INFO level.

Additionally, you can instead set stream_output to any string or integer value interpretable by logging as a valid log level (e.g. 50 → CRITICAL, 40 → ERROR, etc).

If you need to do something else with the stdout then you can get all of that as a List[str] return from the ShellTask by setting return_all = True.

The API reference.