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.