added the Agent facade