What does an agent do?