I do something very similar. With some hacky string matching you can detect wether a window is available for reception and get past that.
I desire a more robust system which injects the events into the harness directly, but haven't found a way that works across systems.
https://github.com/tcdent/dotfiles/blob/main/bin/agent-messa...
I hooked up Claude Code's "stop" hook to a frog croak, so I know when it's done.
I'm guessing the same hooks could be used to ... Okay I guess there isn't a User Typed But Didn't Send Yet hook... Hmm...
I heard earlier there's a T3 harness which somehow wrangles other harnesses as one big meta harness, but I haven't checked it out yet.