I haven’t tested this out but you might have luck with FileHandle.standardInput.bytes.lines, which is an AsyncSequence.
I agree that Swift Concurrency as it stands today leaves a lot to be desired in the IO realm; for example, the above API solves reading asynchronously but there’s no FileHandle API for async backpressure-enabled writing, and if you’re dealing with non-POSIX (or Win32) IO APIs you’re still on your own. Also very relevant to this discussion is another concurrent thread (pun intended) here on the Swift Forums: