refactor and add methods
clay pidgeon agent