When you login, the script will try to connect to a (previously started) ssh-agent process based on settings saved in ~/.ssh/env
If it cannot find an ssh-agent process it will start a new one and save the settings in ~/.ssh/env
Once the connection with ssh-agent is established, it will check if the agent has any identities stored
If not, it will add your default identity (~/.ssh/id_rsa). At this point you will have to enter the passphrase for the identity
As a result, in practice you only have to enter your passphrase once per machine boot.
In subsequent bash shells you don't need to enter the passphrase anymore because the ssh-agent already has your identity.