Eu estava procurando basicamente a mesma solução e encontrei dois que parecem úteis sob duas suposições diferentes:
-
Michael J. Schultz resolveu seu problema com isso escrevendo um alias de shell para ssh . Usa
ssh-add -l > /dev/null || ssh-add
para verificar se o ssh-agent tem alguma chave carregada e, se não houver nenhuma, execute ssh-add. Ele observa que a maneira como ele escreveu sua solução se encaixa em seu caso de uso, mas não se ajusta a todos.
-
Raúl Benencia escreveu um script em Python chamado
odsa
para automaticamente descobrir quais de suas chaves são necessárias para um determinado host e carregá-las no ssh-agent.