export SSH_AUTH_SOCK=~/.ssh/ssh-agent.$USER.sock
function ssh-agent-start ()
{
    # if that socket does not exist, start the ssh-agent on it
    if [[ -z $SSH_AGENT_PID ]]
    then
        rm $SSH_AUTH_SOCK
        eval $(ssh-agent -a "$SSH_AUTH_SOCK") > /dev/null
        # using ssh-add might ask for a password, we don't want that here.
        # If only using ssh keys without passphrases, you can do this here
        # ssh-add
    fi
}
ssh-agent-start