Dê uma olhada nessa saída de ssh-agent novamente. Você está perdendo a terminação ; após cada comando.
Com isso, o script fará o que você quiser.
Sem os ponto-e-vírgulas, o shell executará os comandos na string (o here-document) como um comando com as novas linhas removidas.