Trying to adduid to an existing key fails:-
$ gpg2 --edit-key "Someone" Secret subkeys are available. pub rsa4096/0701B5FD88888888 created: 2013-02-20 expires: never usage: SC trust: unknown validity: unknown ssb rsa4096/48D4E49499999999 created: 2013-02-20 expires: never usage: E ssb rsa4096/4825BF8CCCCCCCC created: 2013-02-20 expires: never usage: S [ unknown] (1). SOmeone <none@spambucket> gpg> adduid Need the secret key to do this.
toggle gives the same error message.
Searching for similar problems, I see many such reports without any clear solution.
The old Privacy handbook seems to be too old to help and the man pages simply leave too many terms undefined, and do not address such problems.
I am unclear whether the difference between "Secret *subkeys* are available,
and "Secret *keys* are available" is significant.
gpg-connect-agent with keyinfo --list only displays the public keys.
gpg2 does decrypt properly, prompting for the passphrase and thus obviously accessing the
secret key (or is that gpg-agent?).
The only unusal thing might be that GNUPGHOME is pointing away from ~/.gnupg .
This is in a Debian testing environment.