Eu tive o mesmo problema e foi assim que resolvi:
gpg-agent copia as chaves que você adiciona com ssh-add para um diretório especial em ~/.gnupg
(especificamente ~/.gnupg/private-keys-v1.d
com gpg2).
Parece, e eu realmente acho que isso deve ser reportado como um bug, que se a chave que você está tentando adicionar com o ssh-add já existir nesse diretório, ele não adicionará a chave em ~/.gnupg/sshcontrol
, que por sua vez, significa que não será apresentado pelo gpg-agent. Executar grep -aoe "comment.*$" ~/.gnupg/private-keys-v1.d/*
deve imprimir um comentário que (pelo menos para mim) correspondia a qual chave era qual.
Depois de remover a chave específica e tentar adicionar novamente, ela deve funcionar. Eu aconselharia a limpeza de todo o diretório, pois é também onde ele armazena as chaves gpg.