How can an agent improve security?
An agent is a background program that stores your private keys in memory, without password protection on them. If your memory is well-protected and swapping is not going to give problems, then your agent is a safe place to store the private keys. The long-term storage of the private keys can be in a password-protected file in the file system. When you create your keys with ssh-keygen or ssh-keygen2 you are prompted for a password. If you would type nothing, the file system version of the keys is not protected with a password, which makes their security quite fragile. An agent is a better idea.