A quick scan of the code shows that PHPSecLib doesn't come with it's own error handlers, to the user errors that are generated will be caught by the frameworks error handler, which will convert it to an Exception.
Just noticed that the Error class had a bug that made user-errors not catchable. I've fixed that in 1.6/develop, so if you're on 1.5.x, you might want to backport that class to make it work for you.
It allows you to do
try { user_error('this is a user notice', E_USER_NOTICE); } catch (\PhpErrorException) { echo 'got you!'; }
In your case, the SSH calls should be inside the try block...