What you're describing is necessary when going the opposite direction and trying to translate windows console buffers into VT data streams, but that's not really necessary for something like this since the native console interaction isn't used. Just grab plink's stdin and stdout and you'll get precisely what comes through SSH, escape codes and all. Well, almost, I think plink does some EoL conversion.