The issue was that switchToTerminal() was not being awaited, so
launchCommand() was called while switchToTerminal() was still
executing. This caused a race condition where the WebSocket
closed before the command could be sent.
By awaiting switchToTerminal(), we ensure the terminal is fully
switched before attempting to send any commands.