Maybe these two utilities should be in a Concern?  (I'm trying to figure out ways to make Agent shorter.)