Agent with fields