Do código em link
path = getenv("SSH_AUTH_SOCK");
if (!path)
return _libssh2_error(agent->session, LIBSSH2_ERROR_BAD_USE,
"no auth sock variable");
Então, obviamente, esse erro está acontecendo porque você não tem a variável de ambiente apontando para o soquete do agente configurado corretamente. Peça para o seu código imprimir o valor de getenv("SSH_AUTH_SOCK")
em caso de erro para confirmar isso.