Jeremy Kerley and the 49ers have agreed to a three-year contract, the team announced Saturday. Sources told ESPN the deal is worth $10.5 million.