Lifecycle commands for the reader thread. Sent from the event loop
whenever an external process (OAuth browser flow, /shell, etc.)
needs stdin/stdout in cooked mode without our reader racing for bytes.
Spawn a blocking OS thread that reads crossterm events and forwards them
over tx. Returns a ReaderHandle for lifecycle control (Pause /
Resume / Shutdown). The thread exits when: