Problem rozwiązany (Nie wiem czy dobrym sposobem)
Całość połączenia odbywa się przez "ShellStream" który pozwala na pozostanie w aktualnej sesji oraz konsoli aktywnego programu (Wcześniej sshClient.CreateCommand).
Jedynym problemem było wyświetlanie informacji z konsoli w aplikacji ale również poradziłem sobie z tym oto takim rozwiązaniem:
conn();
Thread thread = new Thread(new ThreadStart(msgRes));
thread.IsBackground = true;
thread.Start();
if (sshClient.IsConnected)
{
labka.Content = "Connect";
}
oraz
private void msgRes()
{
while (true)
{
if (shellStreamSSH != null && shellStreamSSH.DataAvailable)
{
string msgRes = shellStreamSSH.Read();
box1.Dispatcher.Invoke(() => { box1.Text += msgRes; });
Thread.Sleep(200);
}
}
}
Gdyby okazało się że istnieje lepsze rozwiązanie problemu lub metoda działania to chętnie o tym poczytam.
Przy rozwiązywaniu tego problemu posiłkowałem się również postem z forum >> LINK